aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/cxxsupp/libcxxcuda11/patches/67-uninitialized-algorithms.patch
blob: 0f255818a06fb91ad8bfa44e4d54861d57804579 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
diff --git a/include/__memory/uninitialized_algorithms.h b/include/__memory/uninitialized_algorithms.h
index 2b68df8..058ff46 100644
--- a/include/__memory/uninitialized_algorithms.h
+++ b/include/__memory/uninitialized_algorithms.h
@@ -566,6 +566,7 @@ struct __allocator_has_trivial_copy_construct : _Not<__has_construct<_Alloc, _Ty
 template <class _Type>
 struct __allocator_has_trivial_copy_construct<allocator<_Type>, _Type> : true_type {};
 
+#ifndef __CUDACC__
 template <class _Alloc,
           class _In,
           class _RawTypeIn = __remove_const_t<_In>,
@@ -589,6 +590,7 @@ __uninitialized_allocator_copy_impl(_Alloc&, _In* __first1, _In* __last1, _Out*
     return std::copy(__first1, __last1, const_cast<_RawTypeIn*>(__first2));
   }
 }
+#endif // __CUDACC__
 
 template <class _Alloc, class _Iter1, class _Sent1, class _Iter2>
 _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 _Iter2 __uninitialized_allocator_copy(_Alloc& __alloc, _Iter1 __first1, _Sent1 __last1, _Iter2 __first2) {
@@ -629,7 +631,7 @@ struct __allocator_has_trivial_move_construct : _Not<__has_construct<_Alloc, _Ty
 template <class _Type>
 struct __allocator_has_trivial_move_construct<allocator<_Type>, _Type> : true_type {};
 
-#ifndef _LIBCPP_COMPILER_GCC
+#if !defined(_LIBCPP_COMPILER_GCC) && !defined(__CUDACC__)
 template <
     class _Alloc,
     class _Iter1,
@@ -650,7 +652,7 @@ __uninitialized_allocator_move_if_noexcept(_Alloc&, _Iter1 __first1, _Iter1 __la
     return std::move(__first1, __last1, __first2);
   }
 }
-#endif // _LIBCPP_COMPILER_GCC
+#endif // !defined(_LIBCPP_COMPILER_GCC) && !defined(__CUDACC__)
 
 _LIBCPP_END_NAMESPACE_STD