On Friday 16 July 2010 02:46:48 Rory McGuire wrote: > import std.stdio; > > struct State { > string s; string getString() { return s; } > static State opCall(string s) { > State ret; > ret.s = s; > return ret; > } > } > > void main() { > auto s = State("adf"); > pragma(msg, s.getString()); > }
Make s an enum and it'll work. As it is, it's a local variable created at runtime rather than a constant at compile-time. So, use enum s = State("adf"); - Jonathan M Davis