[Bug tree-optimization/61502] == comparison on "one-past" pointer gives wrong result
joseph at codesourcery dot com
gcc-bugzilla@gcc.gnu.org
Tue Oct 21 23:17:00 GMT 2014
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61502
--- Comment #7 from joseph at codesourcery dot com <joseph at codesourcery dot com> ---
On Tue, 21 Oct 2014, Keith.S.Thompson at gmail dot com wrote:
> their last-stored values. Furthermore, even if relocating objects so
> they're no long adjacent is permitted by the language, I don't believe
> gcc (or the code that it generates) is actually doing so in this case.
Really, it's a bad idea to apply concepts such as "actually doing so" to
understanding the semantics of C, specified as a high-level language.
"happens to immediately follow the first array object in the address
space" in the high-level language need not satisfy any particular rules
you might expect from thinking of C as relating to particular hardware,
only the rules that can be deduced from the C standard (which as far as I
can tell, do not say that "follows" is constant just because the addresses
of the two objects in question are constant - or anything else such as
that you can't have x + 1 == y and y + 1 == x, which you might expect from
relating things to hardware rather than to standard requirements).
More information about the Gcc-bugs
mailing list