digitalmars.D.bugs - [Issue 22997] New: DMD crash: copy ctor can't call other ctor
- d-bugmail puremagic.com (34/34) Apr 08 2022 https://issues.dlang.org/show_bug.cgi?id=22997
https://issues.dlang.org/show_bug.cgi?id=22997 Issue ID: 22997 Summary: DMD crash: copy ctor can't call other ctor Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW Severity: normal Priority: P1 Component: dmd Assignee: nobody puremagic.com Reporter: submada gmail.com Hello, this code crash dmd: ```d struct Forward{} struct Foo{ /// 1. this(scope ref typeof(this) rhs){ this(rhs, Forward.init); //call ctor 2. } /// 2. this(scope ref typeof(this) rhs, Forward){} /// 3. this(scope typeof(this) rhs, int i, double d, string s){} } void main(){ } ``` Existence of ctor 3 make dmd crash, there is some ctor overloading bug when ctor 1. call ctor 2. Ctor 3. must have first parameter rvalue value of type typeof(this) to trigger the dmd crash. --
Apr 08 2022