Greetings!

We still implement the conditions package as a set of patches applied
at the end of the ansi build process.  One of these is (setf
(symbol-function 'si::universal-error-handler) (symbol-function
'conditions::clcs-universal-error-handler)).  This needs cleaning up,
but if instead you redefine the latter and execute the above redirect,
you should see the behavior you expect. (i.e. 'error in the ansi build
calls the conditioned version).

Take care,



Robert Boyer <[EMAIL PROTECTED]> writes:

> The GCL documentation says:
> 
>    When an error is detected, GCL calls SI:UNIVERSAL-ERROR-HANDLER with the
>    specified arguments. ...  To change the error handler of GCL, redefine
>    SI:UNIVERSAL-ERROR-HANDLER.
> 
> So why doesn't the function ERROR normally eventually call
> SI:UNIVERSAL-ERROR-HANDLER?  Below is a transcript that I think supports my
> question.  Is there some new way to get into the heart of all GCL error
> handling?
> 
> Bob
> 
> -------------------------------------------------------------------------------
> 
> GCL (GNU Common Lisp)  2.7.0 ANSI    May 13 2006 18:48:14
> ... some boilerplate deleted
> >(defun si::universal-error-handler (&rest x) (format t "Bye!") (bye))
> 
> SYSTEM:UNIVERSAL-ERROR-HANDLER
> 
> >(error "foo")
> 
> foo
> 
> Fast links are on: do (si::use-fast-links nil) for debugging
> Broken at ERROR.  Type :H for Help.
>  1 (Continue) Return to top level.
> dbl:>>:q
> 
> Top level.
> >(car 3)
> Bye!% 
> 
> 
> 

-- 
Camm Maguire                                            [EMAIL PROTECTED]
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah


_______________________________________________
Gcl-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/gcl-devel

Reply via email to