https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578

--- Comment #34 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Goswin von Brederlow from comment #29)
> There is no garantee in the C standard that '(type *)CONSTANT' will actually
> point to the hardware address 'CONSTANT'. It's just how gcc happens to do it
> in most cases. So no, your code is not fine. It is fragile. It relies on
> implementation details of gcc. But lets not argue about that.

Actually, lets. It relies on guaranteed behaviour of GCC:
https://gcc.gnu.org/onlinedocs/gcc/Arrays-and-pointers-implementation.html
That's not going to change, and neither is the fact that the Linux kernel
depends on implementation-defined properties of GCC (where
"implementation-defined" is used in the formal sense, not "just an
implementation detail that might change tomorrow").

Reply via email to