On Thursday, 31 July 2014 at 19:54:47 UTC, Jonathan M Davis wrote:
Then the HALT instruction is never hit. The compiler would have to be able to prove that reaching the HALT instruction was impossible in order to remove it […]
Well, no, as the portion of the spec Walter quoted specifically states that the compiler can *assume* the assert(0) to be unreachable. If you can assume something, you don't have to prove it any longer for any sane definition of "assume".
If this is not something we want, we need to fix the spec instead of trying to argue around the problem.
David