hi, i stumbled upon something weird - it looks like a bug to me but maybe it is a "feature" that is unclear to me.
so i know i can declare function and delegate pointers at module level. for function pointers, i can initialize with a lambda. BUT for delegates i get an error - see below i found out that using module static this(){...} provides a workaround, but why is this necessary? also, if there is a good reason after all then the error message should make more sense. /det ps: i know there is a shorthand syntax for this. ---- module demo; int function(int) fn = function int(int){ return 42; }; // ok int delegate(int) dg = delegate int(int){ return 666; }; // demo.d(6): Error: non-constant nested delegate literal expression __dgliteral6 void main(){}