http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52935
Bug #: 52935 Summary: Unnecessary DW_TAG_pointer_type DIEs in C++ Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: debug AssignedTo: ja...@gcc.gnu.org ReportedBy: ja...@gcc.gnu.org struct S { struct S *a; }; struct T { struct S *b; } t; has two DW_TAG_pointer_type DIEs with the same attributes, one is referenced from within DW_TAG_structure_type S members, while the other one for other uses outside of the class. Jason said last night this is because of of the injected-class-name. Would be nice to get the debug info right (as compiling with C instead of C++ does).