diff options
author | Michael Gran <spk121@yahoo.com> | 2021-03-05 22:24:40 -0800 |
---|---|---|
committer | Michael Gran <spk121@yahoo.com> | 2021-03-05 22:24:40 -0800 |
commit | 1ae9a8df3a5893118715c4100548e9e55d2a4d90 (patch) | |
tree | 1859e3bc8240cb0392f975fdddccce33167635d4 | |
parent | 9fb550b945f6cc9d109d83f6621ceac69896d763 (diff) | |
download | guile-1ae9a8df3a5893118715c4100548e9e55d2a4d90.tar.gz |
Handle <eof> in reader's character escape sequences
* module/ice-9/read.scm (read-r6rs-hex-escape, read-fixed-hex-escape):
modified
-rw-r--r-- | module/ice-9/read.scm | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/module/ice-9/read.scm b/module/ice-9/read.scm index bc9e15288..3b8fd3537 100644 --- a/module/ice-9/read.scm +++ b/module/ice-9/read.scm @@ -249,8 +249,12 @@ (cond ((hex-digit ch) => (lambda (digit) (lp (+ (* 16 res) digit)))) ((eqv? ch #\;) (integer->char res)) + ((eof-object? ch) + (error "unexpected end of input in character escape sequence")) (else (error "invalid character in escape sequence: ~S" ch))))))) + ((eof-object? ch) + (error "unexpected end of input in character escape sequence")) (else (error "invalid character in escape sequence: ~S" ch))))) @@ -263,6 +267,8 @@ ((hex-digit ch) => (lambda (digit) (lp (1- len) (+ (* res 16) digit)))) + ((eof-object? ch) + (error "unexpected end of input in character escape sequence")) (else (error "invalid character in escape sequence: ~S" ch))))))) |