summaryrefslogtreecommitdiffstats
path: root/libcxx/include/utility
diff options
context:
space:
mode:
authorEric Fiselier <eric@efcs.ca>2016-10-16 02:51:50 +0000
committerEric Fiselier <eric@efcs.ca>2016-10-16 02:51:50 +0000
commit50253ed1c67b75c71c8ec2d24ed915c032b11822 (patch)
tree95aa7eb8def3b368a026bf4ff96322688bad8582 /libcxx/include/utility
parent9c737fddba93bce4127dbed4fa2a4440414c1afb (diff)
downloadbcm5719-llvm-50253ed1c67b75c71c8ec2d24ed915c032b11822.tar.gz
bcm5719-llvm-50253ed1c67b75c71c8ec2d24ed915c032b11822.zip
Update issue status for LWG 2744
llvm-svn: 284322
Diffstat (limited to 'libcxx/include/utility')
-rw-r--r--libcxx/include/utility18
1 files changed, 14 insertions, 4 deletions
diff --git a/libcxx/include/utility b/libcxx/include/utility
index cfab350cb83..5e555065622 100644
--- a/libcxx/include/utility
+++ b/libcxx/include/utility
@@ -928,10 +928,20 @@ inline in_place_tag in_place(__in_place_index_tag<_Nx>) {
return in_place_tag(__in_place_tag{});
}
-template <class _Tp> struct __is_inplace_type : false_type {};
-template <> struct __is_inplace_type<in_place_t> : true_type {};
-template <class _Tp> struct __is_inplace_type<in_place_type_t<_Tp>> : true_type {};
-template <size_t _Idx> struct __is_inplace_type<in_place_index_t<_Idx>> : true_type {};
+template <class _Tp> struct __is_inplace_tag_imp : false_type {};
+template <> struct __is_inplace_tag_imp<in_place_tag(__in_place_tag)> : true_type {};
+template <class _Tp> struct __is_inplace_tag_imp<in_place_tag(__in_place_type_tag<_Tp>)> : true_type {};
+template <size_t _Idx> struct __is_inplace_tag_imp<in_place_tag(__in_place_index_tag<_Idx>)> : true_type {};
+
+template <class _Tp>
+using __is_inplace_tag = __is_inplace_tag_imp<remove_pointer_t<decay_t<_Tp>>>;
+
+template <class _Tp> struct __is_inplace_type_tag_imp : false_type {};
+template <class _Tp> struct __is_inplace_type_tag_imp<in_place_tag(__in_place_type_tag<_Tp>)> : true_type {};
+
+template <class _Tp>
+using __is_inplace_type_tag = __is_inplace_type_tag_imp<remove_pointer_t<decay_t<_Tp>>>;
+
#endif // _LIBCPP_STD_VER > 14
OpenPOWER on IntegriCloud