Jonathan M Davis:

If you want it to be guaranteed, you'd do something like

template foo(string s)
{
    enum foo = s ~ " betty";
}

A more general solution is to wrap the concatenation with a call to:

alias ctEval(alias expr) = expr;

Use:

string bar() { return ctEval!(s ~ " betty"); }

Bye,
bearophile

Reply via email to