This is the mail archive of the gdb-patches@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: [unwind-20030108-branch] Add sentinel-frame + misc



It's hardly a bug; more of a deep interface shortcoming.  Consider:
Which is a bug.

File A declares a type 'struct foo'.
File B declares a type 'struct foo'.
Header C forward declares 'struct foo;' and 'struct foo *get_foo ()'.
File D includes Header C and uses 'get_foo'.

I'm sitting in File D, and I want to look in the debugger at this
opaque unwind cache.  There's no possible way to associate it with
either struct foo.

That's why I think the construct should be avoided; if one of them is
A_foo and the other is B_foo, and we do a bit of casting, then at least
I can dump the one I want.
Shouldn't something like:
('File A:struct foo' *) get_foo()
work? Even:
(gdb) list 'File A'
(gdb) print *(struct foo) get_foo()
How does GDB differentiate between variables and enum's when they have multiple declarations?

Andrew



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