Hello, i'm a beginner to the D programming language that has posted many times for simple questions and code errors.
I have written a function that manipulates D code (passed through a q{...} block) and returns it to be compiled into the program by a mixin.
The problem is that i need to do so in -betterC mode, and for example, this code does not compile, giving an error that array concatenation of two strings at CTFE is not possible without the GC:
string exampleCTFE(string a, string b) {
return a ~ b;
}
enum example = exampleCTFE("A", "BCDE");
int main() {
import core.stdc.stdio;
example.puts;
return 0;
}
Why it complains about the GC if it's a CTFE expression that is built at compile time? There is an alternative that works in -betterC mode?
Thanks in advance.