www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 21063] New: getLinkage is wrong for forward reference

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

          Issue ID: 21063
           Summary: getLinkage is wrong for forward reference extern(C++)
                    class
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: regression
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: dlang vild.io

```
static assert(__traits(getLinkage, Klass) == "C++"); // Succeeds
pragma(msg, __traits(getLinkage, Klass)); // Gets D linkage (Wrong)

extern (C++) class Klass { void a() {} }

static assert(__traits(getLinkage, Klass) == "C++");
pragma(msg, __traits(getLinkage, Klass)); // Correct linkage
```

--
Jul 21 2020