[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Emacs .gdbinit incompatible with latest GDB
From: |
Nick Roberts |
Subject: |
Re: Emacs .gdbinit incompatible with latest GDB |
Date: |
Sun, 25 Feb 2007 17:13:47 +1300 |
> Due to applied GDB patch
> http://sources.redhat.com/ml/gdb-patches/2007-01/msg00533.html
>
> the recent GDB has problems running GDB `xbacktrace' on EMACS
> http://sources.redhat.com/ml/gdb/2007-02/msg00252.html
>
> provided the following patch fixing the problem, either in
> http://sources.redhat.com/ml/gdb/2007-02/msg00257.html
>
> or an alternative one herein:
I've already made this change but perhaps we can generalise the subject, as the
incompatibility is with GDB in the CVS repository and not the latest GDB,
i.e. this GDB patch could still be reverted.
In Jan's words, the patch in GDB does:
currently all these types are printed as strings:
char
signed char
unsigned char
the patch will reduce the printed strings only to
char
and the signed/unsigned version gets printed as an array of byte values
(characters). I hope nobody uses sign-specification for strings.
On the other hand byte arrays become unreadable if printed as strings.
The functions in xbacktrace (xsymbol etc) were then printed as arrays of
character because in lisp.h:
struct Lisp_String
{
EMACS_INT size;
EMACS_INT size_byte;
INTERVAL intervals; /* text properties in this string */
unsigned char *data;
^^^^^^^^
};
which has been this way since:
2000-01-04 Gerd Moellmann <address@hidden>
* lisp.h (struct Lisp_String): Make DATA member `unsigned char *'.
I guess the questions to ask are:
1) Why was this change made?
2) Are there other strings in Emacs which are of type `unsigned char *' where
this change will cause a problem?
--
Nick http://www.inet.net.nz/~nickrob