https://gcc.gnu.org/g:46d68bc90688745fc9f25795c371ecaf21e18b56

commit r13-8943-g46d68bc90688745fc9f25795c371ecaf21e18b56
Author: Jonathan Wakely <jwak...@redhat.com>
Date:   Wed Jul 24 11:32:22 2024 +0100

    libstdc++: Fix std::vector<bool> for -std=gnu++14 -fconcepts [PR116070]
    
    This questionable combination of flags causes a number of errors. This
    one in std::vector<bool> needs to be fixed in the gcc-13 branch so I'm
    committing it separately to simplify backporting.
    
    libstdc++-v3/ChangeLog:
    
            PR libstdc++/116070
            * include/bits/stl_bvector.h: Check feature test macro before
            using is_default_constructible_v.
    
    (cherry picked from commit 5fc9c40fea2481e56bf7bcc994cb40c71e28abb8)

Diff:
---
 libstdc++-v3/include/bits/stl_bvector.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libstdc++-v3/include/bits/stl_bvector.h 
b/libstdc++-v3/include/bits/stl_bvector.h
index e18de7c62aa2..63e416053e0f 100644
--- a/libstdc++-v3/include/bits/stl_bvector.h
+++ b/libstdc++-v3/include/bits/stl_bvector.h
@@ -593,7 +593,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
        _GLIBCXX20_CONSTEXPR
        _Bvector_impl() _GLIBCXX_NOEXCEPT_IF(
          is_nothrow_default_constructible<_Bit_alloc_type>::value)
-#if __cpp_concepts
+#if __cpp_concepts && __cpp_lib_type_trait_variable_templates
        requires is_default_constructible_v<_Bit_alloc_type>
 #endif
        : _Bit_alloc_type()

Reply via email to