[slime-devel] [patch] swank-allegro uses deprecated excl::walk

Dear all, the macroexpand-all implementation on ACL uses the deprecated excl::walk, instead of the currently suggested excl::compiler-walk. This might seem a minor thing, but actually leads to wrong macroexpansion (i.e. macroexpansions that are very different from what ACL actually does if you compile the code). (Allegro bug [spr39340] leading to ACL 8.2 patch 'code/loop.001' was hard to debug because of this) The attached trivial patch fixes the issue. Patch is against the swank currently in quicklisp, slime-20121125-cvs. Yours, Utz Original error message: --- CL-USER(3): (excl::walk 'foo) ; Autoloading for EXCL::WALK: ; Fast loading from bundle code/walker.fasl. ; Autoloading for EXCL::WALK: ; Fast loading from bundle code/walker.fasl. ; Autoloading for EXCL::WALK: ; Fast loading from bundle code/walker.fasl. Error: Attempt to load the walker module for excl::walk or excl::old-compiler-walk, which is deprecated in favor of the clos walker, excl::walk-form, and the newer version of excl::compiler-walk. Restart actions (select using :continue): 0: Load it anyway 1: retry the load of walker.fasl 2: skip loading walker.fasl 3: Return to Top Level (an "abort" restart). 4: Abort entirely from this (lisp) process. ---

Utz-Uwe Haus <lisp@uuhaus.de> writes:
Dear all,
the macroexpand-all implementation on ACL uses the deprecated excl::walk, instead of the currently suggested excl::compiler-walk. This might seem a minor thing, but actually leads to wrong macroexpansion (i.e. macroexpansions that are very different from what ACL actually does if you compile the code). (Allegro bug [spr39340] leading to ACL 8.2 patch 'code/loop.001' was hard to debug because of this)
The attached trivial patch fixes the issue. Patch is against the swank currently in quicklisp, slime-20121125-cvs. Applied, thanks.
-- With best regards, Stas.
participants (2)
-
Stas Boukarev
-
Utz-Uwe Haus