www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 13693] New: Assertion failed at cppmangle.c:298: void

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

          Issue ID: 13693
           Summary: Assertion failed at cppmangle.c:298: void
                    CppMangleVisitor::mangle_variable(VarDeclaration*,
                    bool)
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: minor
          Priority: P1
         Component: DMD
          Assignee: nobody puremagic.com
          Reporter: redballoon36 gmail.com

The following test case fails an assertion and crashes dmd:

extern(C++) struct A;
extern(C++) A *a;

dmd properly emits an error message explaining that this is not permitted
(test.d(2): Error: variable test.a ICE: C++ static non- __gshared non-extern
variables not supported).  Then it reaches an assertion, fails, and dumps core.

I'm running dmd 2.066.1 on Arch Linux.

--
Nov 06 2014