This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: How Do I see (Disabled) data?


William Trenker <wdtrenker@yahoo.ca> writes:

> On 06 Feb 2003 14:25:59 -0500
> Jim Blandy <jimb@redhat.com> wrote:
> 
> > Can you show us the exact commands you're using, and the exact output
> > from GDB?
> 
> The exact gdb commands, below, are actually generated by DDD:
> 
> (gdb) graph display buff
> (gdb) graph display *buff dependent on 1
> (gdb) Attempt to dereference a generic pointer.
> Disabling display 2 to avoid infinite recursion.
> 
> buff is defined in the code as:
>     buff = (void *)param->get_string();
> 
> I should mention that I've experimented some more since my first message.  I got adventurous with gdb's print command and found out I could explicitly cast the variable, like this:
> 
> (gdb) print (char*)buff
> $1 = 0x8060a40 "Alex"
> 
> I think I may have answered my own question -- right?

Yep.  GDB isn't sure how to evaluate *p, when p has type 'void *', so
the 'display' gets an error, and GDB disables it.  By casting it, you
effectively tell GDB which type to use to display it.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]