[Bug debug/37982] Extraneous DW_TAG_variable tag
dodji at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Wed Mar 17 21:15:00 GMT 2010
------- Comment #9 from dodji at gcc dot gnu dot org 2010-03-17 21:15 -------
The situation has change quite a lot since gcc 4.3.0.
Now a DW_TAG_member is emitted for the static member variable, and only one
DW_TAG_variable is emitted to represent the variable definition.
So I guess the bug can be closed now?
With 4.5 I get this:
<0><b>: Abbrev Number: 1 (DW_TAG_compile_unit)
< c> DW_AT_producer : (indirect string, offset: 0x62): GNU C++ 4.5.0
20100301 (experimental)
<10> DW_AT_language : 4 (C++)
<11> DW_AT_name : (indirect string, offset: 0x0): class.c
<15> DW_AT_comp_dir : (indirect string, offset: 0x19):
/home/dodji/devel/git/gcc-branches.git/gcc-PR37982.git/prtests
<19> DW_AT_low_pc : 0x4004b4
<21> DW_AT_high_pc : 0x4004c0
<29> DW_AT_stmt_list : 0x0
<1><2d>: Abbrev Number: 2 (DW_TAG_structure_type)
<2e> DW_AT_name : A
<30> DW_AT_byte_size : 1
<31> DW_AT_decl_file : 2
<32> DW_AT_decl_line : 2
<33> DW_AT_sibling : <0x49>
<2><37>: Abbrev Number: 3 (DW_TAG_member)
<38> DW_AT_name : (indirect string, offset: 0x58): elsewhere
<3c> DW_AT_decl_file : 2
<3d> DW_AT_decl_line : 3
<3e> DW_AT_MIPS_linkage_name: (indirect string, offset: 0x8):
_ZN1A9elsewhereE
<42> DW_AT_type : <0x49>
<46> DW_AT_external : 1
<47> DW_AT_declaration : 1
[...]
<0><a0>: Abbrev Number: 1 (DW_TAG_compile_unit)
<a1> DW_AT_producer : (indirect string, offset: 0x62): GNU C++ 4.5.0
20100301 (experimental)
<a5> DW_AT_language : 4 (C++)
<a6> DW_AT_name : (indirect string, offset: 0x8d): class2.c
<aa> DW_AT_comp_dir : (indirect string, offset: 0x19):
/home/dodji/devel/git/gcc-branches.git/gcc-PR37982.git/prtests
<ae> DW_AT_low_pc : 0x4004c0
<b6> DW_AT_high_pc : 0x4004c0
<be> DW_AT_stmt_list : 0x46
<1><c2>: Abbrev Number: 2 (DW_TAG_structure_type)
<c3> DW_AT_name : A
<c5> DW_AT_byte_size : 1
<c6> DW_AT_decl_file : 1
<c7> DW_AT_decl_line : 2
<c8> DW_AT_sibling : <0xde>
<2><cc>: Abbrev Number: 3 (DW_TAG_member)
<cd> DW_AT_name : (indirect string, offset: 0x58): elsewhere
<d1> DW_AT_decl_file : 1
<d2> DW_AT_decl_line : 3
<d3> DW_AT_MIPS_linkage_name: (indirect string, offset: 0x8):
_ZN1A9elsewhereE
<d7> DW_AT_type : <0xde>
<db> DW_AT_external : 1
<dc> DW_AT_declaration : 1
[...]
<1><ea>: Abbrev Number: 6 (DW_TAG_variable)
<eb> DW_AT_specification: <0xcc>
<ef> DW_AT_decl_file : 2
<f0> DW_AT_decl_line : 2
<f1> DW_AT_location : 9 byte block: 3 ac 5 40 0 0 0 0 0
(DW_OP_addr: 4005ac)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37982
More information about the Gcc-bugs
mailing list