Re:What every compiler writer should know about programmers ...
by AntonErtl on Sunday March 06, 2016 @05:35AM
(#11233209)
The point of my posting was that you don't need "optimizations" to optimize away redundant bounds checks, optimization* is able to do it just fine. Sorry if I did not get that across clearly. What does your "No, it would not" refer to?
For your example, the Pascal code (at least, I hope this is Pascal; it has been a while since I wrote any):
is equivalent to the C code: A good Pascal compiler, like a good C compiler, would optimise away that second boundary check and the call to RuntimeAbort. Neither compiler is allowed to optimise away the first check.