http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51379
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org, | |jason at gcc dot gnu.org --- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-12-01 13:58:29 UTC --- I wonder about the C++11 wording though, in C++03 it said: "The reinterpret_cast operator shall not cast away constness. [Note: see 5.2.11 for the definition of ‘‘casting away constness’’. Subject to the restrictions in this section, an expression may be cast to its own type using a reinterpret_cast operator. ]" but in C++11: "The reinterpret_cast operator shall not cast away constness (5.2.11). An expression of integral, enumeration, pointer, or pointer-to-member type can be explicitly converted to its own type; such a cast yields the value of its operand." For the latter wording it isn't obvious if the second sentence is subject to the other restrictions or not.