summaryrefslogtreecommitdiff
path: root/module/srfi/srfi-19.scm
diff options
context:
space:
mode:
Diffstat (limited to 'module/srfi/srfi-19.scm')
-rw-r--r--module/srfi/srfi-19.scm33
1 files changed, 21 insertions, 12 deletions
diff --git a/module/srfi/srfi-19.scm b/module/srfi/srfi-19.scm
index ba13c03a0..282061584 100644
--- a/module/srfi/srfi-19.scm
+++ b/module/srfi/srfi-19.scm
@@ -42,6 +42,7 @@
:use-module (srfi srfi-6)
:use-module (srfi srfi-8)
:use-module (srfi srfi-9)
+ :autoload (ice-9 rdelim) (read-line)
:use-module (ice-9 i18n))
(begin-deprecated
@@ -300,7 +301,7 @@
(set-tm:hour result (date-hour date))
;; FIXME: SRFI day ranges from 0-31. (not compatible with set-tm:mday).
(set-tm:mday result (date-day date))
- (set-tm:month result (- (date-month date) 1))
+ (set-tm:mon result (- (date-month date) 1))
;; FIXME: need to signal error on range violation.
(set-tm:year result (+ 1900 (date-year date)))
(set-tm:isdst result -1)
@@ -489,33 +490,38 @@
;; -- these depend on time-monotonic having the same definition as time-tai!
(define (time-monotonic->time-utc time-in)
(if (not (eq? (time-type time-in) time-monotonic))
- (priv:time-error caller 'incompatible-time-types time-in))
+ (priv:time-error 'time-monotonic->time-utc
+ 'incompatible-time-types time-in))
(let ((ntime (copy-time time-in)))
(set-time-type! ntime time-tai)
(priv:time-tai->time-utc! ntime ntime 'time-monotonic->time-utc)))
(define (time-monotonic->time-utc! time-in)
(if (not (eq? (time-type time-in) time-monotonic))
- (priv:time-error caller 'incompatible-time-types time-in))
+ (priv:time-error 'time-monotonic->time-utc!
+ 'incompatible-time-types time-in))
(set-time-type! time-in time-tai)
- (priv:time-tai->time-utc! ntime ntime 'time-monotonic->time-utc))
+ (priv:time-tai->time-utc! time-in time-in 'time-monotonic->time-utc))
(define (time-monotonic->time-tai time-in)
(if (not (eq? (time-type time-in) time-monotonic))
- (priv:time-error caller 'incompatible-time-types time-in))
+ (priv:time-error 'time-monotonic->time-tai
+ 'incompatible-time-types time-in))
(let ((ntime (copy-time time-in)))
(set-time-type! ntime time-tai)
ntime))
(define (time-monotonic->time-tai! time-in)
(if (not (eq? (time-type time-in) time-monotonic))
- (priv:time-error caller 'incompatible-time-types time-in))
+ (priv:time-error 'time-monotonic->time-tai!
+ 'incompatible-time-types time-in))
(set-time-type! time-in time-tai)
time-in)
(define (time-utc->time-monotonic time-in)
(if (not (eq? (time-type time-in) time-utc))
- (priv:time-error caller 'incompatible-time-types time-in))
+ (priv:time-error 'time-utc->time-monotonic
+ 'incompatible-time-types time-in))
(let ((ntime (priv:time-utc->time-tai! time-in (make-time-unnormalized #f #f #f)
'time-utc->time-monotonic)))
(set-time-type! ntime time-monotonic)
@@ -523,7 +529,8 @@
(define (time-utc->time-monotonic! time-in)
(if (not (eq? (time-type time-in) time-utc))
- (priv:time-error caller 'incompatible-time-types time-in))
+ (priv:time-error 'time-utc->time-monotonic!
+ 'incompatible-time-types time-in))
(let ((ntime (priv:time-utc->time-tai! time-in time-in
'time-utc->time-monotonic!)))
(set-time-type! ntime time-monotonic)
@@ -531,14 +538,16 @@
(define (time-tai->time-monotonic time-in)
(if (not (eq? (time-type time-in) time-tai))
- (priv:time-error caller 'incompatible-time-types time-in))
+ (priv:time-error 'time-tai->time-monotonic
+ 'incompatible-time-types time-in))
(let ((ntime (copy-time time-in)))
(set-time-type! ntime time-monotonic)
ntime))
(define (time-tai->time-monotonic! time-in)
(if (not (eq? (time-type time-in) time-tai))
- (priv:time-error caller 'incompatible-time-types time-in))
+ (priv:time-error 'time-tai->time-monotonic!
+ 'incompatible-time-types time-in))
(set-time-type! time-in time-monotonic)
time-in)
@@ -741,7 +750,7 @@
(define (priv:year-day day month year)
(let ((days-pr (assoc month priv:month-assoc)))
(if (not days-pr)
- (priv:error 'date-year-day 'invalid-month-specification month))
+ (priv:time-error 'date-year-day 'invalid-month-specification month))
(if (and (priv:leap-year? year) (> month 2))
(+ day (cdr days-pr) 1)
(+ day (cdr days-pr)))))
@@ -1216,7 +1225,7 @@
((#\8) 8)
((#\9) 9)
(else (priv:time-error 'bad-date-template-string
- (list "Non-integer character" ch i)))))
+ (list "Non-integer character" ch)))))
;; read an integer upto n characters long on port; upto -> #f is any length
(define (priv:integer-reader upto port)