In the previous version of DMD I was using, a snapshot from right around the release of 2.064, this compiles fine, however, in the git head, this fails to compile with `menuItem_1.itemTitle only parameters or stack based variables can be inout` (This is the reduced version produced by dustmite)
inout(StringType) localize(StringType)(inout StringType str, string locale)
{
return str;
}
struct __slim_Root
{
static menuItem_1(ARGS...)()
{
enum itemTitle = ARGS;
}
static content_left_1()
{
menuItem!(localize("Home", ""));
}
alias menuItem = menuItem_1;
}
Also, while I did just realize I have a small bug in my code (I'm forcing localize to be evaluated at compile time, while I meant for it to be done at runtime), this code should still compile.