diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2018-03-19 22:06:07 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2018-03-19 22:06:07 -0700 |
commit | 5699fa66ff753922e103f956e0da2721b193897c (patch) | |
tree | 78c17b1cf7d4e9fd603aadf745be0e4f12fccf32 | |
parent | b5d497675c88202d5771649c64bece82fe8b3950 (diff) | |
download | txr-5699fa66ff753922e103f956e0da2721b193897c.tar.gz txr-5699fa66ff753922e103f956e0da2721b193897c.tar.bz2 txr-5699fa66ff753922e103f956e0da2721b193897c.zip |
compiler: dump warnings from form expansion.
* share/txr/stdlib/compiler.tl (usr:compile-toplevel): Call
release-deferred-warnings to dump accumulated warnings.
Otherwise when we are working in the listener, the pent-up
warnings get dumped in relation to the next input line.
-rw-r--r-- | share/txr/stdlib/compiler.tl | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/share/txr/stdlib/compiler.tl b/share/txr/stdlib/compiler.tl index 24d64fc1..d02e8aee 100644 --- a/share/txr/stdlib/compiler.tl +++ b/share/txr/stdlib/compiler.tl @@ -503,6 +503,8 @@ (let ((co (new compiler)) (as (new assembler))) (let* ((oreg co.(alloc-treg)) - (frag co.(compile oreg (new env co co) (expand* exp)))) + (xexp (prog1 (expand* exp) (unless *load-recursive* + (release-deferred-warnings)))) + (frag co.(compile oreg (new env co co) xexp))) as.(asm ^(,*frag.code (end ,frag.oreg))) (vm-make-desc co.nlev co.nreg as.buf co.(get-datavec) co.(get-funvec))))) |