Files
ikarus/scheme/ikarus.boot.4.prebuilt
T
Abdulaziz Ghuloum acbd00c356 fixed a bug in expanding macros in definition context where the
scope would get messed up when the macro call appears inside
let/letrec-syntax.  Basically, in the following example,

(let-syntax ([id-macro (syntax-rules () [(_ x) x])])
  (let () 
    (define (foo) (display "not ok\n")) 
    (let-syntax ([foo (syntax-rules () [(_) (display "ok\n")])])
      (id-macro (foo)))))

the call to (id-macro) would make (foo) refer to the foo in the
internal-definition context (the not ok one) instead of the
let-syntax one.

On the plus side, macro expansion is now half a second faster!
2009-07-06 12:14:08 +03:00

5.5 MiB