Subject: Re: bug#75318: Lisp_Subr header and layout

From: Pip Cet <[email-masked]>
Date: Wed, 22 Jan 2025 17:57:48 +0000

"Eli Zaretskii" <[email-masked]> writes:

>> Date: Wed, 22 Jan 2025 16:07:52 +0000
>> From: Pip Cet <[email-masked]>
>> Cc: [email-masked], [email-masked], [email-masked]
>>
>> (In GDB, with .gdbinit loaded, "p LISPSYM_INITIALLY (Qnil)" prints an
>> unhelpful "{0x0}"; "p lisp_h_Qnil" prints "{0}".  ptype thinks the first
>> is a Lisp_Object (but expands the type to its obscure definition), the
>> second claims to be a singleton array of int.
>
> I guess your build is with check-lisp-objects?  Because here I get

Sorry, meant to mention that and forgot.  It is.

>   (gdb) p LISPSYM_INITIALLY (Qnil)
>   $1 = 0
>   (gdb) p lisp_h_Qnil
>   $3 = 0
>   (gdb) ptype LISPSYM_INITIALLY(Qnil)
>   type = long long
>   (gdb) ptype lisp_h_Qnil
>   type = int

I guess your build is with wide Emacs ints, as usual :-)

I'd also forgotten about "whatis", which splits the difference and tells
me the first is a Lisp_Word, not a Lisp_Object.

Pip