[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: gdb doc
From: |
Eli Zaretskii |
Subject: |
Re: gdb doc |
Date: |
Fri, 23 Mar 2007 15:04:02 +0200 |
> From: A Soare <address@hidden>
> Cc: "Emacs Dev [emacs-devel]" <address@hidden>,
> "Emacs Help [help-gnu-emacs]" <address@hidden>
> Date: Thu, 22 Mar 2007 12:59:11 +0100 (CET)
>
> Breakpoint 3, Feval (form=139269229) at eval.c:2205
> (gdb) p form
> $1 = 139269229
> (gdb) xcar form
> $2 = 0x8540b91
>
> Now I wish to do
>
> (gdb) commands
>
> and here I do not know how to write CONDITION in
>
> if <CONDITION>
> break
No, you need to say "break Feval if <CONDITION>".
> Can you help me a little mode to write the condition please?
I don't have time to write and test a complete script, sorry. You
will need to look in lisp.h for the definition of the XCAR macro, or
in src/.gdbinit for the definition of `xcar', and use the same
expressions in the condition. Something like the following
(untested!):
break Feval if ((struct Lisp_Cons *) ((gdb_use_union ? form.u.val : form &
$valmask) | gdb_data_seg_bits))->car == Qplus