Sample code: https://godbolt.org/z/bW71vGW1G ```cpp #include <iostream> class Test { private: unsigned A_: 1; unsigned : 0; public: inline Test() : A_(0) { } bool operator==(const Test& rhs) const noexcept = default; }; int main() { Test a, b; std::cout << unsigned(a == b) << '\n'; } ``` Versions prior to 14 do not crash but result is incorrect (and it does not look to me like something that should cause undefined behaviour)