digitalmars.D.bugs - [Issue 16237] New: Some DMD Assertion Failures
- via Digitalmars-d-bugs (49/49) Jul 05 2016 https://issues.dlang.org/show_bug.cgi?id=16237
https://issues.dlang.org/show_bug.cgi?id=16237 Issue ID: 16237 Summary: Some DMD Assertion Failures Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW Severity: normal Priority: P1 Component: dmd Assignee: nobody puremagic.com Reporter: puneet coverify.org DMD crashes with assertion failure: $ dmd -c test.d core.exception.AssertError todt.d(795): Assertion failure Also if we comment out line 14, we get: $ dmd -c test.d dmd: toobj.c:358: virtual void toObjFile(Dsymbol*, bool)::ToObjFile::visit(ClassDeclaration*): Assertion `cd->structsize >= 8 || (cd->cpp && cd->structsize >= 4)' failed. Aborted class Foo(L) { // 1 FooFoo!L foofoo; // 2 alias U = typeof(frop); // 3 Object obj = null; // 4 auto frop() { // 5 foofoo.frop; // 6 } // 7 } // 8 class FooFooFoo(M) { // 9 alias Zoo = Foo!(M); // 10 } // 11 class FooFoo(M) : FooFooFoo!(M) { // 12 bool frop() {return false;} // 13 Zoo zoo() {return new Zoo;} // 14 } // 15 class Bar { // 16 class Solver { // 17 auto boo(L)(L l) { // 18 new FooFoo!L(); // 19 } // 20 void bar() { // 21 boo(foo); // 22 } // 23 } // 24 byte[] foo ; // 25 } // 26 --
Jul 05 2016