Regarding this: http://d.puremagic.com/issues/show_bug.cgi?id=790
I submit that nested functions should be exempt from the usual sequential visibility rules. (Therefore, mutually recursive nested functions would become possible.) Or at the very *least*, this horrific C-like workaround should be possible: void foo() { void b(); void a() {...}; void b() {...}; } ...Flame away! ;)