http://d.puremagic.com/issues/show_bug.cgi?id=4149
Summary: refs displayed as pointers in gdb Product: D Version: unspecified Platform: Other OS/Version: Windows Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: bra...@puremagic.com Blocks: 4044 --- Comment #0 from Brad Roberts <bra...@puremagic.com> 2010-05-02 13:36:57 PDT --- (gdb) list inline.d:1 1 module test.d; 2 3 void foo(ref int x) 4 { 5 ++x; 6 } 7 8 void bar() 9 { 10 int x = 0; 11 12 foo(x); 13 } 14 15 void main() 16 { 17 bar(); 18 } (gdb) break 5 Breakpoint 1 at 0x804910d: file inline.d, line 5. (gdb) run Breakpoint 1, test.d.foo (x=0xbffff62c) at inline.d:5 5 ++x; (gdb) print x $1 = (int *) 0xbffff62c Assuming I'm understanding the dwarf records correctly, foo's argument: <2><a2>: Abbrev Number: 5 (DW_TAG_formal_parameter) <a3> DW_AT_name : x <a5> DW_AT_type : <0x69> <a9> DW_AT_location : 2 byte block: 91 7c (DW_OP_fbreg: -4) And type 0x69: <1><69>: Abbrev Number: 4 (DW_TAG_pointer_type) <6a> DW_AT_byte_size : 4 <6b> DW_AT_type : <0x62> Dwarf formally supports a reference type according to the spec. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------