On 4/24/08, Robert C. Seacord <[EMAIL PROTECTED]> wrote:
> If you are referring to VU#694123, this refers to an optimization that
> removes checks pointer arithmetic wrapping.  The optimization doesn't
> actually eliminate the wrapping behavior; this still occurs.  It does,
> however, eliminate certain kinds of checks (that depend upon undefined
> behavior).

How can you hold the compiler responsible for code that depends on
undefined behavior?  The behavior is undefined, therefore you CANNOT
depend on it.


If you buy a hammer that says on it "for use in hammering nails," and
you use it to hammer in a screw, and it fails miserably (as hammering
screws is undefined behavior), is it the hammer manufacturer's fault
for not telling you about every single possible scenario in which a
hammer cannot be used?

Reply via email to