digitalmars.D.bugs - [Issue 13875] New: extern(C++) interfaces cannot be used as
- via Digitalmars-d-bugs (42/42) Dec 17 2014 https://issues.dlang.org/show_bug.cgi?id=13875
https://issues.dlang.org/show_bug.cgi?id=13875 Issue ID: 13875 Summary: extern(C++) interfaces cannot be used as associative array keys Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW Severity: normal Priority: P1 Component: DMD Assignee: nobody puremagic.com Reporter: redballoon36 gmail.com Example code: test.cpp: class Inter { virtual ~Inter() { } }; Inter * newInter() { return new Inter; } test.d: extern(C++) interface Inter { } extern(C++) Inter newInter(); void main() { int[Inter] map; Inter i = newInter(); map[i] = 5; } Compiling these two files succeeds. The generated code segmentation faults in: If this is not supposed to be allowed, since Inter does not have the right toHash or something, then I think that int[Inter] should produce an error. --
Dec 17 2014