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.

From-SVN: r277301
This commit is contained in:
Jonathan Wakely 2019-10-22 22:48:53 +01:00 committed by Jonathan Wakely
parent 2cae56bd61
commit 9e1f9bc544
3 changed files with 9 additions and 0 deletions

View File

@ -1,5 +1,8 @@
2019-10-22 Jonathan Wakely <jwakely@redhat.com>
* include/bits/memoryfwd.h (uses_allocator): Do not declare for C++98.
* testsuite/17_intro/names.cc: Check uses_allocator in C++98.
* include/bits/alloc_traits.h
(allocator_traits<allocator<T>>::allocate): Ignore hint for C++20.
(allocator_traits<allocator<T>>::construct): Perform placement new

View File

@ -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

View File

@ -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 (