On 17/12/2025 9:48 AM, DLearner wrote:
I have a rather complicated string mixin defined and invoked from within
the same source file.
Which seems to work.
But when I move the mixin definition to a separate module, and import
that module into the original source file, the compilation collapses
complaining that array concatenation requires the GC, which is not
available with -betterC.
DLearner
Yes it does.
Are you trying to extract the string mixin argument out into a function?
```d
string genStuff(string val) {
return val ~ ";";
}
void myFunc() {
mixin(genStuff("this"));
}
```
This won't work without a way to mark `genStuff` as CTFE only. Which
doesn't exist currently.
Compiler has to know that a given execution context is CTFE only
otherwise disallowed.