https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99637
m.cencora at gmail dot com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |m.cencora at gmail dot com --- Comment #8 from m.cencora at gmail dot com --- I think that gcc is incorrect here, because the standard says: "Each bit of the value representation of the result is equal to the corresponding bit in the object representation of from." Padding bits are part of object representation, so if padding bits are properly initialized in source object (which is the case here), the values of padding bits should become a part of value representation of destination object. Also when reading the proposal p0476r2 it is clearly stated that bit_cast is suppose to be typesafe and constexpr-compatible alternative to memcpy (which by definition copies padding bits as is).