[libcxx] Fix deprecation warning by suppressing deprecated around
authorzoecarver <z.zoelec2@gmail.com>
Sat, 23 May 2020 21:32:12 +0000 (14:32 -0700)
committerzoecarver <z.zoelec2@gmail.com>
Sat, 23 May 2020 21:33:10 +0000 (14:33 -0700)
__test_has_construct.

In C++17 some tests started failing after a521532aa16df2c06c91488f2a4e787586f0a611. This fixes those errors by suppressing the deprecation warning when calling `construct` in `__test_has_construct`. This is the same solution as `__has_destroy_test` already uses.

Reviewers: ldionne, #libc!

Subscribers: dexonsmith, libcxx-commits

Tags: #libc

Differential Revision: https://reviews.llvm.org/D80481

libcxx/include/memory

index 54aeab6..b1abfac 100644 (file)
@@ -1352,9 +1352,12 @@ struct __has_allocate_hint
 
 #endif  // _LIBCPP_CXX03_LANG
 
+_LIBCPP_SUPPRESS_DEPRECATED_PUSH
 template <class _Alloc, class ..._Args,
     class = decltype(_VSTD::declval<_Alloc>().construct(_VSTD::declval<_Args>()...))>
 static true_type __test_has_construct(int);
+_LIBCPP_SUPPRESS_DEPRECATED_POP
+
 template <class _Alloc, class...>
 static false_type __test_has_construct(...);