From 83206c4521366d9b3b008643c02daf63cd293ed6 Mon Sep 17 00:00:00 2001 From: Ryan Davis Date: Wed, 10 Jul 2019 18:46:48 -0600 Subject: [PATCH] Extended report-datum to be friendly to eof. read-syntax returns either a syntax or eof. This allows report-datum to be used to debug read-syntax issues. --- beautiful-racket-lib/br/debug.rkt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/beautiful-racket-lib/br/debug.rkt b/beautiful-racket-lib/br/debug.rkt index a38ffd1..53a8074 100644 --- a/beautiful-racket-lib/br/debug.rkt +++ b/beautiful-racket-lib/br/debug.rkt @@ -12,9 +12,11 @@ (define-macro-cases report-datum [(_ STX-EXPR) #`(report-datum STX-EXPR #,(syntax->datum #'STX-EXPR))] [(_ STX-EXPR NAME) - #'(let () - (eprintf "~a = ~v\n" 'NAME (syntax->datum STX-EXPR)) - STX-EXPR)]) + #'(let ([stx STX-EXPR]) + (eprintf "~a = ~v\n" 'NAME (if (eof-object? stx) + stx + (syntax->datum stx))) + stx)]) (define-macro (define-multi-version MULTI-NAME NAME) #'(define-macro (MULTI-NAME X (... ...))