This is the mail archive of the gdb@sourceware.org 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: print/x on references


On Thu, Oct 18, 2007 at 05:37:36AM -0400, Paul Hilfinger wrote:
> 
> Currently, there is a slight discrepancy in the behavior of formatted print
> commands.  Stop the program below in f.  At that point, we see the
> following behavior:
> 
>     (gdb) p x
>     $4 = (Glorp &) @0x8049850: {x = 1, y = 2}
>     (gdb) p/x x
>     $5 = 0x8049850
> 
> Is there any particular reason these two cases shouldn't have the same
> behavior?  It seems that printcmd.c:print_formatted is conflating the
> cases of C++ pointers and C++ references, and I don't see the justification
> for doing so.

Well, what's the right behavior?  I'm not thrilled with the current
behavior either, but I don't want to make it too hard to get at the
reference's "value" i.e. pointer.  In C++ you never (are supposed to)
need that, but while debugging is in my opinion a different story.

-- 
Daniel Jacobowitz
CodeSourcery


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