https://issues.dlang.org/show_bug.cgi?id=18451
--- Comment #3 from ArturG <[email protected]> --- (In reply to ArturG from comment #2) > its actually not only remove this fail also: > > void delegate(void*) dg = delegate(void*){ writeln("test"); }; > void delegate(void*) dg2; > void delegate(void*)[] dgs = [dg,dg,dg,dg]; > //pragma(msg, isInputRange!(typeof(dgs))); > //assert(isInputRange!(typeof(dgs))); > dgs.writeln; > void delegate(void*)[] dgs2 = [null, null, null, null]; > //moveAll(dgs, dgs2); > //move(dgs.front, dgs2.front); > move(dg, dg2); > dg2(null); > > and this actually works: > void delegate(void*) dg = delegate(void*){ writeln("test"); }; > void delegate(void*) dg2; > void delegate(void*)[] dgs = [dg,dg,dg,dg]; > void delegate(void*)[] dgs2 = [null, null, null, null]; > dgs.writeln; > moveAll(dgs, dgs2); > move(dgs.front, dgs2.front); > move(dg, dg2); > dg2(null); another example: void delegate(void*) dg = delegate(void*){ writeln("test"); }; void delegate(void*) dg2; void delegate(void*)[] dgs = [dg,dg,dg,dg]; //dgs.writeln; // fails auto s = "%(%s %)".format(dgs); // fails void delegate(void*)[] dgs2 = [null, null, null, null]; //dgs.writeln; works //auto s = "%(%s %)".format(dgs); // works moveAll(dgs, dgs2); move(dgs.front, dgs2.front); move(dg, dg2); dg2(null); --
