struct stuff { private Exception delegate() exceptionBuilder = delegate Exception() { return new Exception("foobar"); }; } The following piece of code trigger a compiler error : delegate module.stuff.__dgliteral1 function literals cannot be class members Why is that ? Is it a bug or a feature ?