September 18, 2012
The code below fails to compile with:

Error: function main.fun!(cast(ModeScore)0,int).fun.map!(__lambda33).map!(int[]).map is a nested function and cannot be accessed from main.fun!(cast(ModeScore)1,int).fun

which is weird.
But then comment out line B or line A (see below) and it works, which is even weirder.

Is that a bug?

----
import std.algorithm;
void main(){
	int[]as;
	auto scores=as.map!(a=>a.fun!(ModeScore.u));   //line A
	auto scores2=as.map!(a=>a.fun!(ModeScore.v)); //line B
}
enum ModeScore {u,v}
auto fun(ModeScore modeScore=ModeScore.sum,T)(T a){
	auto scores=[a].map!(b=>b);
	return 0;
}
----