* module/system/repl/repl.scm (next-char): Don't throw if we get an EOF,
just return the EOF object. Fixes a case in which we fail to exit
cleanly.
(define (next-char wait)
(if (or wait (char-ready?))
(let ((ch (peek-char)))
(define (next-char wait)
(if (or wait (char-ready?))
(let ((ch (peek-char)))
- (cond ((eof-object? ch) (newline) (throw 'quit))
+ (cond ((eof-object? ch) ch)
((char-whitespace? ch) (read-char) (next-char wait))
(else ch)))
#f))
((char-whitespace? ch) (read-char) (next-char wait))
(else ch)))
#f))