guile-devel
[Top][All Lists]
Advanced

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

Re: Bug in system/repl/error-handling.scm ?


From: Matt Wette
Subject: Re: Bug in system/repl/error-handling.scm ?
Date: Mon, 20 Feb 2017 07:04:04 -0800


On Feb 20, 2017, at 7:02 AM, Daniel Llorens <address@hidden> wrote:


On 20 Feb 2017, at 15:40, Matt Wette <address@hidden> wrote:

This code looks wrong to me: 3rd arg to catch is not a procedure.  Am I missing something?  It starts at line 113 in system/repl/error-handling.scm, guile-2.0.13:

    (catch #t
      (lambda () 
        (with-default-trap-handler le-trap-handler
          (lambda () (%start-stack #t thunk))))

      (case post-error
        ((report)
         (lambda (key . args)
           (if (memq key pass-keys)
               (apply throw key args)
               (begin
                 (with-saved-ports
                   (lambda ()
                     (run-hook before-error-hook)
                     (print-exception err #f key args)
                     (run-hook after-error-hook)
                     (force-output err)))
                 (if #f #f)))))
       . . .

each of the branches of the case returns a lambda (or throws an error). ‘catch’ is a normal procedure, so this looks ok to me.




Ah.  Got it.  Thanks. — Matt

reply via email to

[Prev in Thread] Current Thread [Next in Thread]