Created attachment 1525 [details] a tar containing 2 tars (each with the code reproducing the bug on a specific dmd version) Attached is the dustmite reduced code. This bug reproduces on both dmd 2.066.1 & 2.067.1 (but the code reproducing it is slightly different, therefore, the attachment contains a tar with 2 tars in it , one for each version of dmd). The reduced code has some compilation errors (the original one didn't) but the seg fault still happens. after untarring the code just run: for 2.066.1: dmd -g -w -c weka/XXX/XXZ/XXY.d -ofsome_obj.o for 2.067.1: dmd -c weka/BXX/IXX/DXX.d
Introduced in https://github.com/D-Programming-Language/dmd/pull/3824 I think
Reduced test case from the second tar for 2.067.1: alias TypeTuple(T...) = T; struct X { static struct NA() { X x; void check() { x.func(); } } alias na = NA!(); auto func() { Y* p; p.func(); } } struct Y { mixin Mix; } template Mix() { void func() { auto z = Z(null); } } struct Type(size_t v) {} enum errVal = errorValue; struct Z { Type!errVal v; }
https://github.com/D-Programming-Language/dmd/pull/4715
Commits pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/e555b562d733e277773bc632c12917505e680b10 fix Issue 14642 - ICE in ctfeInterpret https://github.com/D-Programming-Language/dmd/commit/a74d774ac1b5402895775b3df9a8cddcd7960f2e Merge pull request #4715 from 9rnsr/fix14642 [REG2.066] Issue 14642 - ICE in ctfeInterpret
*** Issue 14240 has been marked as a duplicate of this issue. ***
Commits pushed to stable at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/e555b562d733e277773bc632c12917505e680b10 fix Issue 14642 - ICE in ctfeInterpret https://github.com/D-Programming-Language/dmd/commit/a74d774ac1b5402895775b3df9a8cddcd7960f2e Merge pull request #4715 from 9rnsr/fix14642