https://gcc.gnu.org/g:dd08cdccc36d084eda0e2748c772f6bf9a7f412f

commit r15-5031-gdd08cdccc36d084eda0e2748c772f6bf9a7f412f
Author: Jonathan Wakely <jwak...@redhat.com>
Date:   Fri Nov 1 10:09:55 2024 +0000

    libstdc++: Define __is_pair variable template for C++11
    
    libstdc++-v3/ChangeLog:
    
            * include/bits/stl_pair.h (__is_pair): Define for C++11 and
            C++14 as well.

Diff:
---
 libstdc++-v3/include/bits/stl_pair.h | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/libstdc++-v3/include/bits/stl_pair.h 
b/libstdc++-v3/include/bits/stl_pair.h
index e92fcad2d660..527fb9105f0b 100644
--- a/libstdc++-v3/include/bits/stl_pair.h
+++ b/libstdc++-v3/include/bits/stl_pair.h
@@ -1189,12 +1189,18 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _Tp1, typename _Tp2>
     inline constexpr size_t tuple_size_v<const pair<_Tp1, _Tp2>> = 2;
+#endif
 
+#if __cplusplus >= 201103L
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wc++14-extensions" // variable templates
+#pragma GCC diagnostic ignored "-Wc++17-extensions" // inline variables
   template<typename _Tp>
     inline constexpr bool __is_pair = false;
 
   template<typename _Tp, typename _Up>
     inline constexpr bool __is_pair<pair<_Tp, _Up>> = true;
+#pragma GCC diagnostic pop
 #endif
 
   /// @cond undocumented

Reply via email to