diff --git a/src/ikarus.boot b/src/ikarus.boot index efe3ff4..cb7f477 100644 Binary files a/src/ikarus.boot and b/src/ikarus.boot differ diff --git a/src/ikarus.syntax.ss b/src/ikarus.syntax.ss index 241345f..0580eee 100644 --- a/src/ikarus.syntax.ss +++ b/src/ikarus.syntax.ss @@ -1770,7 +1770,12 @@ (cons (add-subst rib (chi-macro value e)) (cdr e*)) r mr lex* rhs* mod** kwd* rib top?)] [else - (values e* r mr lex* rhs* mod** kwd*)]))))]))) + (if top? + (chi-body* (cdr e*) r mr + (cons (gen-lexical 'dummy) lex*) + (cons (cons 'expr e) rhs*) + mod** kwd* rib top?) + (values e* r mr lex* rhs* mod** kwd*))]))))]))) (define (expand-transformer expr r) (let ([rtc (make-collector)]) (let ([expanded-rhs