emacs-devel
[Top][All Lists]
Advanced

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

Re: The poor quality of Emacs's backtraces


From: Michael Heerdegen
Subject: Re: The poor quality of Emacs's backtraces
Date: Fri, 14 Jul 2023 03:10:46 +0200
User-agent: Gnus/5.13 (Gnus v5.13)

Alan Mackenzie <acm@muc.de> writes:

>     Test test-kill-buffer-auto-save-delete-no backtrace:
>   {comp-spill-lap-function} #f(compiled-function (form) "Byte-compile FORM, 
> spilling data from the byte compiler." #<bytecode 0xa35cf62c052f23d>)((lambda 
> (arg124 &optional) (let ((f #'yes-or-no-p)) (funcall f arg124))))
>   apply({comp-spill-lap-function} #f(compiled-function (form) "Byte-compile 
> FORM, spilling data from the byte compiler." #<bytecode 0xa35cf62c052f23d>) 
> (lambda (arg124 &optional) (let ((f #'yes-or-no-p)) (funcall f arg124))) nil)
>   comp-spill-lap-function((lambda (arg124 &optional) (let ((f #'yes-or-no-p)) 
> (funcall f arg124))))
>   comp-spill-lap((lambda (arg124 &optional) (let ((f #'yes-or-no-p)) (funcall 
> f arg124))))
>   comp--native-compile((lambda (arg124 &optional) (let ((f #'yes-or-no-p)) 
> (funcall f arg124))) nil 
> "/tmp/test-nativecomp-cache-Dmx7GP/30.0.50-7a56150c...")
>   comp-trampoline-compile(yes-or-no-p)

So what is it what errors?  Just

(comp-spill-lap-function
 '(lambda (arg124 &optional) (let ((f #'yes-or-no-p)) (funcall f arg124))))

?  Does evaluating that work in your session?  Maybe load the source of
`comp-spill-lap-function' before running the test to get a better
backtrace (or just eval the expression in the test to get a real debugger).

> [...]
>     \300   byte-constant yes-or-no-p
>     \211   byte-dup
>     \2     stack-ref 2 ; ARG124
>     !      byte-call 1
>     \262\1 stack-set 1
>     \207   return

Isn't that just the above lambda to be compiled (and is that function
called at all)?


Michael.




reply via email to

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