diff --git a/icyc.scm b/icyc.scm index 95ebb939..d5d0ae8a 100644 --- a/icyc.scm +++ b/icyc.scm @@ -36,7 +36,8 @@ ((pair? obj) (when (string? (car obj)) (display (car obj)) - (display ": ") + (if (not (null? (cdr obj))) + (display ": ")) (set! obj (cdr obj))) (for-each (lambda (o) diff --git a/runtime.c b/runtime.c index b74b2124..f3a81dda 100644 --- a/runtime.c +++ b/runtime.c @@ -516,7 +516,9 @@ object Cyc_default_exception_handler(void *data, int argc, closure _, type_of(car(err)) == string_tag) { is_msg = 0; Cyc_display(data, car(err), stderr); - fprintf(stderr, ": "); + if (cdr(err)) { + fprintf(stderr, ": "); + } } else { Cyc_write(data, car(err), stderr); fprintf(stderr, " ");