It looks like environments with blocks are fragile outside the expansion extent, it may create additional problems for a code walker.
For example,
(macrolet ((f (&environment e) (format t "~s~%" e) `(quote ,e))) (block a (f)))
prints the environment during the expansion, but then errors while trying to print the returned environment.
It looks like environments with blocks are fragile outside the expansion extent, it may create additional problems for a code walker.
For example,
(macrolet ((f (&environment e) (format t "~s~%" e) `(quote ,e))) (block a (f)))
prints the environment during the expansion, but then errors while trying to print the returned environment.