https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114536
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2024-03-31 Ever confirmed|0 |1 --- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Note you can't compare against clang though: /opt/compiler-explorer/gcc-snapshot/lib/gcc/x86_64-linux-gnu/14.0.1/../../../../include/c++/14.0.1/bit:94:14: note: constexpr bit_cast involving bit-field is not yet supported But anyways with the padding bit. With signed char instead of unsigned char, GCC gives: ``` /opt/compiler-explorer/gcc-trunk-20240331/include/c++/14.0.1/bit:94:33: error: '__builtin_bit_cast' accessing uninitialized byte at offset 0 ``` That is correct for that but in the case of unsigned char (or std::byte).