DMD 2.060: enum E{ v } template Seq(T...){ alias T Seq; } int foo(){ E e; final switch(e){ if(e) case E.v: return 0; } final switch(e) foreach(x;Seq!(E.v)) case x: return 0; } Error: function foo no return exp; or assert(0); at end of function The code should compile.
no more bad diagnostic since 2.069