Opened 12 years ago

Last modified 12 years ago

#8190 closed bug

Debugger doesn't correctly handle anonymous unions within structs/classes — at Version 2

Reported by: anevilyak Owned by: bonefish
Priority: normal Milestone: R1
Component: Applications/Debugger Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description (last modified by anevilyak)

While attempting to debug error messages relating to invalid DW_AT_specification attributes with programs generated by our newer gcc4, I'm running into issues digging into what's actually going on because Debugger isn't properly able to represent the AttributeValue class. The anonymous union is simply shown as a blank value node that expands to another instance of the AttributeValue class with the same blank value node ad infinitum. At the moment I'm not really clear as to what's going on though, since the same union declared outside of a class works fine. Attached a simplified test program which reproduces the issue ; the compiler used to generate the DWARF output in question doesn't appear to matter, it's reproducible with both 2 and 4.

Change History (3)

by anevilyak, 12 years ago

Attachment: union_test.cpp added

comment:1 by anevilyak, 12 years ago

Also, may or may not be related, but in the case where the union is declared standalone, while it's more or less represented properly, the const void* data member of the block member doesn't appear at all in the value list, though the length member does.

comment:2 by anevilyak, 12 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.