April 20, 2020 [Issue 20753] New: "Error: unknown" with structs of arrays, speculative instantiation and recursive types | ||||
|---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=20753 Issue ID: 20753 Summary: "Error: unknown" with structs of arrays, speculative instantiation and recursive types 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: dlang-bugzilla@thecybershadow.net //////////////// test.d //////////////// struct HashCollection() { struct Item { IniFragment value; } Item[] items; ref lookupToReturnValue() { return items[0].value; } enum canDup = is(typeof(items.dup)); } struct IniFragment { HashCollection!() children; } //////////////////////////////////////// Works in DMD 2.085 but not newer. Bisecting shows that the error message begins manifesting when it was introduced ( https://github.com/dlang/dmd/pull/9425 ), however debug versions of DMD have been failing with an assertion failure before that change. The assertion failures began after https://github.com/dlang/dmd/pull/5500 . -- | ||||
Copyright © 1999-2021 by the D Language Foundation
Permalink
Reply