[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: catcherror problem



Guido Bosch writes:
 > I don't know if this is a LeLisp or a Centaur problem, but maybe you
 > can give me a hint.
 > 

I finally found a solution for my problem: the new error handler must
always call `syserror' otherwise it may fail for some types of erro.
I don't know whether this is a bug or a feature of LeLisp, but that's
how it works.

;; Wrong: 
(de #:my:syserror (f m a) 
    (prin "*** My error: ") (printerror f m a) (list f m a))

;; Right:
(de #:my:syserror (f m a)
    ;; catch the error parameters for later use
    (setq #:my:error (list f m a))
    (prin "*** My error: ")
    ;; syserror must be called, otherwise infinite loop for 
    ;; some types of error
    (syserror f m a))

-- Guido