Am 29.11.19 um 12:37 schrieb Jonathan Wakely: > On Fri, 29 Nov 2019 at 09:18, Klaus Doldinger > <klaus.doldinger64@xxxxxxxxx> wrote: >> >> In C++20 bit-field initializer are possible. But this feature seems >> impossible to use with std::byte. >> >> struct Test { >> std::byte a : 2 = std::byte{0}; // NOK >> uint8_t b : 2 = 0; // OK >> }; >> >> Is this intentional or a bug in g++-10 (the version I'm using). > > It's a bug (and obviously applies to any scoped enumeration, not just > std::byte). > > enum class byte : unsigned char { }; > using uint8_t = unsigned char; > > struct Test > { > byte a : 2 = byte{0}; // NOK > uint8_t b : 2 = 0; // OK > }; > > I assume it simply hasn't been implemented yet. Could you please > report it to bugzilla? > Done: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92732