Richard Stallman <[EMAIL PROTECTED]> writes:

>     b) they don't check for _structural_ incoherence (namely that
>     Emacs' internal data structures are not garbled), but for
>     _visual_ incoherence.  But for debugging this one needs
>     information about what kind of things happen on the screen at
>     the time, and just in what manner some expectations might get
>     violated.  This is much easier to get when Emacs remains
>     operative and gets a chance to _display_ the result of the
>     operation instead of committing suicide.
>
> You should be able to continue by typing the GDB `return' command
> and then `c'.  Does it work?

Not really.  I think that "abort" may be marked as "noreturn" in the
GCC header files, and so GCC does not bother keeping the stack or code
in a consistent state after return.

As another consequence, without an explicit -fno-crossjumping placed
into CFLAGS, all asserts in a function will use the same call to
abort(), which means that the traceback from gdb will pick a random
(but usually fixed) assertion line in the source code as the
prospective culprit.

I'll mention that option in the debugging instructions if it is not
already there.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum


_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-devel

Reply via email to