[Bug c/17665] wrong code with -O2
davids at webmaster dot com
gcc-bugzilla@gcc.gnu.org
Sat Sep 25 05:41:00 GMT 2004
------- Additional Comments From davids at webmaster dot com 2004-09-25 05:41 -------
I am perfectly willing to entertain the possibility that I am being dense or
misguided, but we're talking about 'void *' here. You can't get a 'void *' by
taking the address of a 'void' and you can't dereference a 'void *' to get
a 'void'. The only use of 'void *' is for type aliasing.
If you cannot alias at all without '-fno-strict-aliasing', that would imply
that you can do *nothing* with a 'void *' without defining it. That, obviously,
can't be right.
The documentation for '-fstrict-aliasing' talks about an object of one type
being at the same address as an object of another type. But 'void' is not a
type of object, so I don't see that I'm violating aliasing rules.
DS
--
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |UNCONFIRMED
Resolution|INVALID |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17665
More information about the Gcc-bugs
mailing list