digitalmars.D.bugs - [Issue 14390] New: [REG2.068a] ICE or bad "has forward references"
- via Digitalmars-d-bugs (44/44) Apr 01 2015 https://issues.dlang.org/show_bug.cgi?id=14390
https://issues.dlang.org/show_bug.cgi?id=14390 Issue ID: 14390 Summary: [REG2.068a] ICE or bad "has forward references" error with circular class structure Product: D Version: D2 Hardware: All OS: All Status: NEW Keywords: ice, rejects-valid Severity: regression Priority: P1 Component: DMD Assignee: nobody puremagic.com Reporter: nilsbossung googlemail.com Slight variant of issue 12984. Works in 2.067.0. Feel free to change the title to be more to the point. I can't really wrap my head around all this. --- cat > test.d << code class B {alias MyD = D!int;} class C : B { version(ice) void m() {alias MyD = D;} version(forward_references) static struct S {alias MyD = D;} } class D(T) {alias MyE = E!float;} class E(T) : D!int { void m() {new C;} } code dmd -c -o- -version=ice test.d echo "-" dmd -c -o- -version=forward_references test.d --- dmd: mangle.c:231: void Mangler::mangleFuncType(TypeFunction*, TypeFunction*, unsigned char, Type*): Assertion `0' failed. Aborted (core dumped) - test.d(5): Error: struct test.C.S has forward references --- --
Apr 01 2015