sb-cltl2:macroexpand-all doesn't expand global symbol macros

Bug #375326 reported by Nikodemus Siivola on 2009-05-12
This bug affects 1 person
Affects Status Importance Assigned to Milestone

Bug Description

(require :sb-cltl2)
(define-symbol-macro foox 42)
(sb-cltl2:macroexpand-all 'foox) ; => FOOX
(macroexpand 'foox) ; => 42, T

Reported by "Gustavo" on sbcl-devel.

Tobias C. Rittweiler (tcr) wrote :

There are more problems with SB-WALK: It macroexpands and uses declarations
introduced by such macro expansion. It also does not properly update the lexenv
that passed to the function with which WALK is invoked (I forgot the details, and
I do not have the code at hand right now.)

IMHO, SB-WALK could be rewritten; it's very old code, was once written with
portability in mind, then kludged to be SBCL specific again.

tags: added: define-symbol-macro walker
Changed in sbcl:
status: Confirmed → Fix Committed
Changed in sbcl:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers