https://issues.dlang.org/show_bug.cgi?id=12636
--- Comment #4 from yebblies <yebbl...@gmail.com> --- (In reply to Steven Schveighoffer from comment #3) > A class that implements a COM interface, has default linkage other than > extern(D). I thought it was similar to how extern(C++) works. extern(C++) interfaces work the same as COM interfaces except for linkage. Classes on the other hand... > > I don't know what the internal difference is between extern(C++) classes and > D classes, but I can understand if we cannot implement both ABIs in the same > class. I have to trust you on that one :) Yeah, either the first vtable entry is the classinfo pointer or not, there isn't much middle ground there. > TBH, I'm not really interested in > making this work, it was a test I ran to see if it did after telling someone > on d.learn that you can't create C++ classes in D, and you corrected me. > > Feel free to overtake this bug as an "Accepts invalid". At the very least it's a diagnostic issue. Should be easy enough to detect. --