[Bug debug/44668] New: class->DW_TAG_typedef is missing DW_AT_accessibility
jan dot kratochvil at redhat dot com
gcc-bugzilla@gcc.gnu.org
Fri Jun 25 16:22:00 GMT 2010
echo 'class C { protected: typedef int t; t v; } c;' | g++ -Wall -c -g -x c++ -
<2><33>: Abbrev Number: 3 (DW_TAG_typedef)
<34> DW_AT_name : t
<38> DW_AT_type : <0x4a>
<2><3c>: Abbrev Number: 4 (DW_TAG_member)
<3d> DW_AT_name : v
<41> DW_AT_type : <0x33>
<45> DW_AT_data_member_location: 2 byte block: 23 0 (DW_OP_plus_uconst:
0)
<48> DW_AT_accessibility: 2 (protected)
DIE <0x33> should have DW_AT_accessibility.
FAIL g++ (GCC) 4.6.0 20100625 (experimental)
FAIL g++ (GCC) 4.5.1 20100625 (prerelease)
SKIP g++ (GCC) 4.4.5 20100625 (prerelease) - C::t is missing there.
FAIL gcc-c++-4.4.4-8.fc14.x86_64
G++ properly respects the access control:
.C:3: error: âÂÂtypedef int C::tâ is protected
.C:11: error: within this context
But GDB cannot display the access control during `ptype C'.
GDB does not and probably should not respect the access control, though.
--
Summary: class->DW_TAG_typedef is missing DW_AT_accessibility
Product: gcc
Version: 4.5.1
Status: UNCONFIRMED
Severity: minor
Priority: P3
Component: debug
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jan dot kratochvil at redhat dot com
GCC target triplet: x86_64-unknown-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44668
More information about the Gcc-bugs
mailing list