* include/bits/memoryfwd.h (uses_allocator): Do not declare for C++98.
        * testsuite/17_intro/names.cc: Check uses_allocator in C++98.

Tested powerpc64le-linux, committed to trunk.

This should be backported too, as it should never have been declared
for C++98.

commit cdbab4a65ff6fdbe44196a5903b27d06075e60e5
Author: Jonathan Wakely <jwak...@redhat.com>
Date:   Tue Oct 22 22:39:16 2019 +0100

    Do not declare std::uses_allocator before C++11
    
            * include/bits/memoryfwd.h (uses_allocator): Do not declare for 
C++98.
            * testsuite/17_intro/names.cc: Check uses_allocator in C++98.

diff --git a/libstdc++-v3/include/bits/memoryfwd.h 
b/libstdc++-v3/include/bits/memoryfwd.h
index d42eabeceb8..6542adc1cdd 100644
--- a/libstdc++-v3/include/bits/memoryfwd.h
+++ b/libstdc++-v3/include/bits/memoryfwd.h
@@ -68,9 +68,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
     class allocator<void>;
 #endif
 
+#if __cplusplus >= 201103L
   /// Declare uses_allocator so it can be specialized in \<queue\> etc.
   template<typename, typename>
     struct uses_allocator;
+#endif
 
   /// @} group memory
 
diff --git a/libstdc++-v3/testsuite/17_intro/names.cc 
b/libstdc++-v3/testsuite/17_intro/names.cc
index 3d6148fa0e8..81a1d6fdf46 100644
--- a/libstdc++-v3/testsuite/17_intro/names.cc
+++ b/libstdc++-v3/testsuite/17_intro/names.cc
@@ -103,6 +103,10 @@
 
 #define tmp (
 
+#if __cplusplus < 201103L
+#define uses_allocator  (
+#endif
+
 #if __cplusplus < 201703L
 // <charconv> defines to_chars_result::ptr and to_chars_result::ec
 #define ec (

Reply via email to