The r16-3435-gbbc0e70b610f19 change (for LWG 4294) needs to be applied to the debug mode __gnu_debug::bitset as well as the normal one.
libstdc++-v3/ChangeLog: PR libstdc++/121046 * include/debug/bitset (bitset(const CharT*, ...)): Add constraints on CharT type. --- Tested x86_64-linux. Pushed to trunk. libstdc++-v3/include/debug/bitset | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/libstdc++-v3/include/debug/bitset b/libstdc++-v3/include/debug/bitset index e4d3e6619c96..2f4bab846397 100644 --- a/libstdc++-v3/include/debug/bitset +++ b/libstdc++-v3/include/debug/bitset @@ -179,7 +179,13 @@ namespace __debug bitset(const _Base& __x) : _Base(__x) { } #if __cplusplus >= 201103L - template<typename _CharT> + // _GLIBCXX_RESOLVE_LIB_DEFECTS + // 4294. bitset(const CharT*) constructor needs to be constrained + template<typename _CharT, + typename = _Require<is_trivially_copyable<_CharT>, + is_standard_layout<_CharT>, + is_trivially_default_constructible<_CharT>, + __not_<is_array<_CharT>>>> _GLIBCXX23_CONSTEXPR explicit bitset(const _CharT* __str, -- 2.51.0