|
From: SourceForge.net <no...@so...> - 2011-03-29 22:17:23
|
Bugs item #3258485, was opened at 2011-03-29 17:52 Message generated for change (Comment added) made by sds You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101355&aid=3258485&group_id=1355 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: clisp Group: ANSI compliance issue Status: Open Resolution: None Priority: 5 Private: No Submitted By: Sam Steingold (sds) Assigned to: Bruno Haible (haible) Summary: HANDLER-BIND cannot handle handlers defined using CONSTANTLY Initial Comment: (compile nil (lambda (arg) (handler-bind ((error (constantly nil))) (car arg)))) *** - Compiler bug!! Occurred in ASSEMBLE-LAP at (HANDLER-BEGIN). this bug was present before the 2005-01-21 patch which made %HANDLER-BIND have a function syntax. it is now (after the 2011-03-29 patch which fixed bug#3147908) present again. note that asdf.lisp cannot be compiled ootb until this bug is fixed. ---------------------------------------------------------------------- >Comment By: Sam Steingold (sds) Date: 2011-03-29 18:17 Message: the following seems to work around the bug: (defun fix-handler-begin (list) "replace (... (HANDLER-BEGIN) ...) with (... (HANDLER-BEGIN&PUSH) (POP) ...)" (do ((tail list (cdr tail))) ((endp tail) list) (when (equal (car tail) '(SYS::HANDLER-BEGIN)) (setf (car tail) '(SYS::HANDLER-BEGIN&PUSH) (cdr tail) (cons '(SYS::POP) (cdr tail)) tail (cddr tail))))) (trace (sys::insert-combined-LAPs :post (fix-handler-begin (car *trace-values*)))) I wonder if this is the right fix... ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101355&aid=3258485&group_id=1355 |
|
From: SourceForge.net <no...@so...> - 2011-03-29 22:55:43
|
Bugs item #3258485, was opened at 2011-03-29 17:52 Message generated for change (Settings changed) made by sds You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101355&aid=3258485&group_id=1355 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: clisp Group: ANSI compliance issue >Status: Closed >Resolution: Fixed Priority: 5 Private: No Submitted By: Sam Steingold (sds) >Assigned to: Sam Steingold (sds) Summary: HANDLER-BIND cannot handle handlers defined using CONSTANTLY Initial Comment: (compile nil (lambda (arg) (handler-bind ((error (constantly nil))) (car arg)))) *** - Compiler bug!! Occurred in ASSEMBLE-LAP at (HANDLER-BEGIN). this bug was present before the 2005-01-21 patch which made %HANDLER-BIND have a function syntax. it is now (after the 2011-03-29 patch which fixed bug#3147908) present again. note that asdf.lisp cannot be compiled ootb until this bug is fixed. ---------------------------------------------------------------------- Comment By: Sam Steingold (sds) Date: 2011-03-29 18:55 Message: thank you for your bug report. the bug has been fixed in the source tree (mercurial/hg). you can either wait for the next release (recommended) or check out the current mercurial tree (see http://clisp.org) and build CLISP from the sources (be advised that between releases the source tree is very unstable and may not even build on your platform). ---------------------------------------------------------------------- Comment By: Sam Steingold (sds) Date: 2011-03-29 18:17 Message: the following seems to work around the bug: (defun fix-handler-begin (list) "replace (... (HANDLER-BEGIN) ...) with (... (HANDLER-BEGIN&PUSH) (POP) ...)" (do ((tail list (cdr tail))) ((endp tail) list) (when (equal (car tail) '(SYS::HANDLER-BEGIN)) (setf (car tail) '(SYS::HANDLER-BEGIN&PUSH) (cdr tail) (cons '(SYS::POP) (cdr tail)) tail (cddr tail))))) (trace (sys::insert-combined-LAPs :post (fix-handler-begin (car *trace-values*)))) I wonder if this is the right fix... ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101355&aid=3258485&group_id=1355 |