www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 19992] New: __gshared members of class not listed in debug info

https://issues.dlang.org/show_bug.cgi?id=19992

          Issue ID: 19992
           Summary: __gshared members of class not listed in debug info
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Windows
            Status: NEW
          Keywords: symdeb
          Severity: normal
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: r.sagitario gmx.de

compiling this code with debug info:

class C
{
        int field = 3;
        static int stat = 9;
        __gshared int gs = 8;
        static shared(int) shrd = 6;
}
int main()
{
        C c = new C;
        return 0;
}

and breaking at the return statement in a debugger, all members of C are shown
but gs.

Dmd does not emit the __gshared member to the respective CV record:

0x13dd : Length = 62, Leaf = 0x1203 LF_FIELDLIST
        list[0] = LF_BCLASS, public, type = 0x1016, offset = 0
        list[1] = LF_MEMBER, public, type = T_INT4(0074), offset = 16
                member name = 'field'
        list[2] = LF_STATICMEMBER, public, type = T_INT4(0074)          member
name = 'stat'
        list[3] = LF_STATICMEMBER, public, type = T_INT4(0074)          member
name = 'shrd'

--
Jun 22 2019