Are situations like this, that are potential signs of bugs/mistakes, worth reporting with warnings? int foo() { // Unconditional 'break' within a loop: foreach (immutable _; 0 .. 10) { //... break; } // Unconditional 'return' within a loop: foreach (immutable _; 0 .. 10) { //... return 0; } assert(0); } Bye, bearophile