summaryrefslogtreecommitdiffstats
path: root/libcxx/test/utilities/meta
diff options
context:
space:
mode:
authorHoward Hinnant <hhinnant@apple.com>2010-05-11 21:36:01 +0000
committerHoward Hinnant <hhinnant@apple.com>2010-05-11 21:36:01 +0000
commit5b08a8a43254ed30bd953e869b0fd9fc1e8b82d0 (patch)
tree9e474cfa73c5c4fc9ceafa2f9bb651c8492a3204 /libcxx/test/utilities/meta
parent0547ad38e334146599521e455d0d6f83a117a60e (diff)
downloadbcm5719-llvm-5b08a8a43254ed30bd953e869b0fd9fc1e8b82d0.tar.gz
bcm5719-llvm-5b08a8a43254ed30bd953e869b0fd9fc1e8b82d0.zip
Wiped out some non-ascii characters that snuck into the copyright.
llvm-svn: 103516
Diffstat (limited to 'libcxx/test/utilities/meta')
-rw-r--r--libcxx/test/utilities/meta/meta.hel/integral_constant.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.rel/is_base_of.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.rel/is_convertible.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.rel/is_explicitly_convertible.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.rel/is_same.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.rqmts/nothing_to_do.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.arr/remove_all_extents.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.arr/remove_extent.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_const.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_cv.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_volatile.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_const.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_cv.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_volatile.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.other/aligned_storage.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.other/common_type.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.other/conditional.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.other/decay.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.other/enable_if.fail.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.other/enable_if.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.other/result_of.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.other/underlying_type.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.ptr/add_pointer.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.ptr/remove_pointer.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.ref/add_lvalue_ref.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_signed.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_unsigned.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.trans/nothing_to_do.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.type.synop/nothing_to_do.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.cat/array.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.cat/class.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.cat/enum.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.cat/floating_point.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.cat/function.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.cat/integral.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.cat/lvalue_ref.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.cat/member_function_pointer.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.cat/member_object_pointer.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.cat/pointer.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.cat/union.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.cat/void.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.comp/array.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.comp/class.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.comp/enum.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.comp/floating_point.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.comp/function.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.comp/integral.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.comp/lvalue_ref.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.comp/member_function_pointer.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.comp/member_object_pointer.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.comp/pointer.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.comp/union.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.comp/void.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/alignment_of.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/extent.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_copy_assign.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_copy_constructor.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_default_constructor.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_move_assign.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_move_constructor.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_copy_assign.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_copy_constructor.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_default_constructor.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_move_assign.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_move_constructor.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_copy_assign.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_copy_constructor.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_default_constructor.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_destructor.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_move_assign.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_move_constructor.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_virtual_destructor.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_abstract.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_const.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_constructible.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_empty.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_literal_type.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_nothrow_constructible.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_pod.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_polymorphic.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_signed.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_standard_layout.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_trivial.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_trivialially_copyable.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_unsigned.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_volatile.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/meta.unary.prop/rank.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/meta.unary/nothing_to_do.pass.cpp2
-rw-r--r--libcxx/test/utilities/meta/version.pass.cpp2
93 files changed, 93 insertions, 93 deletions
diff --git a/libcxx/test/utilities/meta/meta.hel/integral_constant.pass.cpp b/libcxx/test/utilities/meta/meta.hel/integral_constant.pass.cpp
index f00a1f64f29..f963769d9c0 100644
--- a/libcxx/test/utilities/meta/meta.hel/integral_constant.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.hel/integral_constant.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // integral_constant #include <type_traits> int main() { typedef std::integral_constant<int, 5> _5; static_assert(_5::value == 5, ""); static_assert((std::is_same<_5::value_type, int>::value), ""); static_assert((std::is_same<_5::type, _5>::value), ""); static_assert(std::false_type::value == false, ""); static_assert((std::is_same<std::false_type::value_type, bool>::value), ""); static_assert((std::is_same<std::false_type::type, std::false_type>::value), ""); static_assert(std::true_type::value == true, ""); static_assert((std::is_same<std::true_type::value_type, bool>::value), ""); static_assert((std::is_same<std::true_type::type, std::true_type>::value), ""); std::false_type f1; std::false_type f2 = f1; std::true_type t1; std::true_type t2 = t1; } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // integral_constant #include <type_traits> int main() { typedef std::integral_constant<int, 5> _5; static_assert(_5::value == 5, ""); static_assert((std::is_same<_5::value_type, int>::value), ""); static_assert((std::is_same<_5::type, _5>::value), ""); static_assert(std::false_type::value == false, ""); static_assert((std::is_same<std::false_type::value_type, bool>::value), ""); static_assert((std::is_same<std::false_type::type, std::false_type>::value), ""); static_assert(std::true_type::value == true, ""); static_assert((std::is_same<std::true_type::value_type, bool>::value), ""); static_assert((std::is_same<std::true_type::type, std::true_type>::value), ""); std::false_type f1; std::false_type f2 = f1; std::true_type t1; std::true_type t2 = t1; } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.rel/is_base_of.pass.cpp b/libcxx/test/utilities/meta/meta.rel/is_base_of.pass.cpp
index 7db7be06028..319fb6cceae 100644
--- a/libcxx/test/utilities/meta/meta.rel/is_base_of.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.rel/is_base_of.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_base_of #include <type_traits> template <class T, class U> void test_is_base_of() { static_assert((std::is_base_of<T, U>::value), ""); static_assert((std::is_base_of<const T, U>::value), ""); static_assert((std::is_base_of<T, const U>::value), ""); static_assert((std::is_base_of<const T, const U>::value), ""); } template <class T, class U> void test_is_not_base_of() { static_assert((!std::is_base_of<T, U>::value), ""); } struct B {}; struct B1 : B {}; struct B2 : B {}; struct D : private B1, private B2 {}; int main() { test_is_base_of<B, D>(); test_is_base_of<B1, D>(); test_is_base_of<B2, D>(); test_is_base_of<B, B1>(); test_is_base_of<B, B2>(); test_is_base_of<B, B>(); test_is_not_base_of<D, B>(); test_is_not_base_of<B&, D&>(); test_is_not_base_of<B[3], D[3]>(); test_is_not_base_of<int, int>(); test_is_not_base_of<int, int>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_base_of #include <type_traits> template <class T, class U> void test_is_base_of() { static_assert((std::is_base_of<T, U>::value), ""); static_assert((std::is_base_of<const T, U>::value), ""); static_assert((std::is_base_of<T, const U>::value), ""); static_assert((std::is_base_of<const T, const U>::value), ""); } template <class T, class U> void test_is_not_base_of() { static_assert((!std::is_base_of<T, U>::value), ""); } struct B {}; struct B1 : B {}; struct B2 : B {}; struct D : private B1, private B2 {}; int main() { test_is_base_of<B, D>(); test_is_base_of<B1, D>(); test_is_base_of<B2, D>(); test_is_base_of<B, B1>(); test_is_base_of<B, B2>(); test_is_base_of<B, B>(); test_is_not_base_of<D, B>(); test_is_not_base_of<B&, D&>(); test_is_not_base_of<B[3], D[3]>(); test_is_not_base_of<int, int>(); test_is_not_base_of<int, int>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.rel/is_convertible.pass.cpp b/libcxx/test/utilities/meta/meta.rel/is_convertible.pass.cpp
index 379f1eed041..96c8a5e8ac2 100644
--- a/libcxx/test/utilities/meta/meta.rel/is_convertible.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.rel/is_convertible.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_convertible #include <type_traits> typedef void Function(); typedef char Array[1]; int main() { { static_assert(( std::is_convertible<void, void>::value), ""); static_assert(( std::is_convertible<const void, void>::value), ""); static_assert(( std::is_convertible<void, const void>::value), ""); static_assert(( std::is_convertible<const void, const void>::value), ""); static_assert((!std::is_convertible<void, Function>::value), ""); static_assert((!std::is_convertible<const void, Function>::value), ""); static_assert((!std::is_convertible<void, Function&>::value), ""); static_assert((!std::is_convertible<const void, Function&>::value), ""); static_assert((!std::is_convertible<void, Function*>::value), ""); static_assert((!std::is_convertible<void, Function* const>::value), ""); static_assert((!std::is_convertible<const void, Function*>::value), ""); static_assert((!std::is_convertible<const void, Function*const >::value), ""); static_assert((!std::is_convertible<void, Array>::value), ""); static_assert((!std::is_convertible<void, const Array>::value), ""); static_assert((!std::is_convertible<const void, Array>::value), ""); static_assert((!std::is_convertible<const void, const Array>::value), ""); static_assert((!std::is_convertible<void, Array&>::value), ""); static_assert((!std::is_convertible<void, const Array&>::value), ""); static_assert((!std::is_convertible<const void, Array&>::value), ""); static_assert((!std::is_convertible<const void, const Array&>::value), ""); static_assert((!std::is_convertible<void, char>::value), ""); static_assert((!std::is_convertible<void, const char>::value), ""); static_assert((!std::is_convertible<const void, char>::value), ""); static_assert((!std::is_convertible<const void, const char>::value), ""); static_assert((!std::is_convertible<void, char&>::value), ""); static_assert((!std::is_convertible<void, const char&>::value), ""); static_assert((!std::is_convertible<const void, char&>::value), ""); static_assert((!std::is_convertible<const void, const char&>::value), ""); static_assert((!std::is_convertible<void, char*>::value), ""); static_assert((!std::is_convertible<void, const char*>::value), ""); static_assert((!std::is_convertible<const void, char*>::value), ""); static_assert((!std::is_convertible<const void, const char*>::value), ""); } { static_assert((!std::is_convertible<Function, void>::value), ""); static_assert((!std::is_convertible<Function, const void>::value), ""); static_assert((!std::is_convertible<Function, Function>::value), ""); static_assert((!std::is_convertible<Function, Function&>::value), ""); static_assert((!std::is_convertible<Function, Function&>::value), ""); static_assert(( std::is_convertible<Function, Function*>::value), ""); static_assert(( std::is_convertible<Function, Function* const>::value), ""); static_assert((!std::is_convertible<Function, Array>::value), ""); static_assert((!std::is_convertible<Function, const Array>::value), ""); static_assert((!std::is_convertible<Function, Array&>::value), ""); static_assert((!std::is_convertible<Function, const Array&>::value), ""); static_assert((!std::is_convertible<Function, char>::value), ""); static_assert((!std::is_convertible<Function, const char>::value), ""); static_assert((!std::is_convertible<Function, char&>::value), ""); static_assert((!std::is_convertible<Function, const char&>::value), ""); static_assert((!std::is_convertible<Function, char*>::value), ""); static_assert((!std::is_convertible<Function, const char*>::value), ""); } { static_assert((!std::is_convertible<Function&, void>::value), ""); static_assert((!std::is_convertible<Function&, const void>::value), ""); static_assert((!std::is_convertible<Function&, Function>::value), ""); static_assert(( std::is_convertible<Function&, Function&>::value), ""); static_assert(( std::is_convertible<Function&, const Function&>::value), ""); static_assert(( std::is_convertible<Function&, Function*>::value), ""); static_assert(( std::is_convertible<Function&, Function* const>::value), ""); static_assert((!std::is_convertible<Function&, Array>::value), ""); static_assert((!std::is_convertible<Function&, const Array>::value), ""); static_assert((!std::is_convertible<Function&, Array&>::value), ""); static_assert((!std::is_convertible<Function&, const Array&>::value), ""); static_assert((!std::is_convertible<Function&, char>::value), ""); static_assert((!std::is_convertible<Function&, const char>::value), ""); static_assert((!std::is_convertible<Function&, char&>::value), ""); static_assert((!std::is_convertible<Function&, const char&>::value), ""); static_assert((!std::is_convertible<Function&, char*>::value), ""); static_assert((!std::is_convertible<Function&, const char*>::value), ""); } { static_assert((!std::is_convertible<Function*, void>::value), ""); static_assert((!std::is_convertible<Function*const, void>::value), ""); static_assert((!std::is_convertible<Function*, const void>::value), ""); static_assert((!std::is_convertible<Function*const, const void>::value), ""); static_assert((!std::is_convertible<Function*, Function>::value), ""); static_assert((!std::is_convertible<Function*const, Function>::value), ""); static_assert((!std::is_convertible<Function*, Function&>::value), ""); static_assert((!std::is_convertible<Function*const, Function&>::value), ""); static_assert(( std::is_convertible<Function*, Function*>::value), ""); static_assert(( std::is_convertible<Function*, Function* const>::value), ""); static_assert(( std::is_convertible<Function*const, Function*>::value), ""); static_assert(( std::is_convertible<Function*const, Function*const >::value), ""); static_assert((!std::is_convertible<Function*, Array>::value), ""); static_assert((!std::is_convertible<Function*, const Array>::value), ""); static_assert((!std::is_convertible<Function*const, Array>::value), ""); static_assert((!std::is_convertible<Function*const, const Array>::value), ""); static_assert((!std::is_convertible<Function*, Array&>::value), ""); static_assert((!std::is_convertible<Function*, const Array&>::value), ""); static_assert((!std::is_convertible<Function*const, Array&>::value), ""); static_assert((!std::is_convertible<Function*const, const Array&>::value), ""); static_assert((!std::is_convertible<Function*, char>::value), ""); static_assert((!std::is_convertible<Function*, const char>::value), ""); static_assert((!std::is_convertible<Function*const, char>::value), ""); static_assert((!std::is_convertible<Function*const, const char>::value), ""); static_assert((!std::is_convertible<Function*, char&>::value), ""); static_assert((!std::is_convertible<Function*, const char&>::value), ""); static_assert((!std::is_convertible<Function*const, char&>::value), ""); static_assert((!std::is_convertible<Function*const, const char&>::value), ""); static_assert((!std::is_convertible<Function*, char*>::value), ""); static_assert((!std::is_convertible<Function*, const char*>::value), ""); static_assert((!std::is_convertible<Function*const, char*>::value), ""); static_assert((!std::is_convertible<Function*const, const char*>::value), ""); } { static_assert((!std::is_convertible<Array, void>::value), ""); static_assert((!std::is_convertible<const Array, void>::value), ""); static_assert((!std::is_convertible<Array, const void>::value), ""); static_assert((!std::is_convertible<const Array, const void>::value), ""); static_assert((!std::is_convertible<Array, Function>::value), ""); static_assert((!std::is_convertible<const Array, Function>::value), ""); static_assert((!std::is_convertible<Array, Function&>::value), ""); static_assert((!std::is_convertible<const Array, Function&>::value), ""); static_assert((!std::is_convertible<Array, Function*>::value), ""); static_assert((!std::is_convertible<Array, Function* const>::value), ""); static_assert((!std::is_convertible<const Array, Function*>::value), ""); static_assert((!std::is_convertible<const Array, Function*const >::value), ""); static_assert((!std::is_convertible<Array, Array>::value), ""); static_assert((!std::is_convertible<Array, const Array>::value), ""); static_assert((!std::is_convertible<const Array, Array>::value), ""); static_assert((!std::is_convertible<const Array, const Array>::value), ""); static_assert((!std::is_convertible<Array, Array&>::value), ""); static_assert(( std::is_convertible<Array, const Array&>::value), ""); static_assert((!std::is_convertible<const Array, Array&>::value), ""); static_assert((!std::is_convertible<const Array, const Array&>::value), ""); static_assert((!std::is_convertible<Array, char>::value), ""); static_assert((!std::is_convertible<Array, const char>::value), ""); static_assert((!std::is_convertible<const Array, char>::value), ""); static_assert((!std::is_convertible<const Array, const char>::value), ""); static_assert((!std::is_convertible<Array, char&>::value), ""); static_assert((!std::is_convertible<Array, const char&>::value), ""); static_assert((!std::is_convertible<const Array, char&>::value), ""); static_assert((!std::is_convertible<const Array, const char&>::value), ""); static_assert(( std::is_convertible<Array, char*>::value), ""); static_assert(( std::is_convertible<Array, const char*>::value), ""); static_assert((!std::is_convertible<const Array, char*>::value), ""); static_assert(( std::is_convertible<const Array, const char*>::value), ""); } { static_assert((!std::is_convertible<Array&, void>::value), ""); static_assert((!std::is_convertible<const Array&, void>::value), ""); static_assert((!std::is_convertible<Array&, const void>::value), ""); static_assert((!std::is_convertible<const Array&, const void>::value), ""); static_assert((!std::is_convertible<Array&, Function>::value), ""); static_assert((!std::is_convertible<const Array&, Function>::value), ""); static_assert((!std::is_convertible<Array&, Function&>::value), ""); static_assert((!std::is_convertible<const Array&, Function&>::value), ""); static_assert((!std::is_convertible<Array&, Function*>::value), ""); static_assert((!std::is_convertible<Array&, Function* const>::value), ""); static_assert((!std::is_convertible<const Array&, Function*>::value), ""); static_assert((!std::is_convertible<const Array&, Function*const >::value), ""); static_assert((!std::is_convertible<Array&, Array>::value), ""); static_assert((!std::is_convertible<Array&, const Array>::value), ""); static_assert((!std::is_convertible<const Array&, Array>::value), ""); static_assert((!std::is_convertible<const Array&, const Array>::value), ""); static_assert(( std::is_convertible<Array&, Array&>::value), ""); static_assert(( std::is_convertible<Array&, const Array&>::value), ""); static_assert((!std::is_convertible<const Array&, Array&>::value), ""); static_assert(( std::is_convertible<const Array&, const Array&>::value), ""); static_assert((!std::is_convertible<Array&, char>::value), ""); static_assert((!std::is_convertible<Array&, const char>::value), ""); static_assert((!std::is_convertible<const Array&, char>::value), ""); static_assert((!std::is_convertible<const Array&, const char>::value), ""); static_assert((!std::is_convertible<Array&, char&>::value), ""); static_assert((!std::is_convertible<Array&, const char&>::value), ""); static_assert((!std::is_convertible<const Array&, char&>::value), ""); static_assert((!std::is_convertible<const Array&, const char&>::value), ""); static_assert(( std::is_convertible<Array&, char*>::value), ""); static_assert(( std::is_convertible<Array&, const char*>::value), ""); static_assert((!std::is_convertible<const Array&, char*>::value), ""); static_assert(( std::is_convertible<const Array&, const char*>::value), ""); } { static_assert((!std::is_convertible<char, void>::value), ""); static_assert((!std::is_convertible<const char, void>::value), ""); static_assert((!std::is_convertible<char, const void>::value), ""); static_assert((!std::is_convertible<const char, const void>::value), ""); static_assert((!std::is_convertible<char, Function>::value), ""); static_assert((!std::is_convertible<const char, Function>::value), ""); static_assert((!std::is_convertible<char, Function&>::value), ""); static_assert((!std::is_convertible<const char, Function&>::value), ""); static_assert((!std::is_convertible<char, Function*>::value), ""); static_assert((!std::is_convertible<char, Function* const>::value), ""); static_assert((!std::is_convertible<const char, Function*>::value), ""); static_assert((!std::is_convertible<const char, Function*const >::value), ""); static_assert((!std::is_convertible<char, Array>::value), ""); static_assert((!std::is_convertible<char, const Array>::value), ""); static_assert((!std::is_convertible<const char, Array>::value), ""); static_assert((!std::is_convertible<const char, const Array>::value), ""); static_assert((!std::is_convertible<char, Array&>::value), ""); static_assert((!std::is_convertible<char, const Array&>::value), ""); static_assert((!std::is_convertible<const char, Array&>::value), ""); static_assert((!std::is_convertible<const char, const Array&>::value), ""); static_assert(( std::is_convertible<char, char>::value), ""); static_assert(( std::is_convertible<char, const char>::value), ""); static_assert(( std::is_convertible<const char, char>::value), ""); static_assert(( std::is_convertible<const char, const char>::value), ""); static_assert((!std::is_convertible<char, char&>::value), ""); static_assert(( std::is_convertible<char, const char&>::value), ""); static_assert((!std::is_convertible<const char, char&>::value), ""); static_assert(( std::is_convertible<const char, const char&>::value), ""); static_assert((!std::is_convertible<char, char*>::value), ""); static_assert((!std::is_convertible<char, const char*>::value), ""); static_assert((!std::is_convertible<const char, char*>::value), ""); static_assert((!std::is_convertible<const char, const char*>::value), ""); } { static_assert((!std::is_convertible<char&, void>::value), ""); static_assert((!std::is_convertible<const char&, void>::value), ""); static_assert((!std::is_convertible<char&, const void>::value), ""); static_assert((!std::is_convertible<const char&, const void>::value), ""); static_assert((!std::is_convertible<char&, Function>::value), ""); static_assert((!std::is_convertible<const char&, Function>::value), ""); static_assert((!std::is_convertible<char&, Function&>::value), ""); static_assert((!std::is_convertible<const char&, Function&>::value), ""); static_assert((!std::is_convertible<char&, Function*>::value), ""); static_assert((!std::is_convertible<char&, Function* const>::value), ""); static_assert((!std::is_convertible<const char&, Function*>::value), ""); static_assert((!std::is_convertible<const char&, Function*const >::value), ""); static_assert((!std::is_convertible<char&, Array>::value), ""); static_assert((!std::is_convertible<char&, const Array>::value), ""); static_assert((!std::is_convertible<const char&, Array>::value), ""); static_assert((!std::is_convertible<const char&, const Array>::value), ""); static_assert((!std::is_convertible<char&, Array&>::value), ""); static_assert((!std::is_convertible<char&, const Array&>::value), ""); static_assert((!std::is_convertible<const char&, Array&>::value), ""); static_assert((!std::is_convertible<const char&, const Array&>::value), ""); static_assert(( std::is_convertible<char&, char>::value), ""); static_assert(( std::is_convertible<char&, const char>::value), ""); static_assert(( std::is_convertible<const char&, char>::value), ""); static_assert(( std::is_convertible<const char&, const char>::value), ""); static_assert(( std::is_convertible<char&, char&>::value), ""); static_assert(( std::is_convertible<char&, const char&>::value), ""); static_assert((!std::is_convertible<const char&, char&>::value), ""); static_assert(( std::is_convertible<const char&, const char&>::value), ""); static_assert((!std::is_convertible<char&, char*>::value), ""); static_assert((!std::is_convertible<char&, const char*>::value), ""); static_assert((!std::is_convertible<const char&, char*>::value), ""); static_assert((!std::is_convertible<const char&, const char*>::value), ""); } { static_assert((!std::is_convertible<char*, void>::value), ""); static_assert((!std::is_convertible<const char*, void>::value), ""); static_assert((!std::is_convertible<char*, const void>::value), ""); static_assert((!std::is_convertible<const char*, const void>::value), ""); static_assert((!std::is_convertible<char*, Function>::value), ""); static_assert((!std::is_convertible<const char*, Function>::value), ""); static_assert((!std::is_convertible<char*, Function&>::value), ""); static_assert((!std::is_convertible<const char*, Function&>::value), ""); static_assert((!std::is_convertible<char*, Function*>::value), ""); static_assert((!std::is_convertible<char*, Function* const>::value), ""); static_assert((!std::is_convertible<const char*, Function*>::value), ""); static_assert((!std::is_convertible<const char*, Function*const >::value), ""); static_assert((!std::is_convertible<char*, Array>::value), ""); static_assert((!std::is_convertible<char*, const Array>::value), ""); static_assert((!std::is_convertible<const char*, Array>::value), ""); static_assert((!std::is_convertible<const char*, const Array>::value), ""); static_assert((!std::is_convertible<char*, Array&>::value), ""); static_assert((!std::is_convertible<char*, const Array&>::value), ""); static_assert((!std::is_convertible<const char*, Array&>::value), ""); static_assert((!std::is_convertible<const char*, const Array&>::value), ""); static_assert((!std::is_convertible<char*, char>::value), ""); static_assert((!std::is_convertible<char*, const char>::value), ""); static_assert((!std::is_convertible<const char*, char>::value), ""); static_assert((!std::is_convertible<const char*, const char>::value), ""); static_assert((!std::is_convertible<char*, char&>::value), ""); static_assert((!std::is_convertible<char*, const char&>::value), ""); static_assert((!std::is_convertible<const char*, char&>::value), ""); static_assert((!std::is_convertible<const char*, const char&>::value), ""); static_assert(( std::is_convertible<char*, char*>::value), ""); static_assert(( std::is_convertible<char*, const char*>::value), ""); static_assert((!std::is_convertible<const char*, char*>::value), ""); static_assert(( std::is_convertible<const char*, const char*>::value), ""); } } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_convertible #include <type_traits> typedef void Function(); typedef char Array[1]; int main() { { static_assert(( std::is_convertible<void, void>::value), ""); static_assert(( std::is_convertible<const void, void>::value), ""); static_assert(( std::is_convertible<void, const void>::value), ""); static_assert(( std::is_convertible<const void, const void>::value), ""); static_assert((!std::is_convertible<void, Function>::value), ""); static_assert((!std::is_convertible<const void, Function>::value), ""); static_assert((!std::is_convertible<void, Function&>::value), ""); static_assert((!std::is_convertible<const void, Function&>::value), ""); static_assert((!std::is_convertible<void, Function*>::value), ""); static_assert((!std::is_convertible<void, Function* const>::value), ""); static_assert((!std::is_convertible<const void, Function*>::value), ""); static_assert((!std::is_convertible<const void, Function*const >::value), ""); static_assert((!std::is_convertible<void, Array>::value), ""); static_assert((!std::is_convertible<void, const Array>::value), ""); static_assert((!std::is_convertible<const void, Array>::value), ""); static_assert((!std::is_convertible<const void, const Array>::value), ""); static_assert((!std::is_convertible<void, Array&>::value), ""); static_assert((!std::is_convertible<void, const Array&>::value), ""); static_assert((!std::is_convertible<const void, Array&>::value), ""); static_assert((!std::is_convertible<const void, const Array&>::value), ""); static_assert((!std::is_convertible<void, char>::value), ""); static_assert((!std::is_convertible<void, const char>::value), ""); static_assert((!std::is_convertible<const void, char>::value), ""); static_assert((!std::is_convertible<const void, const char>::value), ""); static_assert((!std::is_convertible<void, char&>::value), ""); static_assert((!std::is_convertible<void, const char&>::value), ""); static_assert((!std::is_convertible<const void, char&>::value), ""); static_assert((!std::is_convertible<const void, const char&>::value), ""); static_assert((!std::is_convertible<void, char*>::value), ""); static_assert((!std::is_convertible<void, const char*>::value), ""); static_assert((!std::is_convertible<const void, char*>::value), ""); static_assert((!std::is_convertible<const void, const char*>::value), ""); } { static_assert((!std::is_convertible<Function, void>::value), ""); static_assert((!std::is_convertible<Function, const void>::value), ""); static_assert((!std::is_convertible<Function, Function>::value), ""); static_assert((!std::is_convertible<Function, Function&>::value), ""); static_assert((!std::is_convertible<Function, Function&>::value), ""); static_assert(( std::is_convertible<Function, Function*>::value), ""); static_assert(( std::is_convertible<Function, Function* const>::value), ""); static_assert((!std::is_convertible<Function, Array>::value), ""); static_assert((!std::is_convertible<Function, const Array>::value), ""); static_assert((!std::is_convertible<Function, Array&>::value), ""); static_assert((!std::is_convertible<Function, const Array&>::value), ""); static_assert((!std::is_convertible<Function, char>::value), ""); static_assert((!std::is_convertible<Function, const char>::value), ""); static_assert((!std::is_convertible<Function, char&>::value), ""); static_assert((!std::is_convertible<Function, const char&>::value), ""); static_assert((!std::is_convertible<Function, char*>::value), ""); static_assert((!std::is_convertible<Function, const char*>::value), ""); } { static_assert((!std::is_convertible<Function&, void>::value), ""); static_assert((!std::is_convertible<Function&, const void>::value), ""); static_assert((!std::is_convertible<Function&, Function>::value), ""); static_assert(( std::is_convertible<Function&, Function&>::value), ""); static_assert(( std::is_convertible<Function&, const Function&>::value), ""); static_assert(( std::is_convertible<Function&, Function*>::value), ""); static_assert(( std::is_convertible<Function&, Function* const>::value), ""); static_assert((!std::is_convertible<Function&, Array>::value), ""); static_assert((!std::is_convertible<Function&, const Array>::value), ""); static_assert((!std::is_convertible<Function&, Array&>::value), ""); static_assert((!std::is_convertible<Function&, const Array&>::value), ""); static_assert((!std::is_convertible<Function&, char>::value), ""); static_assert((!std::is_convertible<Function&, const char>::value), ""); static_assert((!std::is_convertible<Function&, char&>::value), ""); static_assert((!std::is_convertible<Function&, const char&>::value), ""); static_assert((!std::is_convertible<Function&, char*>::value), ""); static_assert((!std::is_convertible<Function&, const char*>::value), ""); } { static_assert((!std::is_convertible<Function*, void>::value), ""); static_assert((!std::is_convertible<Function*const, void>::value), ""); static_assert((!std::is_convertible<Function*, const void>::value), ""); static_assert((!std::is_convertible<Function*const, const void>::value), ""); static_assert((!std::is_convertible<Function*, Function>::value), ""); static_assert((!std::is_convertible<Function*const, Function>::value), ""); static_assert((!std::is_convertible<Function*, Function&>::value), ""); static_assert((!std::is_convertible<Function*const, Function&>::value), ""); static_assert(( std::is_convertible<Function*, Function*>::value), ""); static_assert(( std::is_convertible<Function*, Function* const>::value), ""); static_assert(( std::is_convertible<Function*const, Function*>::value), ""); static_assert(( std::is_convertible<Function*const, Function*const >::value), ""); static_assert((!std::is_convertible<Function*, Array>::value), ""); static_assert((!std::is_convertible<Function*, const Array>::value), ""); static_assert((!std::is_convertible<Function*const, Array>::value), ""); static_assert((!std::is_convertible<Function*const, const Array>::value), ""); static_assert((!std::is_convertible<Function*, Array&>::value), ""); static_assert((!std::is_convertible<Function*, const Array&>::value), ""); static_assert((!std::is_convertible<Function*const, Array&>::value), ""); static_assert((!std::is_convertible<Function*const, const Array&>::value), ""); static_assert((!std::is_convertible<Function*, char>::value), ""); static_assert((!std::is_convertible<Function*, const char>::value), ""); static_assert((!std::is_convertible<Function*const, char>::value), ""); static_assert((!std::is_convertible<Function*const, const char>::value), ""); static_assert((!std::is_convertible<Function*, char&>::value), ""); static_assert((!std::is_convertible<Function*, const char&>::value), ""); static_assert((!std::is_convertible<Function*const, char&>::value), ""); static_assert((!std::is_convertible<Function*const, const char&>::value), ""); static_assert((!std::is_convertible<Function*, char*>::value), ""); static_assert((!std::is_convertible<Function*, const char*>::value), ""); static_assert((!std::is_convertible<Function*const, char*>::value), ""); static_assert((!std::is_convertible<Function*const, const char*>::value), ""); } { static_assert((!std::is_convertible<Array, void>::value), ""); static_assert((!std::is_convertible<const Array, void>::value), ""); static_assert((!std::is_convertible<Array, const void>::value), ""); static_assert((!std::is_convertible<const Array, const void>::value), ""); static_assert((!std::is_convertible<Array, Function>::value), ""); static_assert((!std::is_convertible<const Array, Function>::value), ""); static_assert((!std::is_convertible<Array, Function&>::value), ""); static_assert((!std::is_convertible<const Array, Function&>::value), ""); static_assert((!std::is_convertible<Array, Function*>::value), ""); static_assert((!std::is_convertible<Array, Function* const>::value), ""); static_assert((!std::is_convertible<const Array, Function*>::value), ""); static_assert((!std::is_convertible<const Array, Function*const >::value), ""); static_assert((!std::is_convertible<Array, Array>::value), ""); static_assert((!std::is_convertible<Array, const Array>::value), ""); static_assert((!std::is_convertible<const Array, Array>::value), ""); static_assert((!std::is_convertible<const Array, const Array>::value), ""); static_assert((!std::is_convertible<Array, Array&>::value), ""); static_assert(( std::is_convertible<Array, const Array&>::value), ""); static_assert((!std::is_convertible<const Array, Array&>::value), ""); static_assert((!std::is_convertible<const Array, const Array&>::value), ""); static_assert((!std::is_convertible<Array, char>::value), ""); static_assert((!std::is_convertible<Array, const char>::value), ""); static_assert((!std::is_convertible<const Array, char>::value), ""); static_assert((!std::is_convertible<const Array, const char>::value), ""); static_assert((!std::is_convertible<Array, char&>::value), ""); static_assert((!std::is_convertible<Array, const char&>::value), ""); static_assert((!std::is_convertible<const Array, char&>::value), ""); static_assert((!std::is_convertible<const Array, const char&>::value), ""); static_assert(( std::is_convertible<Array, char*>::value), ""); static_assert(( std::is_convertible<Array, const char*>::value), ""); static_assert((!std::is_convertible<const Array, char*>::value), ""); static_assert(( std::is_convertible<const Array, const char*>::value), ""); } { static_assert((!std::is_convertible<Array&, void>::value), ""); static_assert((!std::is_convertible<const Array&, void>::value), ""); static_assert((!std::is_convertible<Array&, const void>::value), ""); static_assert((!std::is_convertible<const Array&, const void>::value), ""); static_assert((!std::is_convertible<Array&, Function>::value), ""); static_assert((!std::is_convertible<const Array&, Function>::value), ""); static_assert((!std::is_convertible<Array&, Function&>::value), ""); static_assert((!std::is_convertible<const Array&, Function&>::value), ""); static_assert((!std::is_convertible<Array&, Function*>::value), ""); static_assert((!std::is_convertible<Array&, Function* const>::value), ""); static_assert((!std::is_convertible<const Array&, Function*>::value), ""); static_assert((!std::is_convertible<const Array&, Function*const >::value), ""); static_assert((!std::is_convertible<Array&, Array>::value), ""); static_assert((!std::is_convertible<Array&, const Array>::value), ""); static_assert((!std::is_convertible<const Array&, Array>::value), ""); static_assert((!std::is_convertible<const Array&, const Array>::value), ""); static_assert(( std::is_convertible<Array&, Array&>::value), ""); static_assert(( std::is_convertible<Array&, const Array&>::value), ""); static_assert((!std::is_convertible<const Array&, Array&>::value), ""); static_assert(( std::is_convertible<const Array&, const Array&>::value), ""); static_assert((!std::is_convertible<Array&, char>::value), ""); static_assert((!std::is_convertible<Array&, const char>::value), ""); static_assert((!std::is_convertible<const Array&, char>::value), ""); static_assert((!std::is_convertible<const Array&, const char>::value), ""); static_assert((!std::is_convertible<Array&, char&>::value), ""); static_assert((!std::is_convertible<Array&, const char&>::value), ""); static_assert((!std::is_convertible<const Array&, char&>::value), ""); static_assert((!std::is_convertible<const Array&, const char&>::value), ""); static_assert(( std::is_convertible<Array&, char*>::value), ""); static_assert(( std::is_convertible<Array&, const char*>::value), ""); static_assert((!std::is_convertible<const Array&, char*>::value), ""); static_assert(( std::is_convertible<const Array&, const char*>::value), ""); } { static_assert((!std::is_convertible<char, void>::value), ""); static_assert((!std::is_convertible<const char, void>::value), ""); static_assert((!std::is_convertible<char, const void>::value), ""); static_assert((!std::is_convertible<const char, const void>::value), ""); static_assert((!std::is_convertible<char, Function>::value), ""); static_assert((!std::is_convertible<const char, Function>::value), ""); static_assert((!std::is_convertible<char, Function&>::value), ""); static_assert((!std::is_convertible<const char, Function&>::value), ""); static_assert((!std::is_convertible<char, Function*>::value), ""); static_assert((!std::is_convertible<char, Function* const>::value), ""); static_assert((!std::is_convertible<const char, Function*>::value), ""); static_assert((!std::is_convertible<const char, Function*const >::value), ""); static_assert((!std::is_convertible<char, Array>::value), ""); static_assert((!std::is_convertible<char, const Array>::value), ""); static_assert((!std::is_convertible<const char, Array>::value), ""); static_assert((!std::is_convertible<const char, const Array>::value), ""); static_assert((!std::is_convertible<char, Array&>::value), ""); static_assert((!std::is_convertible<char, const Array&>::value), ""); static_assert((!std::is_convertible<const char, Array&>::value), ""); static_assert((!std::is_convertible<const char, const Array&>::value), ""); static_assert(( std::is_convertible<char, char>::value), ""); static_assert(( std::is_convertible<char, const char>::value), ""); static_assert(( std::is_convertible<const char, char>::value), ""); static_assert(( std::is_convertible<const char, const char>::value), ""); static_assert((!std::is_convertible<char, char&>::value), ""); static_assert(( std::is_convertible<char, const char&>::value), ""); static_assert((!std::is_convertible<const char, char&>::value), ""); static_assert(( std::is_convertible<const char, const char&>::value), ""); static_assert((!std::is_convertible<char, char*>::value), ""); static_assert((!std::is_convertible<char, const char*>::value), ""); static_assert((!std::is_convertible<const char, char*>::value), ""); static_assert((!std::is_convertible<const char, const char*>::value), ""); } { static_assert((!std::is_convertible<char&, void>::value), ""); static_assert((!std::is_convertible<const char&, void>::value), ""); static_assert((!std::is_convertible<char&, const void>::value), ""); static_assert((!std::is_convertible<const char&, const void>::value), ""); static_assert((!std::is_convertible<char&, Function>::value), ""); static_assert((!std::is_convertible<const char&, Function>::value), ""); static_assert((!std::is_convertible<char&, Function&>::value), ""); static_assert((!std::is_convertible<const char&, Function&>::value), ""); static_assert((!std::is_convertible<char&, Function*>::value), ""); static_assert((!std::is_convertible<char&, Function* const>::value), ""); static_assert((!std::is_convertible<const char&, Function*>::value), ""); static_assert((!std::is_convertible<const char&, Function*const >::value), ""); static_assert((!std::is_convertible<char&, Array>::value), ""); static_assert((!std::is_convertible<char&, const Array>::value), ""); static_assert((!std::is_convertible<const char&, Array>::value), ""); static_assert((!std::is_convertible<const char&, const Array>::value), ""); static_assert((!std::is_convertible<char&, Array&>::value), ""); static_assert((!std::is_convertible<char&, const Array&>::value), ""); static_assert((!std::is_convertible<const char&, Array&>::value), ""); static_assert((!std::is_convertible<const char&, const Array&>::value), ""); static_assert(( std::is_convertible<char&, char>::value), ""); static_assert(( std::is_convertible<char&, const char>::value), ""); static_assert(( std::is_convertible<const char&, char>::value), ""); static_assert(( std::is_convertible<const char&, const char>::value), ""); static_assert(( std::is_convertible<char&, char&>::value), ""); static_assert(( std::is_convertible<char&, const char&>::value), ""); static_assert((!std::is_convertible<const char&, char&>::value), ""); static_assert(( std::is_convertible<const char&, const char&>::value), ""); static_assert((!std::is_convertible<char&, char*>::value), ""); static_assert((!std::is_convertible<char&, const char*>::value), ""); static_assert((!std::is_convertible<const char&, char*>::value), ""); static_assert((!std::is_convertible<const char&, const char*>::value), ""); } { static_assert((!std::is_convertible<char*, void>::value), ""); static_assert((!std::is_convertible<const char*, void>::value), ""); static_assert((!std::is_convertible<char*, const void>::value), ""); static_assert((!std::is_convertible<const char*, const void>::value), ""); static_assert((!std::is_convertible<char*, Function>::value), ""); static_assert((!std::is_convertible<const char*, Function>::value), ""); static_assert((!std::is_convertible<char*, Function&>::value), ""); static_assert((!std::is_convertible<const char*, Function&>::value), ""); static_assert((!std::is_convertible<char*, Function*>::value), ""); static_assert((!std::is_convertible<char*, Function* const>::value), ""); static_assert((!std::is_convertible<const char*, Function*>::value), ""); static_assert((!std::is_convertible<const char*, Function*const >::value), ""); static_assert((!std::is_convertible<char*, Array>::value), ""); static_assert((!std::is_convertible<char*, const Array>::value), ""); static_assert((!std::is_convertible<const char*, Array>::value), ""); static_assert((!std::is_convertible<const char*, const Array>::value), ""); static_assert((!std::is_convertible<char*, Array&>::value), ""); static_assert((!std::is_convertible<char*, const Array&>::value), ""); static_assert((!std::is_convertible<const char*, Array&>::value), ""); static_assert((!std::is_convertible<const char*, const Array&>::value), ""); static_assert((!std::is_convertible<char*, char>::value), ""); static_assert((!std::is_convertible<char*, const char>::value), ""); static_assert((!std::is_convertible<const char*, char>::value), ""); static_assert((!std::is_convertible<const char*, const char>::value), ""); static_assert((!std::is_convertible<char*, char&>::value), ""); static_assert((!std::is_convertible<char*, const char&>::value), ""); static_assert((!std::is_convertible<const char*, char&>::value), ""); static_assert((!std::is_convertible<const char*, const char&>::value), ""); static_assert(( std::is_convertible<char*, char*>::value), ""); static_assert(( std::is_convertible<char*, const char*>::value), ""); static_assert((!std::is_convertible<const char*, char*>::value), ""); static_assert(( std::is_convertible<const char*, const char*>::value), ""); } } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.rel/is_explicitly_convertible.pass.cpp b/libcxx/test/utilities/meta/meta.rel/is_explicitly_convertible.pass.cpp
index 8a458855c69..b9d598dfbac 100644
--- a/libcxx/test/utilities/meta/meta.rel/is_explicitly_convertible.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.rel/is_explicitly_convertible.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_explicitly_convertible #include <type_traits> typedef void Function(); typedef char Array[1]; int main() { { static_assert(( std::is_explicitly_convertible<void, void>::value), ""); static_assert(( std::is_explicitly_convertible<const void, void>::value), ""); static_assert(( std::is_explicitly_convertible<void, const void>::value), ""); static_assert(( std::is_explicitly_convertible<const void, const void>::value), ""); static_assert((!std::is_explicitly_convertible<void, Function>::value), ""); static_assert((!std::is_explicitly_convertible<const void, Function>::value), ""); static_assert((!std::is_explicitly_convertible<void, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<const void, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<void, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<void, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<const void, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<const void, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<void, Array>::value), ""); static_assert((!std::is_explicitly_convertible<void, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<const void, Array>::value), ""); static_assert((!std::is_explicitly_convertible<const void, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<void, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<void, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const void, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const void, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<void, char>::value), ""); static_assert((!std::is_explicitly_convertible<void, const char>::value), ""); static_assert((!std::is_explicitly_convertible<const void, char>::value), ""); static_assert((!std::is_explicitly_convertible<const void, const char>::value), ""); static_assert((!std::is_explicitly_convertible<void, char&>::value), ""); static_assert((!std::is_explicitly_convertible<void, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<const void, char&>::value), ""); static_assert((!std::is_explicitly_convertible<const void, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<void, char*>::value), ""); static_assert((!std::is_explicitly_convertible<void, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<const void, char*>::value), ""); static_assert((!std::is_explicitly_convertible<const void, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<Function, void>::value), ""); static_assert((!std::is_explicitly_convertible<Function, const void>::value), ""); static_assert((!std::is_explicitly_convertible<Function, Function>::value), ""); static_assert((!std::is_explicitly_convertible<Function, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<Function, Function&>::value), ""); static_assert(( std::is_explicitly_convertible<Function, Function*>::value), ""); static_assert(( std::is_explicitly_convertible<Function, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<Function, Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function, char>::value), ""); static_assert((!std::is_explicitly_convertible<Function, const char>::value), ""); static_assert((!std::is_explicitly_convertible<Function, char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function, char*>::value), ""); static_assert((!std::is_explicitly_convertible<Function, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<Function&, void>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, const void>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, Function>::value), ""); static_assert(( std::is_explicitly_convertible<Function&, Function&>::value), ""); static_assert(( std::is_explicitly_convertible<Function&, const Function&>::value), ""); static_assert(( std::is_explicitly_convertible<Function&, Function*>::value), ""); static_assert(( std::is_explicitly_convertible<Function&, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, char>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, const char>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, char*>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<Function*, void>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, void>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, const void>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, const void>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, Function>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, Function>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, Function&>::value), ""); static_assert(( std::is_explicitly_convertible<Function*, Function*>::value), ""); static_assert(( std::is_explicitly_convertible<Function*, Function* const>::value), ""); static_assert(( std::is_explicitly_convertible<Function*const, Function*>::value), ""); static_assert(( std::is_explicitly_convertible<Function*const, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<Function*, Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, char>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, const char>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, char>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, const char>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, char*>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, char*>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<Array, void>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, void>::value), ""); static_assert((!std::is_explicitly_convertible<Array, const void>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, const void>::value), ""); static_assert((!std::is_explicitly_convertible<Array, Function>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, Function>::value), ""); static_assert((!std::is_explicitly_convertible<Array, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<Array, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<Array, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<Array, Array>::value), ""); static_assert((!std::is_explicitly_convertible<Array, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, Array>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<Array, Array&>::value), ""); static_assert(( std::is_explicitly_convertible<Array, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Array, char>::value), ""); static_assert((!std::is_explicitly_convertible<Array, const char>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, char>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, const char>::value), ""); static_assert((!std::is_explicitly_convertible<Array, char&>::value), ""); static_assert((!std::is_explicitly_convertible<Array, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, char&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, const char&>::value), ""); static_assert(( std::is_explicitly_convertible<Array, char*>::value), ""); static_assert(( std::is_explicitly_convertible<Array, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, char*>::value), ""); static_assert(( std::is_explicitly_convertible<const Array, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<Array&, void>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, void>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, const void>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, const void>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, Function>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, Function>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<Array&, Array>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, Array>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, const Array>::value), ""); static_assert(( std::is_explicitly_convertible<Array&, Array&>::value), ""); static_assert(( std::is_explicitly_convertible<Array&, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, Array&>::value), ""); static_assert(( std::is_explicitly_convertible<const Array&, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, char>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, const char>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, char>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, const char>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, char&>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, char&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, const char&>::value), ""); static_assert(( std::is_explicitly_convertible<Array&, char*>::value), ""); static_assert(( std::is_explicitly_convertible<Array&, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, char*>::value), ""); static_assert(( std::is_explicitly_convertible<const Array&, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<char, void>::value), ""); static_assert((!std::is_explicitly_convertible<const char, void>::value), ""); static_assert((!std::is_explicitly_convertible<char, const void>::value), ""); static_assert((!std::is_explicitly_convertible<const char, const void>::value), ""); static_assert((!std::is_explicitly_convertible<char, Function>::value), ""); static_assert((!std::is_explicitly_convertible<const char, Function>::value), ""); static_assert((!std::is_explicitly_convertible<char, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<const char, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<char, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<char, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<const char, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<const char, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<char, Array>::value), ""); static_assert((!std::is_explicitly_convertible<char, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<const char, Array>::value), ""); static_assert((!std::is_explicitly_convertible<const char, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<char, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<char, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const char, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const char, const Array&>::value), ""); static_assert(( std::is_explicitly_convertible<char, char>::value), ""); static_assert(( std::is_explicitly_convertible<char, const char>::value), ""); static_assert(( std::is_explicitly_convertible<const char, char>::value), ""); static_assert(( std::is_explicitly_convertible<const char, const char>::value), ""); static_assert((!std::is_explicitly_convertible<char, char&>::value), ""); static_assert(( std::is_explicitly_convertible<char, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<const char, char&>::value), ""); static_assert(( std::is_explicitly_convertible<const char, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<char, char*>::value), ""); static_assert((!std::is_explicitly_convertible<char, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<const char, char*>::value), ""); static_assert((!std::is_explicitly_convertible<const char, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<char&, void>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, void>::value), ""); static_assert((!std::is_explicitly_convertible<char&, const void>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, const void>::value), ""); static_assert((!std::is_explicitly_convertible<char&, Function>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, Function>::value), ""); static_assert((!std::is_explicitly_convertible<char&, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<char&, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<char&, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<char&, Array>::value), ""); static_assert((!std::is_explicitly_convertible<char&, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, Array>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<char&, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<char&, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, const Array&>::value), ""); static_assert(( std::is_explicitly_convertible<char&, char>::value), ""); static_assert(( std::is_explicitly_convertible<char&, const char>::value), ""); static_assert(( std::is_explicitly_convertible<const char&, char>::value), ""); static_assert(( std::is_explicitly_convertible<const char&, const char>::value), ""); static_assert(( std::is_explicitly_convertible<char&, char&>::value), ""); static_assert(( std::is_explicitly_convertible<char&, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, char&>::value), ""); static_assert(( std::is_explicitly_convertible<const char&, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<char&, char*>::value), ""); static_assert((!std::is_explicitly_convertible<char&, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, char*>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<char*, void>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, void>::value), ""); static_assert((!std::is_explicitly_convertible<char*, const void>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, const void>::value), ""); static_assert((!std::is_explicitly_convertible<char*, Function>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, Function>::value), ""); static_assert((!std::is_explicitly_convertible<char*, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<char*, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<char*, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<char*, Array>::value), ""); static_assert((!std::is_explicitly_convertible<char*, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, Array>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<char*, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<char*, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<char*, char>::value), ""); static_assert((!std::is_explicitly_convertible<char*, const char>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, char>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, const char>::value), ""); static_assert((!std::is_explicitly_convertible<char*, char&>::value), ""); static_assert((!std::is_explicitly_convertible<char*, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, char&>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, const char&>::value), ""); static_assert(( std::is_explicitly_convertible<char*, char*>::value), ""); static_assert(( std::is_explicitly_convertible<char*, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, char*>::value), ""); static_assert(( std::is_explicitly_convertible<const char*, const char*>::value), ""); } } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_explicitly_convertible #include <type_traits> typedef void Function(); typedef char Array[1]; int main() { { static_assert(( std::is_explicitly_convertible<void, void>::value), ""); static_assert(( std::is_explicitly_convertible<const void, void>::value), ""); static_assert(( std::is_explicitly_convertible<void, const void>::value), ""); static_assert(( std::is_explicitly_convertible<const void, const void>::value), ""); static_assert((!std::is_explicitly_convertible<void, Function>::value), ""); static_assert((!std::is_explicitly_convertible<const void, Function>::value), ""); static_assert((!std::is_explicitly_convertible<void, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<const void, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<void, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<void, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<const void, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<const void, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<void, Array>::value), ""); static_assert((!std::is_explicitly_convertible<void, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<const void, Array>::value), ""); static_assert((!std::is_explicitly_convertible<const void, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<void, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<void, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const void, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const void, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<void, char>::value), ""); static_assert((!std::is_explicitly_convertible<void, const char>::value), ""); static_assert((!std::is_explicitly_convertible<const void, char>::value), ""); static_assert((!std::is_explicitly_convertible<const void, const char>::value), ""); static_assert((!std::is_explicitly_convertible<void, char&>::value), ""); static_assert((!std::is_explicitly_convertible<void, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<const void, char&>::value), ""); static_assert((!std::is_explicitly_convertible<const void, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<void, char*>::value), ""); static_assert((!std::is_explicitly_convertible<void, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<const void, char*>::value), ""); static_assert((!std::is_explicitly_convertible<const void, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<Function, void>::value), ""); static_assert((!std::is_explicitly_convertible<Function, const void>::value), ""); static_assert((!std::is_explicitly_convertible<Function, Function>::value), ""); static_assert((!std::is_explicitly_convertible<Function, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<Function, Function&>::value), ""); static_assert(( std::is_explicitly_convertible<Function, Function*>::value), ""); static_assert(( std::is_explicitly_convertible<Function, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<Function, Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function, char>::value), ""); static_assert((!std::is_explicitly_convertible<Function, const char>::value), ""); static_assert((!std::is_explicitly_convertible<Function, char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function, char*>::value), ""); static_assert((!std::is_explicitly_convertible<Function, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<Function&, void>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, const void>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, Function>::value), ""); static_assert(( std::is_explicitly_convertible<Function&, Function&>::value), ""); static_assert(( std::is_explicitly_convertible<Function&, const Function&>::value), ""); static_assert(( std::is_explicitly_convertible<Function&, Function*>::value), ""); static_assert(( std::is_explicitly_convertible<Function&, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, char>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, const char>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, char*>::value), ""); static_assert((!std::is_explicitly_convertible<Function&, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<Function*, void>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, void>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, const void>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, const void>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, Function>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, Function>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, Function&>::value), ""); static_assert(( std::is_explicitly_convertible<Function*, Function*>::value), ""); static_assert(( std::is_explicitly_convertible<Function*, Function* const>::value), ""); static_assert(( std::is_explicitly_convertible<Function*const, Function*>::value), ""); static_assert(( std::is_explicitly_convertible<Function*const, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<Function*, Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, char>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, const char>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, char>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, const char>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, char*>::value), ""); static_assert((!std::is_explicitly_convertible<Function*, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, char*>::value), ""); static_assert((!std::is_explicitly_convertible<Function*const, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<Array, void>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, void>::value), ""); static_assert((!std::is_explicitly_convertible<Array, const void>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, const void>::value), ""); static_assert((!std::is_explicitly_convertible<Array, Function>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, Function>::value), ""); static_assert((!std::is_explicitly_convertible<Array, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<Array, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<Array, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<Array, Array>::value), ""); static_assert((!std::is_explicitly_convertible<Array, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, Array>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<Array, Array&>::value), ""); static_assert(( std::is_explicitly_convertible<Array, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Array, char>::value), ""); static_assert((!std::is_explicitly_convertible<Array, const char>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, char>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, const char>::value), ""); static_assert((!std::is_explicitly_convertible<Array, char&>::value), ""); static_assert((!std::is_explicitly_convertible<Array, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, char&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, const char&>::value), ""); static_assert(( std::is_explicitly_convertible<Array, char*>::value), ""); static_assert(( std::is_explicitly_convertible<Array, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<const Array, char*>::value), ""); static_assert(( std::is_explicitly_convertible<const Array, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<Array&, void>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, void>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, const void>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, const void>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, Function>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, Function>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<Array&, Array>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, Array>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, const Array>::value), ""); static_assert(( std::is_explicitly_convertible<Array&, Array&>::value), ""); static_assert(( std::is_explicitly_convertible<Array&, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, Array&>::value), ""); static_assert(( std::is_explicitly_convertible<const Array&, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, char>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, const char>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, char>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, const char>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, char&>::value), ""); static_assert((!std::is_explicitly_convertible<Array&, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, char&>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, const char&>::value), ""); static_assert(( std::is_explicitly_convertible<Array&, char*>::value), ""); static_assert(( std::is_explicitly_convertible<Array&, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<const Array&, char*>::value), ""); static_assert(( std::is_explicitly_convertible<const Array&, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<char, void>::value), ""); static_assert((!std::is_explicitly_convertible<const char, void>::value), ""); static_assert((!std::is_explicitly_convertible<char, const void>::value), ""); static_assert((!std::is_explicitly_convertible<const char, const void>::value), ""); static_assert((!std::is_explicitly_convertible<char, Function>::value), ""); static_assert((!std::is_explicitly_convertible<const char, Function>::value), ""); static_assert((!std::is_explicitly_convertible<char, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<const char, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<char, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<char, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<const char, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<const char, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<char, Array>::value), ""); static_assert((!std::is_explicitly_convertible<char, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<const char, Array>::value), ""); static_assert((!std::is_explicitly_convertible<const char, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<char, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<char, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const char, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const char, const Array&>::value), ""); static_assert(( std::is_explicitly_convertible<char, char>::value), ""); static_assert(( std::is_explicitly_convertible<char, const char>::value), ""); static_assert(( std::is_explicitly_convertible<const char, char>::value), ""); static_assert(( std::is_explicitly_convertible<const char, const char>::value), ""); static_assert((!std::is_explicitly_convertible<char, char&>::value), ""); static_assert(( std::is_explicitly_convertible<char, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<const char, char&>::value), ""); static_assert(( std::is_explicitly_convertible<const char, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<char, char*>::value), ""); static_assert((!std::is_explicitly_convertible<char, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<const char, char*>::value), ""); static_assert((!std::is_explicitly_convertible<const char, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<char&, void>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, void>::value), ""); static_assert((!std::is_explicitly_convertible<char&, const void>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, const void>::value), ""); static_assert((!std::is_explicitly_convertible<char&, Function>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, Function>::value), ""); static_assert((!std::is_explicitly_convertible<char&, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<char&, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<char&, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<char&, Array>::value), ""); static_assert((!std::is_explicitly_convertible<char&, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, Array>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<char&, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<char&, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, const Array&>::value), ""); static_assert(( std::is_explicitly_convertible<char&, char>::value), ""); static_assert(( std::is_explicitly_convertible<char&, const char>::value), ""); static_assert(( std::is_explicitly_convertible<const char&, char>::value), ""); static_assert(( std::is_explicitly_convertible<const char&, const char>::value), ""); static_assert(( std::is_explicitly_convertible<char&, char&>::value), ""); static_assert(( std::is_explicitly_convertible<char&, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, char&>::value), ""); static_assert(( std::is_explicitly_convertible<const char&, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<char&, char*>::value), ""); static_assert((!std::is_explicitly_convertible<char&, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, char*>::value), ""); static_assert((!std::is_explicitly_convertible<const char&, const char*>::value), ""); } { static_assert((!std::is_explicitly_convertible<char*, void>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, void>::value), ""); static_assert((!std::is_explicitly_convertible<char*, const void>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, const void>::value), ""); static_assert((!std::is_explicitly_convertible<char*, Function>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, Function>::value), ""); static_assert((!std::is_explicitly_convertible<char*, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, Function&>::value), ""); static_assert((!std::is_explicitly_convertible<char*, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<char*, Function* const>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, Function*>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, Function*const >::value), ""); static_assert((!std::is_explicitly_convertible<char*, Array>::value), ""); static_assert((!std::is_explicitly_convertible<char*, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, Array>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, const Array>::value), ""); static_assert((!std::is_explicitly_convertible<char*, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<char*, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, Array&>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, const Array&>::value), ""); static_assert((!std::is_explicitly_convertible<char*, char>::value), ""); static_assert((!std::is_explicitly_convertible<char*, const char>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, char>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, const char>::value), ""); static_assert((!std::is_explicitly_convertible<char*, char&>::value), ""); static_assert((!std::is_explicitly_convertible<char*, const char&>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, char&>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, const char&>::value), ""); static_assert(( std::is_explicitly_convertible<char*, char*>::value), ""); static_assert(( std::is_explicitly_convertible<char*, const char*>::value), ""); static_assert((!std::is_explicitly_convertible<const char*, char*>::value), ""); static_assert(( std::is_explicitly_convertible<const char*, const char*>::value), ""); } } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.rel/is_same.pass.cpp b/libcxx/test/utilities/meta/meta.rel/is_same.pass.cpp
index 0e30b7d1fe4..8fa8e556d7c 100644
--- a/libcxx/test/utilities/meta/meta.rel/is_same.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.rel/is_same.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_same #include <type_traits> template <class T, class U> void test_is_same() { static_assert((std::is_same<T, U>::value), ""); static_assert((!std::is_same<const T, U>::value), ""); static_assert((!std::is_same<T, const U>::value), ""); static_assert((std::is_same<const T, const U>::value), ""); } template <class T, class U> void test_is_same_ref() { static_assert((std::is_same<T, U>::value), ""); static_assert((std::is_same<const T, U>::value), ""); static_assert((std::is_same<T, const U>::value), ""); static_assert((std::is_same<const T, const U>::value), ""); } template <class T, class U> void test_is_not_same() { static_assert((!std::is_same<T, U>::value), ""); } class Class { public: ~Class(); }; int main() { test_is_same<int, int>(); test_is_same<void, void>(); test_is_same<Class, Class>(); test_is_same<int*, int*>(); test_is_same_ref<int&, int&>(); test_is_not_same<int, void>(); test_is_not_same<void, Class>(); test_is_not_same<Class, int*>(); test_is_not_same<int*, int&>(); test_is_not_same<int&, int>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_same #include <type_traits> template <class T, class U> void test_is_same() { static_assert((std::is_same<T, U>::value), ""); static_assert((!std::is_same<const T, U>::value), ""); static_assert((!std::is_same<T, const U>::value), ""); static_assert((std::is_same<const T, const U>::value), ""); } template <class T, class U> void test_is_same_ref() { static_assert((std::is_same<T, U>::value), ""); static_assert((std::is_same<const T, U>::value), ""); static_assert((std::is_same<T, const U>::value), ""); static_assert((std::is_same<const T, const U>::value), ""); } template <class T, class U> void test_is_not_same() { static_assert((!std::is_same<T, U>::value), ""); } class Class { public: ~Class(); }; int main() { test_is_same<int, int>(); test_is_same<void, void>(); test_is_same<Class, Class>(); test_is_same<int*, int*>(); test_is_same_ref<int&, int&>(); test_is_not_same<int, void>(); test_is_not_same<void, Class>(); test_is_not_same<Class, int*>(); test_is_not_same<int*, int&>(); test_is_not_same<int&, int>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.rqmts/nothing_to_do.pass.cpp b/libcxx/test/utilities/meta/meta.rqmts/nothing_to_do.pass.cpp
index 92348261209..e8db90cbee0 100644
--- a/libcxx/test/utilities/meta/meta.rqmts/nothing_to_do.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.rqmts/nothing_to_do.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// int main() { } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// int main() { } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.arr/remove_all_extents.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.arr/remove_all_extents.pass.cpp
index e2f98c30eec..51e5178cfd9 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.arr/remove_all_extents.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.arr/remove_all_extents.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_all_extents #include <type_traits> enum Enum {zero, one_}; int main() { static_assert((std::is_same<std::remove_all_extents<int>::type, int>::value), ""); static_assert((std::is_same<std::remove_all_extents<const Enum>::type, const Enum>::value), ""); static_assert((std::is_same<std::remove_all_extents<int[]>::type, int>::value), ""); static_assert((std::is_same<std::remove_all_extents<const int[]>::type, const int>::value), ""); static_assert((std::is_same<std::remove_all_extents<int[3]>::type, int>::value), ""); static_assert((std::is_same<std::remove_all_extents<const int[3]>::type, const int>::value), ""); static_assert((std::is_same<std::remove_all_extents<int[][3]>::type, int>::value), ""); static_assert((std::is_same<std::remove_all_extents<const int[][3]>::type, const int>::value), ""); static_assert((std::is_same<std::remove_all_extents<int[2][3]>::type, int>::value), ""); static_assert((std::is_same<std::remove_all_extents<const int[2][3]>::type, const int>::value), ""); static_assert((std::is_same<std::remove_all_extents<int[1][2][3]>::type, int>::value), ""); static_assert((std::is_same<std::remove_all_extents<const int[1][2][3]>::type, const int>::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_all_extents #include <type_traits> enum Enum {zero, one_}; int main() { static_assert((std::is_same<std::remove_all_extents<int>::type, int>::value), ""); static_assert((std::is_same<std::remove_all_extents<const Enum>::type, const Enum>::value), ""); static_assert((std::is_same<std::remove_all_extents<int[]>::type, int>::value), ""); static_assert((std::is_same<std::remove_all_extents<const int[]>::type, const int>::value), ""); static_assert((std::is_same<std::remove_all_extents<int[3]>::type, int>::value), ""); static_assert((std::is_same<std::remove_all_extents<const int[3]>::type, const int>::value), ""); static_assert((std::is_same<std::remove_all_extents<int[][3]>::type, int>::value), ""); static_assert((std::is_same<std::remove_all_extents<const int[][3]>::type, const int>::value), ""); static_assert((std::is_same<std::remove_all_extents<int[2][3]>::type, int>::value), ""); static_assert((std::is_same<std::remove_all_extents<const int[2][3]>::type, const int>::value), ""); static_assert((std::is_same<std::remove_all_extents<int[1][2][3]>::type, int>::value), ""); static_assert((std::is_same<std::remove_all_extents<const int[1][2][3]>::type, const int>::value), ""); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.arr/remove_extent.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.arr/remove_extent.pass.cpp
index ed2e3d87931..d6592e88377 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.arr/remove_extent.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.arr/remove_extent.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_extent #include <type_traits> enum Enum {zero, one_}; int main() { static_assert((std::is_same<std::remove_extent<int>::type, int>::value), ""); static_assert((std::is_same<std::remove_extent<const Enum>::type, const Enum>::value), ""); static_assert((std::is_same<std::remove_extent<int[]>::type, int>::value), ""); static_assert((std::is_same<std::remove_extent<const int[]>::type, const int>::value), ""); static_assert((std::is_same<std::remove_extent<int[3]>::type, int>::value), ""); static_assert((std::is_same<std::remove_extent<const int[3]>::type, const int>::value), ""); static_assert((std::is_same<std::remove_extent<int[][3]>::type, int[3]>::value), ""); static_assert((std::is_same<std::remove_extent<const int[][3]>::type, const int[3]>::value), ""); static_assert((std::is_same<std::remove_extent<int[2][3]>::type, int[3]>::value), ""); static_assert((std::is_same<std::remove_extent<const int[2][3]>::type, const int[3]>::value), ""); static_assert((std::is_same<std::remove_extent<int[1][2][3]>::type, int[2][3]>::value), ""); static_assert((std::is_same<std::remove_extent<const int[1][2][3]>::type, const int[2][3]>::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_extent #include <type_traits> enum Enum {zero, one_}; int main() { static_assert((std::is_same<std::remove_extent<int>::type, int>::value), ""); static_assert((std::is_same<std::remove_extent<const Enum>::type, const Enum>::value), ""); static_assert((std::is_same<std::remove_extent<int[]>::type, int>::value), ""); static_assert((std::is_same<std::remove_extent<const int[]>::type, const int>::value), ""); static_assert((std::is_same<std::remove_extent<int[3]>::type, int>::value), ""); static_assert((std::is_same<std::remove_extent<const int[3]>::type, const int>::value), ""); static_assert((std::is_same<std::remove_extent<int[][3]>::type, int[3]>::value), ""); static_assert((std::is_same<std::remove_extent<const int[][3]>::type, const int[3]>::value), ""); static_assert((std::is_same<std::remove_extent<int[2][3]>::type, int[3]>::value), ""); static_assert((std::is_same<std::remove_extent<const int[2][3]>::type, const int[3]>::value), ""); static_assert((std::is_same<std::remove_extent<int[1][2][3]>::type, int[2][3]>::value), ""); static_assert((std::is_same<std::remove_extent<const int[1][2][3]>::type, const int[2][3]>::value), ""); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_const.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_const.pass.cpp
index fac7c26891d..55767898c33 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_const.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_const.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // add_const #include <type_traits> template <class T, class U> void test_add_const_imp() { static_assert((std::is_same<typename std::add_const<T>::type, const U>::value), ""); } template <class T> void test_add_const() { test_add_const_imp<T, const T>(); test_add_const_imp<const T, const T>(); test_add_const_imp<volatile T, volatile const T>(); test_add_const_imp<const volatile T, const volatile T>(); } int main() { test_add_const<void>(); test_add_const<int>(); test_add_const<int[3]>(); test_add_const<int&>(); test_add_const<const int&>(); test_add_const<int*>(); test_add_const<const int*>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // add_const #include <type_traits> template <class T, class U> void test_add_const_imp() { static_assert((std::is_same<typename std::add_const<T>::type, const U>::value), ""); } template <class T> void test_add_const() { test_add_const_imp<T, const T>(); test_add_const_imp<const T, const T>(); test_add_const_imp<volatile T, volatile const T>(); test_add_const_imp<const volatile T, const volatile T>(); } int main() { test_add_const<void>(); test_add_const<int>(); test_add_const<int[3]>(); test_add_const<int&>(); test_add_const<const int&>(); test_add_const<int*>(); test_add_const<const int*>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_cv.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_cv.pass.cpp
index dd7c15889db..43f516eab71 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_cv.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_cv.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // add_cv #include <type_traits> template <class T, class U> void test_add_cv_imp() { static_assert((std::is_same<typename std::add_cv<T>::type, const volatile U>::value), ""); } template <class T> void test_add_cv() { test_add_cv_imp<T, const volatile T>(); test_add_cv_imp<const T, const volatile T>(); test_add_cv_imp<volatile T, volatile const T>(); test_add_cv_imp<const volatile T, const volatile T>(); } int main() { test_add_cv<void>(); test_add_cv<int>(); test_add_cv<int[3]>(); test_add_cv<int&>(); test_add_cv<const int&>(); test_add_cv<int*>(); test_add_cv<const int*>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // add_cv #include <type_traits> template <class T, class U> void test_add_cv_imp() { static_assert((std::is_same<typename std::add_cv<T>::type, const volatile U>::value), ""); } template <class T> void test_add_cv() { test_add_cv_imp<T, const volatile T>(); test_add_cv_imp<const T, const volatile T>(); test_add_cv_imp<volatile T, volatile const T>(); test_add_cv_imp<const volatile T, const volatile T>(); } int main() { test_add_cv<void>(); test_add_cv<int>(); test_add_cv<int[3]>(); test_add_cv<int&>(); test_add_cv<const int&>(); test_add_cv<int*>(); test_add_cv<const int*>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_volatile.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_volatile.pass.cpp
index 92791accdcc..cca30035925 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_volatile.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/add_volatile.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // add_volatile #include <type_traits> template <class T, class U> void test_add_volatile_imp() { static_assert((std::is_same<typename std::add_volatile<T>::type, volatile U>::value), ""); } template <class T> void test_add_volatile() { test_add_volatile_imp<T, volatile T>(); test_add_volatile_imp<const T, const volatile T>(); test_add_volatile_imp<volatile T, volatile T>(); test_add_volatile_imp<const volatile T, const volatile T>(); } int main() { test_add_volatile<void>(); test_add_volatile<int>(); test_add_volatile<int[3]>(); test_add_volatile<int&>(); test_add_volatile<const int&>(); test_add_volatile<int*>(); test_add_volatile<const int*>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // add_volatile #include <type_traits> template <class T, class U> void test_add_volatile_imp() { static_assert((std::is_same<typename std::add_volatile<T>::type, volatile U>::value), ""); } template <class T> void test_add_volatile() { test_add_volatile_imp<T, volatile T>(); test_add_volatile_imp<const T, const volatile T>(); test_add_volatile_imp<volatile T, volatile T>(); test_add_volatile_imp<const volatile T, const volatile T>(); } int main() { test_add_volatile<void>(); test_add_volatile<int>(); test_add_volatile<int[3]>(); test_add_volatile<int&>(); test_add_volatile<const int&>(); test_add_volatile<int*>(); test_add_volatile<const int*>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_const.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_const.pass.cpp
index f857a27c58c..4ecfcb8930d 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_const.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_const.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_const #include <type_traits> template <class T, class U> void test_remove_const_imp() { static_assert((std::is_same<typename std::remove_const<T>::type, U>::value), ""); } template <class T> void test_remove_const() { test_remove_const_imp<T, T>(); test_remove_const_imp<const T, T>(); test_remove_const_imp<volatile T, volatile T>(); test_remove_const_imp<const volatile T, volatile T>(); } int main() { test_remove_const<void>(); test_remove_const<int>(); test_remove_const<int[3]>(); test_remove_const<int&>(); test_remove_const<const int&>(); test_remove_const<int*>(); test_remove_const<const int*>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_const #include <type_traits> template <class T, class U> void test_remove_const_imp() { static_assert((std::is_same<typename std::remove_const<T>::type, U>::value), ""); } template <class T> void test_remove_const() { test_remove_const_imp<T, T>(); test_remove_const_imp<const T, T>(); test_remove_const_imp<volatile T, volatile T>(); test_remove_const_imp<const volatile T, volatile T>(); } int main() { test_remove_const<void>(); test_remove_const<int>(); test_remove_const<int[3]>(); test_remove_const<int&>(); test_remove_const<const int&>(); test_remove_const<int*>(); test_remove_const<const int*>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_cv.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_cv.pass.cpp
index ce9e6d4428c..fc5b36f4f68 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_cv.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_cv.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_cv #include <type_traits> template <class T, class U> void test_remove_cv_imp() { static_assert((std::is_same<typename std::remove_cv<T>::type, U>::value), ""); } template <class T> void test_remove_cv() { test_remove_cv_imp<T, T>(); test_remove_cv_imp<const T, T>(); test_remove_cv_imp<volatile T, T>(); test_remove_cv_imp<const volatile T, T>(); } int main() { test_remove_cv<void>(); test_remove_cv<int>(); test_remove_cv<int[3]>(); test_remove_cv<int&>(); test_remove_cv<const int&>(); test_remove_cv<int*>(); test_remove_cv<const int*>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_cv #include <type_traits> template <class T, class U> void test_remove_cv_imp() { static_assert((std::is_same<typename std::remove_cv<T>::type, U>::value), ""); } template <class T> void test_remove_cv() { test_remove_cv_imp<T, T>(); test_remove_cv_imp<const T, T>(); test_remove_cv_imp<volatile T, T>(); test_remove_cv_imp<const volatile T, T>(); } int main() { test_remove_cv<void>(); test_remove_cv<int>(); test_remove_cv<int[3]>(); test_remove_cv<int&>(); test_remove_cv<const int&>(); test_remove_cv<int*>(); test_remove_cv<const int*>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_volatile.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_volatile.pass.cpp
index cafcfa532b8..85d65213c08 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_volatile.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.cv/remove_volatile.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_volatile #include <type_traits> template <class T, class U> void test_remove_volatile_imp() { static_assert((std::is_same<typename std::remove_volatile<T>::type, U>::value), ""); } template <class T> void test_remove_volatile() { test_remove_volatile_imp<T, T>(); test_remove_volatile_imp<const T, const T>(); test_remove_volatile_imp<volatile T, T>(); test_remove_volatile_imp<const volatile T, const T>(); } int main() { test_remove_volatile<void>(); test_remove_volatile<int>(); test_remove_volatile<int[3]>(); test_remove_volatile<int&>(); test_remove_volatile<const int&>(); test_remove_volatile<int*>(); test_remove_volatile<volatile int*>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_volatile #include <type_traits> template <class T, class U> void test_remove_volatile_imp() { static_assert((std::is_same<typename std::remove_volatile<T>::type, U>::value), ""); } template <class T> void test_remove_volatile() { test_remove_volatile_imp<T, T>(); test_remove_volatile_imp<const T, const T>(); test_remove_volatile_imp<volatile T, T>(); test_remove_volatile_imp<const volatile T, const T>(); } int main() { test_remove_volatile<void>(); test_remove_volatile<int>(); test_remove_volatile<int[3]>(); test_remove_volatile<int&>(); test_remove_volatile<const int&>(); test_remove_volatile<int*>(); test_remove_volatile<volatile int*>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/aligned_storage.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/aligned_storage.pass.cpp
index 40e137c085f..58be6e98024 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/aligned_storage.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/aligned_storage.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // aligned_storage #include <type_traits> int main() { { typedef std::aligned_storage<10, 1 >::type T1; static_assert(std::alignment_of<T1>::value == 1, ""); static_assert(sizeof(T1) == 10, ""); } { typedef std::aligned_storage<10, 2 >::type T1; static_assert(std::alignment_of<T1>::value == 2, ""); static_assert(sizeof(T1) == 10, ""); } { typedef std::aligned_storage<10, 4 >::type T1; static_assert(std::alignment_of<T1>::value == 4, ""); static_assert(sizeof(T1) == 12, ""); } { typedef std::aligned_storage<10, 8 >::type T1; static_assert(std::alignment_of<T1>::value == 8, ""); static_assert(sizeof(T1) == 16, ""); } { typedef std::aligned_storage<10, 16 >::type T1; static_assert(std::alignment_of<T1>::value == 16, ""); static_assert(sizeof(T1) == 16, ""); } { typedef std::aligned_storage<10, 32 >::type T1; static_assert(std::alignment_of<T1>::value == 32, ""); static_assert(sizeof(T1) == 32, ""); } { typedef std::aligned_storage<20, 32 >::type T1; static_assert(std::alignment_of<T1>::value == 32, ""); static_assert(sizeof(T1) == 32, ""); } { typedef std::aligned_storage<40, 32 >::type T1; static_assert(std::alignment_of<T1>::value == 32, ""); static_assert(sizeof(T1) == 64, ""); } { typedef std::aligned_storage<12, 16 >::type T1; static_assert(std::alignment_of<T1>::value == 16, ""); static_assert(sizeof(T1) == 16, ""); } { typedef std::aligned_storage<1>::type T1; static_assert(std::alignment_of<T1>::value == 1, ""); static_assert(sizeof(T1) == 1, ""); } { typedef std::aligned_storage<2>::type T1; static_assert(std::alignment_of<T1>::value == 2, ""); static_assert(sizeof(T1) == 2, ""); } { typedef std::aligned_storage<3>::type T1; static_assert(std::alignment_of<T1>::value == 2, ""); static_assert(sizeof(T1) == 4, ""); } { typedef std::aligned_storage<4>::type T1; static_assert(std::alignment_of<T1>::value == 4, ""); static_assert(sizeof(T1) == 4, ""); } { typedef std::aligned_storage<5>::type T1; static_assert(std::alignment_of<T1>::value == 4, ""); static_assert(sizeof(T1) == 8, ""); } { typedef std::aligned_storage<7>::type T1; static_assert(std::alignment_of<T1>::value == 4, ""); static_assert(sizeof(T1) == 8, ""); } { typedef std::aligned_storage<8>::type T1; static_assert(std::alignment_of<T1>::value == (sizeof(long) == 4 ? 4 : 8), ""); static_assert(sizeof(T1) == 8, ""); } { typedef std::aligned_storage<9>::type T1; static_assert(std::alignment_of<T1>::value == (sizeof(long) == 4 ? 4 : 8), ""); static_assert(sizeof(T1) == (sizeof(long) == 4 ? 12 : 16), ""); } { typedef std::aligned_storage<15>::type T1; static_assert(std::alignment_of<T1>::value == (sizeof(long) == 4 ? 4 : 8), ""); static_assert(sizeof(T1) == 16, ""); } { typedef std::aligned_storage<16>::type T1; static_assert(std::alignment_of<T1>::value == 16, ""); static_assert(sizeof(T1) == 16, ""); } { typedef std::aligned_storage<17>::type T1; static_assert(std::alignment_of<T1>::value == 16, ""); static_assert(sizeof(T1) == 32, ""); } { typedef std::aligned_storage<10>::type T1; static_assert(std::alignment_of<T1>::value == (sizeof(long) == 4 ? 4 : 8), ""); static_assert(sizeof(T1) == (sizeof(long) == 4 ? 12 : 16), ""); } } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // aligned_storage #include <type_traits> int main() { { typedef std::aligned_storage<10, 1 >::type T1; static_assert(std::alignment_of<T1>::value == 1, ""); static_assert(sizeof(T1) == 10, ""); } { typedef std::aligned_storage<10, 2 >::type T1; static_assert(std::alignment_of<T1>::value == 2, ""); static_assert(sizeof(T1) == 10, ""); } { typedef std::aligned_storage<10, 4 >::type T1; static_assert(std::alignment_of<T1>::value == 4, ""); static_assert(sizeof(T1) == 12, ""); } { typedef std::aligned_storage<10, 8 >::type T1; static_assert(std::alignment_of<T1>::value == 8, ""); static_assert(sizeof(T1) == 16, ""); } { typedef std::aligned_storage<10, 16 >::type T1; static_assert(std::alignment_of<T1>::value == 16, ""); static_assert(sizeof(T1) == 16, ""); } { typedef std::aligned_storage<10, 32 >::type T1; static_assert(std::alignment_of<T1>::value == 32, ""); static_assert(sizeof(T1) == 32, ""); } { typedef std::aligned_storage<20, 32 >::type T1; static_assert(std::alignment_of<T1>::value == 32, ""); static_assert(sizeof(T1) == 32, ""); } { typedef std::aligned_storage<40, 32 >::type T1; static_assert(std::alignment_of<T1>::value == 32, ""); static_assert(sizeof(T1) == 64, ""); } { typedef std::aligned_storage<12, 16 >::type T1; static_assert(std::alignment_of<T1>::value == 16, ""); static_assert(sizeof(T1) == 16, ""); } { typedef std::aligned_storage<1>::type T1; static_assert(std::alignment_of<T1>::value == 1, ""); static_assert(sizeof(T1) == 1, ""); } { typedef std::aligned_storage<2>::type T1; static_assert(std::alignment_of<T1>::value == 2, ""); static_assert(sizeof(T1) == 2, ""); } { typedef std::aligned_storage<3>::type T1; static_assert(std::alignment_of<T1>::value == 2, ""); static_assert(sizeof(T1) == 4, ""); } { typedef std::aligned_storage<4>::type T1; static_assert(std::alignment_of<T1>::value == 4, ""); static_assert(sizeof(T1) == 4, ""); } { typedef std::aligned_storage<5>::type T1; static_assert(std::alignment_of<T1>::value == 4, ""); static_assert(sizeof(T1) == 8, ""); } { typedef std::aligned_storage<7>::type T1; static_assert(std::alignment_of<T1>::value == 4, ""); static_assert(sizeof(T1) == 8, ""); } { typedef std::aligned_storage<8>::type T1; static_assert(std::alignment_of<T1>::value == (sizeof(long) == 4 ? 4 : 8), ""); static_assert(sizeof(T1) == 8, ""); } { typedef std::aligned_storage<9>::type T1; static_assert(std::alignment_of<T1>::value == (sizeof(long) == 4 ? 4 : 8), ""); static_assert(sizeof(T1) == (sizeof(long) == 4 ? 12 : 16), ""); } { typedef std::aligned_storage<15>::type T1; static_assert(std::alignment_of<T1>::value == (sizeof(long) == 4 ? 4 : 8), ""); static_assert(sizeof(T1) == 16, ""); } { typedef std::aligned_storage<16>::type T1; static_assert(std::alignment_of<T1>::value == 16, ""); static_assert(sizeof(T1) == 16, ""); } { typedef std::aligned_storage<17>::type T1; static_assert(std::alignment_of<T1>::value == 16, ""); static_assert(sizeof(T1) == 32, ""); } { typedef std::aligned_storage<10>::type T1; static_assert(std::alignment_of<T1>::value == (sizeof(long) == 4 ? 4 : 8), ""); static_assert(sizeof(T1) == (sizeof(long) == 4 ? 12 : 16), ""); } } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/common_type.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/common_type.pass.cpp
index 36403ff5373..460f734a7b2 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/common_type.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/common_type.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // common_type #include <type_traits> int main() { static_assert((std::is_same<std::common_type<int>::type, int>::value), ""); static_assert((std::is_same<std::common_type<char>::type, char>::value), ""); static_assert((std::is_same<std::common_type<double, char>::type, double>::value), ""); static_assert((std::is_same<std::common_type<short, char>::type, int>::value), ""); static_assert((std::is_same<std::common_type<double, char, long long>::type, double>::value), ""); static_assert((std::is_same<std::common_type<unsigned, char, long long>::type, long long>::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // common_type #include <type_traits> int main() { static_assert((std::is_same<std::common_type<int>::type, int>::value), ""); static_assert((std::is_same<std::common_type<char>::type, char>::value), ""); static_assert((std::is_same<std::common_type<double, char>::type, double>::value), ""); static_assert((std::is_same<std::common_type<short, char>::type, int>::value), ""); static_assert((std::is_same<std::common_type<double, char, long long>::type, double>::value), ""); static_assert((std::is_same<std::common_type<unsigned, char, long long>::type, long long>::value), ""); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/conditional.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/conditional.pass.cpp
index 6c6a67ab784..c6317037a02 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/conditional.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/conditional.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // conditional #include <type_traits> int main() { static_assert((std::is_same<std::conditional<true, char, int>::type, char>::value), ""); static_assert((std::is_same<std::conditional<false, char, int>::type, int>::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // conditional #include <type_traits> int main() { static_assert((std::is_same<std::conditional<true, char, int>::type, char>::value), ""); static_assert((std::is_same<std::conditional<false, char, int>::type, int>::value), ""); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/decay.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/decay.pass.cpp
index c5fc1bc99b0..6ed6da8f804 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/decay.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/decay.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // decay #include <type_traits> template <class T, class U> void test_decay() { static_assert((std::is_same<typename std::decay<T>::type, U>::value), ""); } int main() { test_decay<void, void>(); test_decay<int, int>(); test_decay<const volatile int, int>(); test_decay<int*, int*>(); test_decay<int[3], int*>(); test_decay<const int[3], const int*>(); test_decay<void(), void (*)()>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // decay #include <type_traits> template <class T, class U> void test_decay() { static_assert((std::is_same<typename std::decay<T>::type, U>::value), ""); } int main() { test_decay<void, void>(); test_decay<int, int>(); test_decay<const volatile int, int>(); test_decay<int*, int*>(); test_decay<int[3], int*>(); test_decay<const int[3], const int*>(); test_decay<void(), void (*)()>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/enable_if.fail.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/enable_if.fail.cpp
index e0a53815292..c4d27dc6b8e 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/enable_if.fail.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/enable_if.fail.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // enable_if #include <type_traits> int main() { typedef std::enable_if<false>::type A; } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // enable_if #include <type_traits> int main() { typedef std::enable_if<false>::type A; } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/enable_if.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/enable_if.pass.cpp
index d2914abf0e7..7cfdeeecfcb 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/enable_if.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/enable_if.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // enable_if #include <type_traits> int main() { static_assert((std::is_same<std::enable_if<true>::type, void>::value), ""); static_assert((std::is_same<std::enable_if<true, int>::type, int>::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // enable_if #include <type_traits> int main() { static_assert((std::is_same<std::enable_if<true>::type, void>::value), ""); static_assert((std::is_same<std::enable_if<true, int>::type, int>::value), ""); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/result_of.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/result_of.pass.cpp
index ab7286e6940..3795f8e31ce 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/result_of.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/result_of.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <functional> // result_of<Fn(ArgTypes...)> #include <type_traits> typedef bool (&PF1)(); typedef short (*PF2)(long); struct S { operator PF2() const; double operator()(char, int&); }; int main() { static_assert((std::is_same<std::result_of<S(int)>::type, short>::value), "Error!"); static_assert((std::is_same<std::result_of<S&(unsigned char, int&)>::type, double>::value), "Error!"); static_assert((std::is_same<std::result_of<PF1()>::type, bool>::value), "Error!"); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <functional> // result_of<Fn(ArgTypes...)> #include <type_traits> typedef bool (&PF1)(); typedef short (*PF2)(long); struct S { operator PF2() const; double operator()(char, int&); }; int main() { static_assert((std::is_same<std::result_of<S(int)>::type, short>::value), "Error!"); static_assert((std::is_same<std::result_of<S&(unsigned char, int&)>::type, double>::value), "Error!"); static_assert((std::is_same<std::result_of<PF1()>::type, bool>::value), "Error!"); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/underlying_type.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/underlying_type.pass.cpp
index 9316521bc76..128ca05adff 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.other/underlying_type.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.other/underlying_type.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // underlying_type #include <type_traits> int main() { #error underlying_type is not implemented } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // underlying_type #include <type_traits> int main() { #error underlying_type is not implemented } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.ptr/add_pointer.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.ptr/add_pointer.pass.cpp
index 5966d0287a2..ad43c439916 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.ptr/add_pointer.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.ptr/add_pointer.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // add_pointer #include <type_traits> template <class T, class U> void test_add_pointer() { static_assert((std::is_same<typename std::add_pointer<T>::type, U>::value), ""); } int main() { test_add_pointer<void, void*>(); test_add_pointer<int, int*>(); test_add_pointer<int[3], int(*)[3]>(); test_add_pointer<int&, int*>(); test_add_pointer<const int&, const int*>(); test_add_pointer<int*, int**>(); test_add_pointer<const int*, const int**>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // add_pointer #include <type_traits> template <class T, class U> void test_add_pointer() { static_assert((std::is_same<typename std::add_pointer<T>::type, U>::value), ""); } int main() { test_add_pointer<void, void*>(); test_add_pointer<int, int*>(); test_add_pointer<int[3], int(*)[3]>(); test_add_pointer<int&, int*>(); test_add_pointer<const int&, const int*>(); test_add_pointer<int*, int**>(); test_add_pointer<const int*, const int**>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.ptr/remove_pointer.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.ptr/remove_pointer.pass.cpp
index 9df689d1d81..4b1b903e5cd 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.ptr/remove_pointer.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.ptr/remove_pointer.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_pointer #include <type_traits> template <class T, class U> void test_remove_pointer() { static_assert((std::is_same<typename std::remove_pointer<T>::type, U>::value), ""); } int main() { test_remove_pointer<void, void>(); test_remove_pointer<int, int>(); test_remove_pointer<int[3], int[3]>(); test_remove_pointer<int*, int>(); test_remove_pointer<const int*, const int>(); test_remove_pointer<int**, int*>(); test_remove_pointer<int** const, int*>(); test_remove_pointer<int*const * , int* const>(); test_remove_pointer<const int** , const int*>(); test_remove_pointer<int&, int&>(); test_remove_pointer<const int&, const int&>(); test_remove_pointer<int(&)[3], int(&)[3]>(); test_remove_pointer<int(*)[3], int[3]>(); test_remove_pointer<int*&, int*&>(); test_remove_pointer<const int*&, const int*&>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_pointer #include <type_traits> template <class T, class U> void test_remove_pointer() { static_assert((std::is_same<typename std::remove_pointer<T>::type, U>::value), ""); } int main() { test_remove_pointer<void, void>(); test_remove_pointer<int, int>(); test_remove_pointer<int[3], int[3]>(); test_remove_pointer<int*, int>(); test_remove_pointer<const int*, const int>(); test_remove_pointer<int**, int*>(); test_remove_pointer<int** const, int*>(); test_remove_pointer<int*const * , int* const>(); test_remove_pointer<const int** , const int*>(); test_remove_pointer<int&, int&>(); test_remove_pointer<const int&, const int&>(); test_remove_pointer<int(&)[3], int(&)[3]>(); test_remove_pointer<int(*)[3], int[3]>(); test_remove_pointer<int*&, int*&>(); test_remove_pointer<const int*&, const int*&>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.ref/add_lvalue_ref.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.ref/add_lvalue_ref.pass.cpp
index 06dae283712..5dfea669906 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.ref/add_lvalue_ref.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.ref/add_lvalue_ref.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // add_lvalue_reference #include <type_traits> template <class T, class U> void test_add_lvalue_reference() { static_assert((std::is_same<typename std::add_lvalue_reference<T>::type, U>::value), ""); } int main() { test_add_lvalue_reference<void, void>(); test_add_lvalue_reference<int, int&>(); test_add_lvalue_reference<int[3], int(&)[3]>(); test_add_lvalue_reference<int&, int&>(); test_add_lvalue_reference<const int&, const int&>(); test_add_lvalue_reference<int*, int*&>(); test_add_lvalue_reference<const int*, const int*&>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // add_lvalue_reference #include <type_traits> template <class T, class U> void test_add_lvalue_reference() { static_assert((std::is_same<typename std::add_lvalue_reference<T>::type, U>::value), ""); } int main() { test_add_lvalue_reference<void, void>(); test_add_lvalue_reference<int, int&>(); test_add_lvalue_reference<int[3], int(&)[3]>(); test_add_lvalue_reference<int&, int&>(); test_add_lvalue_reference<const int&, const int&>(); test_add_lvalue_reference<int*, int*&>(); test_add_lvalue_reference<const int*, const int*&>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp
index 935d4696d46..0a86b53e5e1 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // add_rvalue_reference #include <type_traits> #ifdef _LIBCPP_MOVE template <class T, class U> void test_add_rvalue_reference() { static_assert((std::is_same<typename std::add_rvalue_reference<T>::type, U>::value), ""); } #endif int main() { #ifdef _LIBCPP_MOVE test_add_rvalue_reference<void, void>(); test_add_rvalue_reference<int, int&&>(); test_add_rvalue_reference<int[3], int(&&)[3]>(); test_add_rvalue_reference<int&, int&>(); test_add_rvalue_reference<const int&, const int&>(); test_add_rvalue_reference<int*, int*&&>(); test_add_rvalue_reference<const int*, const int*&&>(); #endif } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // add_rvalue_reference #include <type_traits> #ifdef _LIBCPP_MOVE template <class T, class U> void test_add_rvalue_reference() { static_assert((std::is_same<typename std::add_rvalue_reference<T>::type, U>::value), ""); } #endif int main() { #ifdef _LIBCPP_MOVE test_add_rvalue_reference<void, void>(); test_add_rvalue_reference<int, int&&>(); test_add_rvalue_reference<int[3], int(&&)[3]>(); test_add_rvalue_reference<int&, int&>(); test_add_rvalue_reference<const int&, const int&>(); test_add_rvalue_reference<int*, int*&&>(); test_add_rvalue_reference<const int*, const int*&&>(); #endif } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp
index 6e035efc02e..d36dd019b07 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_reference #include <type_traits> template <class T, class U> void test_remove_reference() { static_assert((std::is_same<typename std::remove_reference<T>::type, U>::value), ""); } int main() { test_remove_reference<void, void>(); test_remove_reference<int, int>(); test_remove_reference<int[3], int[3]>(); test_remove_reference<int*, int*>(); test_remove_reference<const int*, const int*>(); test_remove_reference<int&, int>(); test_remove_reference<const int&, const int>(); test_remove_reference<int(&)[3], int[3]>(); test_remove_reference<int*&, int*>(); test_remove_reference<const int*&, const int*>(); #ifdef _LIBCPP_MOVE test_remove_reference<int&&, int>(); test_remove_reference<const int&&, const int>(); test_remove_reference<int(&&)[3], int[3]>(); test_remove_reference<int*&&, int*>(); test_remove_reference<const int*&&, const int*>(); #endif } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // remove_reference #include <type_traits> template <class T, class U> void test_remove_reference() { static_assert((std::is_same<typename std::remove_reference<T>::type, U>::value), ""); } int main() { test_remove_reference<void, void>(); test_remove_reference<int, int>(); test_remove_reference<int[3], int[3]>(); test_remove_reference<int*, int*>(); test_remove_reference<const int*, const int*>(); test_remove_reference<int&, int>(); test_remove_reference<const int&, const int>(); test_remove_reference<int(&)[3], int[3]>(); test_remove_reference<int*&, int*>(); test_remove_reference<const int*&, const int*>(); #ifdef _LIBCPP_MOVE test_remove_reference<int&&, int>(); test_remove_reference<const int&&, const int>(); test_remove_reference<int(&&)[3], int[3]>(); test_remove_reference<int*&&, int*>(); test_remove_reference<const int*&&, const int*>(); #endif } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_signed.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_signed.pass.cpp
index 1f7511e9977..3b87a835512 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_signed.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_signed.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // make_signed #include <type_traits> enum Enum {zero, one_}; enum BigEnum { bzero, big = 0xFFFFFFFFFFFFFFFFULL }; int main() { static_assert((std::is_same<std::make_signed<signed char>::type, signed char>::value), ""); static_assert((std::is_same<std::make_signed<unsigned char>::type, signed char>::value), ""); static_assert((std::is_same<std::make_signed<char>::type, signed char>::value), ""); static_assert((std::is_same<std::make_signed<short>::type, signed short>::value), ""); static_assert((std::is_same<std::make_signed<unsigned short>::type, signed short>::value), ""); static_assert((std::is_same<std::make_signed<int>::type, signed int>::value), ""); static_assert((std::is_same<std::make_signed<unsigned int>::type, signed int>::value), ""); static_assert((std::is_same<std::make_signed<long>::type, signed long>::value), ""); static_assert((std::is_same<std::make_signed<unsigned long>::type, long>::value), ""); static_assert((std::is_same<std::make_signed<long long>::type, signed long long>::value), ""); static_assert((std::is_same<std::make_signed<unsigned long long>::type, signed long long>::value), ""); static_assert((std::is_same<std::make_signed<wchar_t>::type, int>::value), ""); static_assert((std::is_same<std::make_signed<const wchar_t>::type, const int>::value), ""); static_assert((std::is_same<std::make_signed<const Enum>::type, const int>::value), ""); static_assert((std::is_same<std::make_signed<BigEnum>::type, std::conditional<sizeof(long) == 4, long long, long>::type>::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // make_signed #include <type_traits> enum Enum {zero, one_}; enum BigEnum { bzero, big = 0xFFFFFFFFFFFFFFFFULL }; int main() { static_assert((std::is_same<std::make_signed<signed char>::type, signed char>::value), ""); static_assert((std::is_same<std::make_signed<unsigned char>::type, signed char>::value), ""); static_assert((std::is_same<std::make_signed<char>::type, signed char>::value), ""); static_assert((std::is_same<std::make_signed<short>::type, signed short>::value), ""); static_assert((std::is_same<std::make_signed<unsigned short>::type, signed short>::value), ""); static_assert((std::is_same<std::make_signed<int>::type, signed int>::value), ""); static_assert((std::is_same<std::make_signed<unsigned int>::type, signed int>::value), ""); static_assert((std::is_same<std::make_signed<long>::type, signed long>::value), ""); static_assert((std::is_same<std::make_signed<unsigned long>::type, long>::value), ""); static_assert((std::is_same<std::make_signed<long long>::type, signed long long>::value), ""); static_assert((std::is_same<std::make_signed<unsigned long long>::type, signed long long>::value), ""); static_assert((std::is_same<std::make_signed<wchar_t>::type, int>::value), ""); static_assert((std::is_same<std::make_signed<const wchar_t>::type, const int>::value), ""); static_assert((std::is_same<std::make_signed<const Enum>::type, const int>::value), ""); static_assert((std::is_same<std::make_signed<BigEnum>::type, std::conditional<sizeof(long) == 4, long long, long>::type>::value), ""); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_unsigned.pass.cpp b/libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_unsigned.pass.cpp
index becf1e93740..d8bb4e33ef7 100644
--- a/libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_unsigned.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_unsigned.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // make_unsigned #include <type_traits> enum Enum {zero, one_}; enum BigEnum { bzero, big = 0xFFFFFFFFFFFFFFFFULL }; int main() { static_assert((std::is_same<std::make_unsigned<signed char>::type, unsigned char>::value), ""); static_assert((std::is_same<std::make_unsigned<unsigned char>::type, unsigned char>::value), ""); static_assert((std::is_same<std::make_unsigned<char>::type, unsigned char>::value), ""); static_assert((std::is_same<std::make_unsigned<short>::type, unsigned short>::value), ""); static_assert((std::is_same<std::make_unsigned<unsigned short>::type, unsigned short>::value), ""); static_assert((std::is_same<std::make_unsigned<int>::type, unsigned int>::value), ""); static_assert((std::is_same<std::make_unsigned<unsigned int>::type, unsigned int>::value), ""); static_assert((std::is_same<std::make_unsigned<long>::type, unsigned long>::value), ""); static_assert((std::is_same<std::make_unsigned<unsigned long>::type, unsigned long>::value), ""); static_assert((std::is_same<std::make_unsigned<long long>::type, unsigned long long>::value), ""); static_assert((std::is_same<std::make_unsigned<unsigned long long>::type, unsigned long long>::value), ""); static_assert((std::is_same<std::make_unsigned<wchar_t>::type, unsigned int>::value), ""); static_assert((std::is_same<std::make_unsigned<const wchar_t>::type, const unsigned int>::value), ""); static_assert((std::is_same<std::make_unsigned<const Enum>::type, const unsigned int>::value), ""); static_assert((std::is_same<std::make_unsigned<BigEnum>::type, std::conditional<sizeof(long) == 4, unsigned long long, unsigned long>::type>::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // make_unsigned #include <type_traits> enum Enum {zero, one_}; enum BigEnum { bzero, big = 0xFFFFFFFFFFFFFFFFULL }; int main() { static_assert((std::is_same<std::make_unsigned<signed char>::type, unsigned char>::value), ""); static_assert((std::is_same<std::make_unsigned<unsigned char>::type, unsigned char>::value), ""); static_assert((std::is_same<std::make_unsigned<char>::type, unsigned char>::value), ""); static_assert((std::is_same<std::make_unsigned<short>::type, unsigned short>::value), ""); static_assert((std::is_same<std::make_unsigned<unsigned short>::type, unsigned short>::value), ""); static_assert((std::is_same<std::make_unsigned<int>::type, unsigned int>::value), ""); static_assert((std::is_same<std::make_unsigned<unsigned int>::type, unsigned int>::value), ""); static_assert((std::is_same<std::make_unsigned<long>::type, unsigned long>::value), ""); static_assert((std::is_same<std::make_unsigned<unsigned long>::type, unsigned long>::value), ""); static_assert((std::is_same<std::make_unsigned<long long>::type, unsigned long long>::value), ""); static_assert((std::is_same<std::make_unsigned<unsigned long long>::type, unsigned long long>::value), ""); static_assert((std::is_same<std::make_unsigned<wchar_t>::type, unsigned int>::value), ""); static_assert((std::is_same<std::make_unsigned<const wchar_t>::type, const unsigned int>::value), ""); static_assert((std::is_same<std::make_unsigned<const Enum>::type, const unsigned int>::value), ""); static_assert((std::is_same<std::make_unsigned<BigEnum>::type, std::conditional<sizeof(long) == 4, unsigned long long, unsigned long>::type>::value), ""); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.trans/nothing_to_do.pass.cpp b/libcxx/test/utilities/meta/meta.trans/nothing_to_do.pass.cpp
index 92348261209..e8db90cbee0 100644
--- a/libcxx/test/utilities/meta/meta.trans/nothing_to_do.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.trans/nothing_to_do.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// int main() { } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// int main() { } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.type.synop/nothing_to_do.pass.cpp b/libcxx/test/utilities/meta/meta.type.synop/nothing_to_do.pass.cpp
index 92348261209..e8db90cbee0 100644
--- a/libcxx/test/utilities/meta/meta.type.synop/nothing_to_do.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.type.synop/nothing_to_do.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// int main() { } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// int main() { } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/array.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/array.pass.cpp
index 4588bbb1e3f..da1a68137d1 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/array.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/array.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // array #include <type_traits> template <class T> void test_array_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert( std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_array() { test_array_imp<T>(); test_array_imp<const T>(); test_array_imp<volatile T>(); test_array_imp<const volatile T>(); } typedef char array[3]; typedef const char const_array[3]; typedef char incomplete_array[]; int main() { test_array<array>(); test_array<const_array>(); test_array<incomplete_array>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // array #include <type_traits> template <class T> void test_array_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert( std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_array() { test_array_imp<T>(); test_array_imp<const T>(); test_array_imp<volatile T>(); test_array_imp<const volatile T>(); } typedef char array[3]; typedef const char const_array[3]; typedef char incomplete_array[]; int main() { test_array<array>(); test_array<const_array>(); test_array<incomplete_array>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/class.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/class.pass.cpp
index 99207322c76..fa604cf182e 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/class.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/class.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // class #include <type_traits> template <class T> void test_class_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert( std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_class() { test_class_imp<T>(); test_class_imp<const T>(); test_class_imp<volatile T>(); test_class_imp<const volatile T>(); } class Class { int _; double __; }; int main() { test_class<Class>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // class #include <type_traits> template <class T> void test_class_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert( std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_class() { test_class_imp<T>(); test_class_imp<const T>(); test_class_imp<volatile T>(); test_class_imp<const volatile T>(); } class Class { int _; double __; }; int main() { test_class<Class>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/enum.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/enum.pass.cpp
index 972654b0b47..b1a72f9f130 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/enum.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/enum.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // enum #include <type_traits> template <class T> void test_enum_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert( std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_enum() { test_enum_imp<T>(); test_enum_imp<const T>(); test_enum_imp<volatile T>(); test_enum_imp<const volatile T>(); } enum Enum {zero, one}; int main() { test_enum<Enum>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // enum #include <type_traits> template <class T> void test_enum_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert( std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_enum() { test_enum_imp<T>(); test_enum_imp<const T>(); test_enum_imp<volatile T>(); test_enum_imp<const volatile T>(); } enum Enum {zero, one}; int main() { test_enum<Enum>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/floating_point.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/floating_point.pass.cpp
index 70ba35b37c5..bd5d03f449d 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/floating_point.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/floating_point.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // floating_point #include <type_traits> template <class T> void test_floating_point_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert( std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_floating_point() { test_floating_point_imp<T>(); test_floating_point_imp<const T>(); test_floating_point_imp<volatile T>(); test_floating_point_imp<const volatile T>(); } int main() { test_floating_point<float>(); test_floating_point<double>(); test_floating_point<long double>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // floating_point #include <type_traits> template <class T> void test_floating_point_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert( std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_floating_point() { test_floating_point_imp<T>(); test_floating_point_imp<const T>(); test_floating_point_imp<volatile T>(); test_floating_point_imp<const volatile T>(); } int main() { test_floating_point<float>(); test_floating_point<double>(); test_floating_point<long double>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/function.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/function.pass.cpp
index ee9753f2cf7..a3bab5b325a 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/function.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/function.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // function #include <type_traits> template <class T> void test_function_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert( std::is_function<T>::value, ""); } template <class T> void test_function() { test_function_imp<T>(); test_function_imp<const T>(); test_function_imp<volatile T>(); test_function_imp<const volatile T>(); } int main() { test_function<void ()>(); test_function<void (int)>(); test_function<int (double)>(); test_function<int (double, char)>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // function #include <type_traits> template <class T> void test_function_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert( std::is_function<T>::value, ""); } template <class T> void test_function() { test_function_imp<T>(); test_function_imp<const T>(); test_function_imp<volatile T>(); test_function_imp<const volatile T>(); } int main() { test_function<void ()>(); test_function<void (int)>(); test_function<int (double)>(); test_function<int (double, char)>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/integral.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/integral.pass.cpp
index afa6a9d18a4..a4c0cb427cf 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/integral.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/integral.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // integral #include <type_traits> template <class T> void test_integral_imp() { static_assert(!std::is_void<T>::value, ""); static_assert( std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_integral() { test_integral_imp<T>(); test_integral_imp<const T>(); test_integral_imp<volatile T>(); test_integral_imp<const volatile T>(); } int main() { test_integral<bool>(); test_integral<char>(); test_integral<signed char>(); test_integral<unsigned char>(); test_integral<wchar_t>(); test_integral<short>(); test_integral<unsigned short>(); test_integral<int>(); test_integral<unsigned int>(); test_integral<long>(); test_integral<unsigned long>(); test_integral<long long>(); test_integral<unsigned long long>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // integral #include <type_traits> template <class T> void test_integral_imp() { static_assert(!std::is_void<T>::value, ""); static_assert( std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_integral() { test_integral_imp<T>(); test_integral_imp<const T>(); test_integral_imp<volatile T>(); test_integral_imp<const volatile T>(); } int main() { test_integral<bool>(); test_integral<char>(); test_integral<signed char>(); test_integral<unsigned char>(); test_integral<wchar_t>(); test_integral<short>(); test_integral<unsigned short>(); test_integral<int>(); test_integral<unsigned int>(); test_integral<long>(); test_integral<unsigned long>(); test_integral<long long>(); test_integral<unsigned long long>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/lvalue_ref.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/lvalue_ref.pass.cpp
index 85d6bc494aa..581a8aeb1c3 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/lvalue_ref.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/lvalue_ref.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // lvalue_ref #include <type_traits> template <class T> void test_lvalue_ref() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert( std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } int main() { test_lvalue_ref<int&>(); test_lvalue_ref<const int&>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // lvalue_ref #include <type_traits> template <class T> void test_lvalue_ref() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert( std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } int main() { test_lvalue_ref<int&>(); test_lvalue_ref<const int&>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/member_function_pointer.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/member_function_pointer.pass.cpp
index 77c424f930d..2a66fa0a967 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/member_function_pointer.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/member_function_pointer.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // member_function_pointer #include <type_traits> template <class T> void test_member_function_pointer_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert( std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_member_function_pointer() { test_member_function_pointer_imp<T>(); test_member_function_pointer_imp<const T>(); test_member_function_pointer_imp<volatile T>(); test_member_function_pointer_imp<const volatile T>(); } class Class { }; int main() { test_member_function_pointer<void (Class::*)()>(); test_member_function_pointer<void (Class::*)(int)>(); test_member_function_pointer<void (Class::*)(int, char)>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // member_function_pointer #include <type_traits> template <class T> void test_member_function_pointer_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert( std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_member_function_pointer() { test_member_function_pointer_imp<T>(); test_member_function_pointer_imp<const T>(); test_member_function_pointer_imp<volatile T>(); test_member_function_pointer_imp<const volatile T>(); } class Class { }; int main() { test_member_function_pointer<void (Class::*)()>(); test_member_function_pointer<void (Class::*)(int)>(); test_member_function_pointer<void (Class::*)(int, char)>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/member_object_pointer.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/member_object_pointer.pass.cpp
index 13a2577f983..ed9eff866af 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/member_object_pointer.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/member_object_pointer.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // member_object_pointer #include <type_traits> template <class T> void test_member_object_pointer_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert( std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_member_object_pointer() { test_member_object_pointer_imp<T>(); test_member_object_pointer_imp<const T>(); test_member_object_pointer_imp<volatile T>(); test_member_object_pointer_imp<const volatile T>(); } class Class { }; int main() { test_member_object_pointer<int Class::*>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // member_object_pointer #include <type_traits> template <class T> void test_member_object_pointer_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert( std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_member_object_pointer() { test_member_object_pointer_imp<T>(); test_member_object_pointer_imp<const T>(); test_member_object_pointer_imp<volatile T>(); test_member_object_pointer_imp<const volatile T>(); } class Class { }; int main() { test_member_object_pointer<int Class::*>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/pointer.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/pointer.pass.cpp
index 07d38f3840a..263e7388689 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/pointer.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/pointer.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // pointer #include <type_traits> template <class T> void test_pointer_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert( std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_pointer() { test_pointer_imp<T>(); test_pointer_imp<const T>(); test_pointer_imp<volatile T>(); test_pointer_imp<const volatile T>(); } int main() { test_pointer<void*>(); test_pointer<int*>(); test_pointer<const int*>(); test_pointer<void (*)(int)>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // pointer #include <type_traits> template <class T> void test_pointer_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert( std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_pointer() { test_pointer_imp<T>(); test_pointer_imp<const T>(); test_pointer_imp<volatile T>(); test_pointer_imp<const volatile T>(); } int main() { test_pointer<void*>(); test_pointer<int*>(); test_pointer<const int*>(); test_pointer<void (*)(int)>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp
index 0579b5a291b..91d7a6e0954 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // rvalue_ref #include <type_traits> template <class T> void test_rvalue_ref() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert( std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } int main() { #ifdef _LIBCPP_MOVE test_rvalue_ref<int&&>(); test_rvalue_ref<const int&&>(); #endif } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // rvalue_ref #include <type_traits> template <class T> void test_rvalue_ref() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert( std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } int main() { #ifdef _LIBCPP_MOVE test_rvalue_ref<int&&>(); test_rvalue_ref<const int&&>(); #endif } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/union.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/union.pass.cpp
index 644665e87ee..07c9729ff83 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/union.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/union.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // union #include <type_traits> template <class T> void test_union_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert( std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_union() { test_union_imp<T>(); test_union_imp<const T>(); test_union_imp<volatile T>(); test_union_imp<const volatile T>(); } union Union { int _; double __; }; int main() { test_union<Union>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // union #include <type_traits> template <class T> void test_union_imp() { static_assert(!std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert( std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_union() { test_union_imp<T>(); test_union_imp<const T>(); test_union_imp<volatile T>(); test_union_imp<const volatile T>(); } union Union { int _; double __; }; int main() { test_union<Union>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/void.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/void.pass.cpp
index a17e95b8741..cfcff70a923 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/void.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.cat/void.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // void #include <type_traits> template <class T> void test_void_imp() { static_assert( std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_void() { test_void_imp<T>(); test_void_imp<const T>(); test_void_imp<volatile T>(); test_void_imp<const volatile T>(); } int main() { test_void<void>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // void #include <type_traits> template <class T> void test_void_imp() { static_assert( std::is_void<T>::value, ""); static_assert(!std::is_integral<T>::value, ""); static_assert(!std::is_floating_point<T>::value, ""); static_assert(!std::is_array<T>::value, ""); static_assert(!std::is_pointer<T>::value, ""); static_assert(!std::is_lvalue_reference<T>::value, ""); static_assert(!std::is_rvalue_reference<T>::value, ""); static_assert(!std::is_member_object_pointer<T>::value, ""); static_assert(!std::is_member_function_pointer<T>::value, ""); static_assert(!std::is_enum<T>::value, ""); static_assert(!std::is_union<T>::value, ""); static_assert(!std::is_class<T>::value, ""); static_assert(!std::is_function<T>::value, ""); } template <class T> void test_void() { test_void_imp<T>(); test_void_imp<const T>(); test_void_imp<volatile T>(); test_void_imp<const volatile T>(); } int main() { test_void<void>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/array.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/array.pass.cpp
index a064eaabcd7..e521e45977d 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/array.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/array.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // array #include <type_traits> template <class T> void test_array_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_array() { test_array_imp<T>(); test_array_imp<const T>(); test_array_imp<volatile T>(); test_array_imp<const volatile T>(); } typedef char array[3]; typedef const char const_array[3]; typedef char incomplete_array[]; int main() { test_array<array>(); test_array<const_array>(); test_array<incomplete_array>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // array #include <type_traits> template <class T> void test_array_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_array() { test_array_imp<T>(); test_array_imp<const T>(); test_array_imp<volatile T>(); test_array_imp<const volatile T>(); } typedef char array[3]; typedef const char const_array[3]; typedef char incomplete_array[]; int main() { test_array<array>(); test_array<const_array>(); test_array<incomplete_array>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/class.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/class.pass.cpp
index a3ebad7010f..4ddf499d754 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/class.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/class.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // class #include <type_traits> template <class T> void test_class_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_class() { test_class_imp<T>(); test_class_imp<const T>(); test_class_imp<volatile T>(); test_class_imp<const volatile T>(); } class Class { int _; double __; }; int main() { test_class<Class>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // class #include <type_traits> template <class T> void test_class_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_class() { test_class_imp<T>(); test_class_imp<const T>(); test_class_imp<volatile T>(); test_class_imp<const volatile T>(); } class Class { int _; double __; }; int main() { test_class<Class>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/enum.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/enum.pass.cpp
index e6a30b82ee2..cdd87e84c7e 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/enum.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/enum.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // enum #include <type_traits> template <class T> void test_enum_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert( std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_enum() { test_enum_imp<T>(); test_enum_imp<const T>(); test_enum_imp<volatile T>(); test_enum_imp<const volatile T>(); } enum Enum {zero, one}; int main() { test_enum<Enum>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // enum #include <type_traits> template <class T> void test_enum_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert( std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_enum() { test_enum_imp<T>(); test_enum_imp<const T>(); test_enum_imp<volatile T>(); test_enum_imp<const volatile T>(); } enum Enum {zero, one}; int main() { test_enum<Enum>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/floating_point.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/floating_point.pass.cpp
index 35752ea99d1..d5d06eba72f 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/floating_point.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/floating_point.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // floating_point #include <type_traits> template <class T> void test_floating_point_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert( std::is_arithmetic<T>::value, ""); static_assert( std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert( std::is_scalar<T>::value, ""); static_assert(!std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_floating_point() { test_floating_point_imp<T>(); test_floating_point_imp<const T>(); test_floating_point_imp<volatile T>(); test_floating_point_imp<const volatile T>(); } int main() { test_floating_point<float>(); test_floating_point<double>(); test_floating_point<long double>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // floating_point #include <type_traits> template <class T> void test_floating_point_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert( std::is_arithmetic<T>::value, ""); static_assert( std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert( std::is_scalar<T>::value, ""); static_assert(!std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_floating_point() { test_floating_point_imp<T>(); test_floating_point_imp<const T>(); test_floating_point_imp<volatile T>(); test_floating_point_imp<const volatile T>(); } int main() { test_floating_point<float>(); test_floating_point<double>(); test_floating_point<long double>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/function.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/function.pass.cpp
index d625c53980f..f67fd8f3606 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/function.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/function.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // function #include <type_traits> template <class T> void test_function_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert(!std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_function() { test_function_imp<T>(); test_function_imp<const T>(); test_function_imp<volatile T>(); test_function_imp<const volatile T>(); } int main() { test_function<void ()>(); test_function<void (int)>(); test_function<int (double)>(); test_function<int (double, char)>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // function #include <type_traits> template <class T> void test_function_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert(!std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_function() { test_function_imp<T>(); test_function_imp<const T>(); test_function_imp<volatile T>(); test_function_imp<const volatile T>(); } int main() { test_function<void ()>(); test_function<void (int)>(); test_function<int (double)>(); test_function<int (double, char)>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/integral.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/integral.pass.cpp
index c11d5b802c9..12c72ee5a6a 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/integral.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/integral.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // integral #include <type_traits> template <class T> void test_integral_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert( std::is_arithmetic<T>::value, ""); static_assert( std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert( std::is_scalar<T>::value, ""); static_assert(!std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_integral() { test_integral_imp<T>(); test_integral_imp<const T>(); test_integral_imp<volatile T>(); test_integral_imp<const volatile T>(); } int main() { test_integral<bool>(); test_integral<char>(); test_integral<signed char>(); test_integral<unsigned char>(); test_integral<wchar_t>(); test_integral<short>(); test_integral<unsigned short>(); test_integral<int>(); test_integral<unsigned int>(); test_integral<long>(); test_integral<unsigned long>(); test_integral<long long>(); test_integral<unsigned long long>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // integral #include <type_traits> template <class T> void test_integral_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert( std::is_arithmetic<T>::value, ""); static_assert( std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert( std::is_scalar<T>::value, ""); static_assert(!std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_integral() { test_integral_imp<T>(); test_integral_imp<const T>(); test_integral_imp<volatile T>(); test_integral_imp<const volatile T>(); } int main() { test_integral<bool>(); test_integral<char>(); test_integral<signed char>(); test_integral<unsigned char>(); test_integral<wchar_t>(); test_integral<short>(); test_integral<unsigned short>(); test_integral<int>(); test_integral<unsigned int>(); test_integral<long>(); test_integral<unsigned long>(); test_integral<long long>(); test_integral<unsigned long long>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/lvalue_ref.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/lvalue_ref.pass.cpp
index 363c5268091..db749b0e8b8 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/lvalue_ref.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/lvalue_ref.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // lvalue_ref #include <type_traits> template <class T> void test_lvalue_ref() { static_assert( std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert(!std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } int main() { test_lvalue_ref<int&>(); test_lvalue_ref<const int&>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // lvalue_ref #include <type_traits> template <class T> void test_lvalue_ref() { static_assert( std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert(!std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } int main() { test_lvalue_ref<int&>(); test_lvalue_ref<const int&>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/member_function_pointer.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/member_function_pointer.pass.cpp
index 579a803c696..9e8f15973f0 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/member_function_pointer.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/member_function_pointer.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // member_function_pointer #include <type_traits> template <class T> void test_member_function_pointer_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert( std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert( std::is_member_pointer<T>::value, ""); } template <class T> void test_member_function_pointer() { test_member_function_pointer_imp<T>(); test_member_function_pointer_imp<const T>(); test_member_function_pointer_imp<volatile T>(); test_member_function_pointer_imp<const volatile T>(); } class Class { }; int main() { test_member_function_pointer<void (Class::*)()>(); test_member_function_pointer<void (Class::*)(int)>(); test_member_function_pointer<void (Class::*)(int, char)>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // member_function_pointer #include <type_traits> template <class T> void test_member_function_pointer_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert( std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert( std::is_member_pointer<T>::value, ""); } template <class T> void test_member_function_pointer() { test_member_function_pointer_imp<T>(); test_member_function_pointer_imp<const T>(); test_member_function_pointer_imp<volatile T>(); test_member_function_pointer_imp<const volatile T>(); } class Class { }; int main() { test_member_function_pointer<void (Class::*)()>(); test_member_function_pointer<void (Class::*)(int)>(); test_member_function_pointer<void (Class::*)(int, char)>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/member_object_pointer.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/member_object_pointer.pass.cpp
index 685a985dba4..6af0606f02e 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/member_object_pointer.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/member_object_pointer.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // member_object_pointer #include <type_traits> template <class T> void test_member_object_pointer_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert( std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert( std::is_member_pointer<T>::value, ""); } template <class T> void test_member_object_pointer() { test_member_object_pointer_imp<T>(); test_member_object_pointer_imp<const T>(); test_member_object_pointer_imp<volatile T>(); test_member_object_pointer_imp<const volatile T>(); } class Class { }; int main() { test_member_object_pointer<int Class::*>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // member_object_pointer #include <type_traits> template <class T> void test_member_object_pointer_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert( std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert( std::is_member_pointer<T>::value, ""); } template <class T> void test_member_object_pointer() { test_member_object_pointer_imp<T>(); test_member_object_pointer_imp<const T>(); test_member_object_pointer_imp<volatile T>(); test_member_object_pointer_imp<const volatile T>(); } class Class { }; int main() { test_member_object_pointer<int Class::*>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/pointer.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/pointer.pass.cpp
index 88721696f56..ccc936b13ce 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/pointer.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/pointer.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // pointer #include <type_traits> template <class T> void test_pointer_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert( std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_pointer() { test_pointer_imp<T>(); test_pointer_imp<const T>(); test_pointer_imp<volatile T>(); test_pointer_imp<const volatile T>(); } int main() { test_pointer<void*>(); test_pointer<int*>(); test_pointer<const int*>(); test_pointer<void (*)(int)>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // pointer #include <type_traits> template <class T> void test_pointer_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert( std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_pointer() { test_pointer_imp<T>(); test_pointer_imp<const T>(); test_pointer_imp<volatile T>(); test_pointer_imp<const volatile T>(); } int main() { test_pointer<void*>(); test_pointer<int*>(); test_pointer<const int*>(); test_pointer<void (*)(int)>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp
index f7bef396842..7233ba99f3f 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // rvalue_ref #include <type_traits> template <class T> void test_rvalue_ref() { static_assert(std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert(!std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } int main() { #ifdef _LIBCPP_MOVE test_rvalue_ref<int&&>(); test_rvalue_ref<const int&&>(); #endif } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // rvalue_ref #include <type_traits> template <class T> void test_rvalue_ref() { static_assert(std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert(!std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } int main() { #ifdef _LIBCPP_MOVE test_rvalue_ref<int&&>(); test_rvalue_ref<const int&&>(); #endif } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/union.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/union.pass.cpp
index 535a181e887..8eb85706490 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/union.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/union.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // union #include <type_traits> template <class T> void test_union_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_union() { test_union_imp<T>(); test_union_imp<const T>(); test_union_imp<volatile T>(); test_union_imp<const volatile T>(); } union Union { int _; double __; }; int main() { test_union<Union>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // union #include <type_traits> template <class T> void test_union_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert(!std::is_fundamental<T>::value, ""); static_assert( std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert( std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_union() { test_union_imp<T>(); test_union_imp<const T>(); test_union_imp<volatile T>(); test_union_imp<const volatile T>(); } union Union { int _; double __; }; int main() { test_union<Union>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/void.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/void.pass.cpp
index 8abad5ac9dd..88c2fa8a0e7 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/void.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.comp/void.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // void #include <type_traits> template <class T> void test_void_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert( std::is_fundamental<T>::value, ""); static_assert(!std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert(!std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_void() { test_void_imp<T>(); test_void_imp<const T>(); test_void_imp<volatile T>(); test_void_imp<const volatile T>(); } int main() { test_void<void>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // void #include <type_traits> template <class T> void test_void_imp() { static_assert(!std::is_reference<T>::value, ""); static_assert(!std::is_arithmetic<T>::value, ""); static_assert( std::is_fundamental<T>::value, ""); static_assert(!std::is_object<T>::value, ""); static_assert(!std::is_scalar<T>::value, ""); static_assert(!std::is_compound<T>::value, ""); static_assert(!std::is_member_pointer<T>::value, ""); } template <class T> void test_void() { test_void_imp<T>(); test_void_imp<const T>(); test_void_imp<volatile T>(); test_void_imp<const volatile T>(); } int main() { test_void<void>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/alignment_of.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/alignment_of.pass.cpp
index f44396918b3..093ca33c98d 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/alignment_of.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/alignment_of.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // alignment_of #include <type_traits> template <class T, unsigned A> void test_alignment_of() { static_assert( std::alignment_of<T>::value == A, ""); static_assert( std::alignment_of<const T>::value == A, ""); static_assert( std::alignment_of<volatile T>::value == A, ""); static_assert( std::alignment_of<const volatile T>::value == A, ""); } class Class { public: ~Class(); }; int main() { test_alignment_of<int&, sizeof(long) == 4 ? 4 : 8>(); test_alignment_of<Class, 1>(); test_alignment_of<int*, sizeof(long) == 4 ? 4 : 8>(); test_alignment_of<const int*, sizeof(long) == 4 ? 4 : 8>(); test_alignment_of<char[3], 1>(); test_alignment_of<int, 4>(); test_alignment_of<double, sizeof(long) == 4 ? 4 : 8>(); test_alignment_of<bool, 1>(); test_alignment_of<unsigned, 4>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // alignment_of #include <type_traits> template <class T, unsigned A> void test_alignment_of() { static_assert( std::alignment_of<T>::value == A, ""); static_assert( std::alignment_of<const T>::value == A, ""); static_assert( std::alignment_of<volatile T>::value == A, ""); static_assert( std::alignment_of<const volatile T>::value == A, ""); } class Class { public: ~Class(); }; int main() { test_alignment_of<int&, sizeof(long) == 4 ? 4 : 8>(); test_alignment_of<Class, 1>(); test_alignment_of<int*, sizeof(long) == 4 ? 4 : 8>(); test_alignment_of<const int*, sizeof(long) == 4 ? 4 : 8>(); test_alignment_of<char[3], 1>(); test_alignment_of<int, 4>(); test_alignment_of<double, sizeof(long) == 4 ? 4 : 8>(); test_alignment_of<bool, 1>(); test_alignment_of<unsigned, 4>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/extent.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/extent.pass.cpp
index 8deb5bf3f5a..d149eb3d9d3 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/extent.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/extent.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // extent #include <type_traits> template <class T, unsigned A> void test_extent() { static_assert((std::extent<T>::value == A), ""); static_assert((std::extent<const T>::value == A), ""); static_assert((std::extent<volatile T>::value == A), ""); static_assert((std::extent<const volatile T>::value == A), ""); } template <class T, unsigned A> void test_extent1() { static_assert((std::extent<T, 1>::value == A), ""); static_assert((std::extent<const T, 1>::value == A), ""); static_assert((std::extent<volatile T, 1>::value == A), ""); static_assert((std::extent<const volatile T, 1>::value == A), ""); } class Class { public: ~Class(); }; int main() { test_extent<void, 0>(); test_extent<int&, 0>(); test_extent<Class, 0>(); test_extent<int*, 0>(); test_extent<const int*, 0>(); test_extent<int, 0>(); test_extent<double, 0>(); test_extent<bool, 0>(); test_extent<unsigned, 0>(); test_extent<int[2], 2>(); test_extent<int[2][4], 2>(); test_extent<int[][4], 0>(); test_extent1<int, 0>(); test_extent1<int[2], 0>(); test_extent1<int[2][4], 4>(); test_extent1<int[][4], 4>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // extent #include <type_traits> template <class T, unsigned A> void test_extent() { static_assert((std::extent<T>::value == A), ""); static_assert((std::extent<const T>::value == A), ""); static_assert((std::extent<volatile T>::value == A), ""); static_assert((std::extent<const volatile T>::value == A), ""); } template <class T, unsigned A> void test_extent1() { static_assert((std::extent<T, 1>::value == A), ""); static_assert((std::extent<const T, 1>::value == A), ""); static_assert((std::extent<volatile T, 1>::value == A), ""); static_assert((std::extent<const volatile T, 1>::value == A), ""); } class Class { public: ~Class(); }; int main() { test_extent<void, 0>(); test_extent<int&, 0>(); test_extent<Class, 0>(); test_extent<int*, 0>(); test_extent<const int*, 0>(); test_extent<int, 0>(); test_extent<double, 0>(); test_extent<bool, 0>(); test_extent<unsigned, 0>(); test_extent<int[2], 2>(); test_extent<int[2][4], 2>(); test_extent<int[][4], 0>(); test_extent1<int, 0>(); test_extent1<int[2], 0>(); test_extent1<int[2][4], 4>(); test_extent1<int[][4], 4>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_copy_assign.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_copy_assign.pass.cpp
index 0c9c6fc6d68..787cd79c3e2 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_copy_assign.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_copy_assign.pass.cpp
@@ -1,6 +1,6 @@
//===----------------------------------------------------------------------===//
//
-// ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure
+// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_copy_constructor.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_copy_constructor.pass.cpp
index 1223249337d..7acb69509fe 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_copy_constructor.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_copy_constructor.pass.cpp
@@ -1,6 +1,6 @@
//===----------------------------------------------------------------------===//
//
-// ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure
+// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_default_constructor.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_default_constructor.pass.cpp
index 2d48cdbac1f..d253a821e76 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_default_constructor.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_default_constructor.pass.cpp
@@ -1,6 +1,6 @@
//===----------------------------------------------------------------------===//
//
-// ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure
+// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_move_assign.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_move_assign.pass.cpp
index 926d3fd5215..0c115686df9 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_move_assign.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_move_assign.pass.cpp
@@ -1,6 +1,6 @@
//===----------------------------------------------------------------------===//
//
-// ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure
+// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_move_constructor.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_move_constructor.pass.cpp
index 26b060cbdd4..1f5b5632633 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_move_constructor.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_move_constructor.pass.cpp
@@ -1,6 +1,6 @@
//===----------------------------------------------------------------------===//
//
-// ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure
+// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_copy_assign.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_copy_assign.pass.cpp
index a08ac8f6ce3..31a5a7c1c1f 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_copy_assign.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_copy_assign.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_nothrow_copy_assign #include <type_traits> template <class T> void test_has_nothrow_assign() { static_assert( std::has_nothrow_copy_assign<T>::value, ""); static_assert(!std::has_nothrow_copy_assign<const T>::value, ""); static_assert( std::has_nothrow_copy_assign<volatile T>::value, ""); static_assert(!std::has_nothrow_copy_assign<const volatile T>::value, ""); } template <class T> void test_has_not_nothrow_assign() { static_assert(!std::has_nothrow_copy_assign<T>::value, ""); static_assert(!std::has_nothrow_copy_assign<const T>::value, ""); static_assert(!std::has_nothrow_copy_assign<volatile T>::value, ""); static_assert(!std::has_nothrow_copy_assign<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A& operator=(const A&); }; int main() { test_has_not_nothrow_assign<void>(); test_has_not_nothrow_assign<A>(); test_has_not_nothrow_assign<int&>(); test_has_nothrow_assign<Union>(); test_has_nothrow_assign<Abstract>(); test_has_nothrow_assign<Empty>(); test_has_nothrow_assign<int>(); test_has_nothrow_assign<double>(); test_has_nothrow_assign<int*>(); test_has_nothrow_assign<const int*>(); test_has_nothrow_assign<char[3]>(); test_has_nothrow_assign<char[3]>(); test_has_nothrow_assign<NotEmpty>(); test_has_nothrow_assign<bit_zero>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_nothrow_copy_assign #include <type_traits> template <class T> void test_has_nothrow_assign() { static_assert( std::has_nothrow_copy_assign<T>::value, ""); static_assert(!std::has_nothrow_copy_assign<const T>::value, ""); static_assert( std::has_nothrow_copy_assign<volatile T>::value, ""); static_assert(!std::has_nothrow_copy_assign<const volatile T>::value, ""); } template <class T> void test_has_not_nothrow_assign() { static_assert(!std::has_nothrow_copy_assign<T>::value, ""); static_assert(!std::has_nothrow_copy_assign<const T>::value, ""); static_assert(!std::has_nothrow_copy_assign<volatile T>::value, ""); static_assert(!std::has_nothrow_copy_assign<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A& operator=(const A&); }; int main() { test_has_not_nothrow_assign<void>(); test_has_not_nothrow_assign<A>(); test_has_not_nothrow_assign<int&>(); test_has_nothrow_assign<Union>(); test_has_nothrow_assign<Abstract>(); test_has_nothrow_assign<Empty>(); test_has_nothrow_assign<int>(); test_has_nothrow_assign<double>(); test_has_nothrow_assign<int*>(); test_has_nothrow_assign<const int*>(); test_has_nothrow_assign<char[3]>(); test_has_nothrow_assign<char[3]>(); test_has_nothrow_assign<NotEmpty>(); test_has_nothrow_assign<bit_zero>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_copy_constructor.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_copy_constructor.pass.cpp
index 2561939a45c..1a9beaa5d77 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_copy_constructor.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_copy_constructor.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_nothrow_copy_constructor #include <type_traits> template <class T> void test_has_nothrow_copy_constructor() { static_assert( std::has_nothrow_copy_constructor<T>::value, ""); static_assert( std::has_nothrow_copy_constructor<const T>::value, ""); static_assert( std::has_nothrow_copy_constructor<volatile T>::value, ""); static_assert( std::has_nothrow_copy_constructor<const volatile T>::value, ""); } template <class T> void test_has_not_nothrow_copy_constructor() { static_assert(!std::has_nothrow_copy_constructor<T>::value, ""); static_assert(!std::has_nothrow_copy_constructor<const T>::value, ""); static_assert(!std::has_nothrow_copy_constructor<volatile T>::value, ""); static_assert(!std::has_nothrow_copy_constructor<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A(const A&); }; int main() { test_has_not_nothrow_copy_constructor<void>(); test_has_not_nothrow_copy_constructor<A>(); test_has_not_nothrow_copy_constructor<int&>(); test_has_nothrow_copy_constructor<Union>(); test_has_nothrow_copy_constructor<Abstract>(); test_has_nothrow_copy_constructor<Empty>(); test_has_nothrow_copy_constructor<int>(); test_has_nothrow_copy_constructor<double>(); test_has_nothrow_copy_constructor<int*>(); test_has_nothrow_copy_constructor<const int*>(); test_has_nothrow_copy_constructor<char[3]>(); test_has_nothrow_copy_constructor<char[3]>(); test_has_nothrow_copy_constructor<NotEmpty>(); test_has_nothrow_copy_constructor<bit_zero>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_nothrow_copy_constructor #include <type_traits> template <class T> void test_has_nothrow_copy_constructor() { static_assert( std::has_nothrow_copy_constructor<T>::value, ""); static_assert( std::has_nothrow_copy_constructor<const T>::value, ""); static_assert( std::has_nothrow_copy_constructor<volatile T>::value, ""); static_assert( std::has_nothrow_copy_constructor<const volatile T>::value, ""); } template <class T> void test_has_not_nothrow_copy_constructor() { static_assert(!std::has_nothrow_copy_constructor<T>::value, ""); static_assert(!std::has_nothrow_copy_constructor<const T>::value, ""); static_assert(!std::has_nothrow_copy_constructor<volatile T>::value, ""); static_assert(!std::has_nothrow_copy_constructor<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A(const A&); }; int main() { test_has_not_nothrow_copy_constructor<void>(); test_has_not_nothrow_copy_constructor<A>(); test_has_not_nothrow_copy_constructor<int&>(); test_has_nothrow_copy_constructor<Union>(); test_has_nothrow_copy_constructor<Abstract>(); test_has_nothrow_copy_constructor<Empty>(); test_has_nothrow_copy_constructor<int>(); test_has_nothrow_copy_constructor<double>(); test_has_nothrow_copy_constructor<int*>(); test_has_nothrow_copy_constructor<const int*>(); test_has_nothrow_copy_constructor<char[3]>(); test_has_nothrow_copy_constructor<char[3]>(); test_has_nothrow_copy_constructor<NotEmpty>(); test_has_nothrow_copy_constructor<bit_zero>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_default_constructor.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_default_constructor.pass.cpp
index 6e608ee70fe..2a4e81e5de4 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_default_constructor.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_default_constructor.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_nothrow_default_constructor #include <type_traits> template <class T> void test_has_nothrow_default_constructor() { static_assert( std::has_nothrow_default_constructor<T>::value, ""); static_assert( std::has_nothrow_default_constructor<const T>::value, ""); static_assert( std::has_nothrow_default_constructor<volatile T>::value, ""); static_assert( std::has_nothrow_default_constructor<const volatile T>::value, ""); } template <class T> void test_has_not_nothrow_default_constructor() { static_assert(!std::has_nothrow_default_constructor<T>::value, ""); static_assert(!std::has_nothrow_default_constructor<const T>::value, ""); static_assert(!std::has_nothrow_default_constructor<volatile T>::value, ""); static_assert(!std::has_nothrow_default_constructor<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A(); }; int main() { test_has_not_nothrow_default_constructor<void>(); test_has_not_nothrow_default_constructor<int&>(); test_has_not_nothrow_default_constructor<A>(); test_has_nothrow_default_constructor<Union>(); test_has_nothrow_default_constructor<Abstract>(); test_has_nothrow_default_constructor<Empty>(); test_has_nothrow_default_constructor<int>(); test_has_nothrow_default_constructor<double>(); test_has_nothrow_default_constructor<int*>(); test_has_nothrow_default_constructor<const int*>(); test_has_nothrow_default_constructor<char[3]>(); test_has_nothrow_default_constructor<char[3]>(); test_has_nothrow_default_constructor<NotEmpty>(); test_has_nothrow_default_constructor<bit_zero>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_nothrow_default_constructor #include <type_traits> template <class T> void test_has_nothrow_default_constructor() { static_assert( std::has_nothrow_default_constructor<T>::value, ""); static_assert( std::has_nothrow_default_constructor<const T>::value, ""); static_assert( std::has_nothrow_default_constructor<volatile T>::value, ""); static_assert( std::has_nothrow_default_constructor<const volatile T>::value, ""); } template <class T> void test_has_not_nothrow_default_constructor() { static_assert(!std::has_nothrow_default_constructor<T>::value, ""); static_assert(!std::has_nothrow_default_constructor<const T>::value, ""); static_assert(!std::has_nothrow_default_constructor<volatile T>::value, ""); static_assert(!std::has_nothrow_default_constructor<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A(); }; int main() { test_has_not_nothrow_default_constructor<void>(); test_has_not_nothrow_default_constructor<int&>(); test_has_not_nothrow_default_constructor<A>(); test_has_nothrow_default_constructor<Union>(); test_has_nothrow_default_constructor<Abstract>(); test_has_nothrow_default_constructor<Empty>(); test_has_nothrow_default_constructor<int>(); test_has_nothrow_default_constructor<double>(); test_has_nothrow_default_constructor<int*>(); test_has_nothrow_default_constructor<const int*>(); test_has_nothrow_default_constructor<char[3]>(); test_has_nothrow_default_constructor<char[3]>(); test_has_nothrow_default_constructor<NotEmpty>(); test_has_nothrow_default_constructor<bit_zero>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_move_assign.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_move_assign.pass.cpp
index e1ed665d01a..a0cd0439768 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_move_assign.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_move_assign.pass.cpp
@@ -1,6 +1,6 @@
//===----------------------------------------------------------------------===//
//
-// ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure
+// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_move_constructor.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_move_constructor.pass.cpp
index 1dfa5f1b15d..fb4e14f9c69 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_move_constructor.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_nothrow_move_constructor.pass.cpp
@@ -1,6 +1,6 @@
//===----------------------------------------------------------------------===//
//
-// ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure
+// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_copy_assign.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_copy_assign.pass.cpp
index 9bb44c1cb40..06419502736 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_copy_assign.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_copy_assign.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_trivial_copy_assign #include <type_traits> template <class T> void test_has_trivial_assign() { static_assert( std::has_trivial_copy_assign<T>::value, ""); static_assert(!std::has_trivial_copy_assign<const T>::value, ""); static_assert( std::has_trivial_copy_assign<volatile T>::value, ""); static_assert(!std::has_trivial_copy_assign<const volatile T>::value, ""); } template <class T> void test_has_not_trivial_assign() { static_assert(!std::has_trivial_copy_assign<T>::value, ""); static_assert(!std::has_trivial_copy_assign<const T>::value, ""); static_assert(!std::has_trivial_copy_assign<volatile T>::value, ""); static_assert(!std::has_trivial_copy_assign<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A& operator=(const A&); }; int main() { test_has_not_trivial_assign<void>(); test_has_not_trivial_assign<A>(); test_has_not_trivial_assign<int&>(); test_has_trivial_assign<Union>(); test_has_trivial_assign<Abstract>(); test_has_trivial_assign<Empty>(); test_has_trivial_assign<int>(); test_has_trivial_assign<double>(); test_has_trivial_assign<int*>(); test_has_trivial_assign<const int*>(); test_has_trivial_assign<char[3]>(); test_has_trivial_assign<char[3]>(); test_has_trivial_assign<NotEmpty>(); test_has_trivial_assign<bit_zero>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_trivial_copy_assign #include <type_traits> template <class T> void test_has_trivial_assign() { static_assert( std::has_trivial_copy_assign<T>::value, ""); static_assert(!std::has_trivial_copy_assign<const T>::value, ""); static_assert( std::has_trivial_copy_assign<volatile T>::value, ""); static_assert(!std::has_trivial_copy_assign<const volatile T>::value, ""); } template <class T> void test_has_not_trivial_assign() { static_assert(!std::has_trivial_copy_assign<T>::value, ""); static_assert(!std::has_trivial_copy_assign<const T>::value, ""); static_assert(!std::has_trivial_copy_assign<volatile T>::value, ""); static_assert(!std::has_trivial_copy_assign<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A& operator=(const A&); }; int main() { test_has_not_trivial_assign<void>(); test_has_not_trivial_assign<A>(); test_has_not_trivial_assign<int&>(); test_has_trivial_assign<Union>(); test_has_trivial_assign<Abstract>(); test_has_trivial_assign<Empty>(); test_has_trivial_assign<int>(); test_has_trivial_assign<double>(); test_has_trivial_assign<int*>(); test_has_trivial_assign<const int*>(); test_has_trivial_assign<char[3]>(); test_has_trivial_assign<char[3]>(); test_has_trivial_assign<NotEmpty>(); test_has_trivial_assign<bit_zero>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_copy_constructor.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_copy_constructor.pass.cpp
index e142ae75a14..711d9c3915a 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_copy_constructor.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_copy_constructor.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_trivial_copy_constructor #include <type_traits> template <class T> void test_has_trivial_copy_constructor() { static_assert( std::has_trivial_copy_constructor<T>::value, ""); static_assert( std::has_trivial_copy_constructor<const T>::value, ""); static_assert( std::has_trivial_copy_constructor<volatile T>::value, ""); static_assert( std::has_trivial_copy_constructor<const volatile T>::value, ""); } template <class T> void test_has_not_trivial_copy_constructor() { static_assert(!std::has_trivial_copy_constructor<T>::value, ""); static_assert(!std::has_trivial_copy_constructor<const T>::value, ""); static_assert(!std::has_trivial_copy_constructor<volatile T>::value, ""); static_assert(!std::has_trivial_copy_constructor<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A(const A&); }; int main() { test_has_not_trivial_copy_constructor<void>(); test_has_not_trivial_copy_constructor<A>(); test_has_not_trivial_copy_constructor<int&>(); test_has_trivial_copy_constructor<Union>(); test_has_trivial_copy_constructor<Abstract>(); test_has_trivial_copy_constructor<Empty>(); test_has_trivial_copy_constructor<int>(); test_has_trivial_copy_constructor<double>(); test_has_trivial_copy_constructor<int*>(); test_has_trivial_copy_constructor<const int*>(); test_has_trivial_copy_constructor<char[3]>(); test_has_trivial_copy_constructor<char[3]>(); test_has_trivial_copy_constructor<NotEmpty>(); test_has_trivial_copy_constructor<bit_zero>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_trivial_copy_constructor #include <type_traits> template <class T> void test_has_trivial_copy_constructor() { static_assert( std::has_trivial_copy_constructor<T>::value, ""); static_assert( std::has_trivial_copy_constructor<const T>::value, ""); static_assert( std::has_trivial_copy_constructor<volatile T>::value, ""); static_assert( std::has_trivial_copy_constructor<const volatile T>::value, ""); } template <class T> void test_has_not_trivial_copy_constructor() { static_assert(!std::has_trivial_copy_constructor<T>::value, ""); static_assert(!std::has_trivial_copy_constructor<const T>::value, ""); static_assert(!std::has_trivial_copy_constructor<volatile T>::value, ""); static_assert(!std::has_trivial_copy_constructor<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A(const A&); }; int main() { test_has_not_trivial_copy_constructor<void>(); test_has_not_trivial_copy_constructor<A>(); test_has_not_trivial_copy_constructor<int&>(); test_has_trivial_copy_constructor<Union>(); test_has_trivial_copy_constructor<Abstract>(); test_has_trivial_copy_constructor<Empty>(); test_has_trivial_copy_constructor<int>(); test_has_trivial_copy_constructor<double>(); test_has_trivial_copy_constructor<int*>(); test_has_trivial_copy_constructor<const int*>(); test_has_trivial_copy_constructor<char[3]>(); test_has_trivial_copy_constructor<char[3]>(); test_has_trivial_copy_constructor<NotEmpty>(); test_has_trivial_copy_constructor<bit_zero>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_default_constructor.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_default_constructor.pass.cpp
index 807e2e3a291..841fb37ec7c 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_default_constructor.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_default_constructor.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_trivial_default_constructor #include <type_traits> template <class T> void test_has_trivial_default_constructor() { static_assert( std::has_trivial_default_constructor<T>::value, ""); static_assert( std::has_trivial_default_constructor<const T>::value, ""); static_assert( std::has_trivial_default_constructor<volatile T>::value, ""); static_assert( std::has_trivial_default_constructor<const volatile T>::value, ""); } template <class T> void test_has_not_trivial_default_constructor() { static_assert(!std::has_trivial_default_constructor<T>::value, ""); static_assert(!std::has_trivial_default_constructor<const T>::value, ""); static_assert(!std::has_trivial_default_constructor<volatile T>::value, ""); static_assert(!std::has_trivial_default_constructor<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A(); }; int main() { test_has_not_trivial_default_constructor<void>(); test_has_not_trivial_default_constructor<int&>(); test_has_not_trivial_default_constructor<A>(); test_has_trivial_default_constructor<Union>(); test_has_trivial_default_constructor<Abstract>(); test_has_trivial_default_constructor<Empty>(); test_has_trivial_default_constructor<int>(); test_has_trivial_default_constructor<double>(); test_has_trivial_default_constructor<int*>(); test_has_trivial_default_constructor<const int*>(); test_has_trivial_default_constructor<char[3]>(); test_has_trivial_default_constructor<char[3]>(); test_has_trivial_default_constructor<NotEmpty>(); test_has_trivial_default_constructor<bit_zero>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_trivial_default_constructor #include <type_traits> template <class T> void test_has_trivial_default_constructor() { static_assert( std::has_trivial_default_constructor<T>::value, ""); static_assert( std::has_trivial_default_constructor<const T>::value, ""); static_assert( std::has_trivial_default_constructor<volatile T>::value, ""); static_assert( std::has_trivial_default_constructor<const volatile T>::value, ""); } template <class T> void test_has_not_trivial_default_constructor() { static_assert(!std::has_trivial_default_constructor<T>::value, ""); static_assert(!std::has_trivial_default_constructor<const T>::value, ""); static_assert(!std::has_trivial_default_constructor<volatile T>::value, ""); static_assert(!std::has_trivial_default_constructor<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A(); }; int main() { test_has_not_trivial_default_constructor<void>(); test_has_not_trivial_default_constructor<int&>(); test_has_not_trivial_default_constructor<A>(); test_has_trivial_default_constructor<Union>(); test_has_trivial_default_constructor<Abstract>(); test_has_trivial_default_constructor<Empty>(); test_has_trivial_default_constructor<int>(); test_has_trivial_default_constructor<double>(); test_has_trivial_default_constructor<int*>(); test_has_trivial_default_constructor<const int*>(); test_has_trivial_default_constructor<char[3]>(); test_has_trivial_default_constructor<char[3]>(); test_has_trivial_default_constructor<NotEmpty>(); test_has_trivial_default_constructor<bit_zero>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_destructor.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_destructor.pass.cpp
index cacb0754944..b0b09d9c8a9 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_destructor.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_destructor.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_trivial_destructor #include <type_traits> template <class T> void test_has_trivial_destructor() { static_assert( std::has_trivial_destructor<T>::value, ""); static_assert( std::has_trivial_destructor<const T>::value, ""); static_assert( std::has_trivial_destructor<volatile T>::value, ""); static_assert( std::has_trivial_destructor<const volatile T>::value, ""); } template <class T> void test_has_not_trivial_destructor() { static_assert(!std::has_trivial_destructor<T>::value, ""); static_assert(!std::has_trivial_destructor<const T>::value, ""); static_assert(!std::has_trivial_destructor<volatile T>::value, ""); static_assert(!std::has_trivial_destructor<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { ~A(); }; int main() { test_has_not_trivial_destructor<void>(); test_has_not_trivial_destructor<A>(); test_has_not_trivial_destructor<Abstract>(); test_has_not_trivial_destructor<NotEmpty>(); test_has_trivial_destructor<int&>(); test_has_trivial_destructor<Union>(); test_has_trivial_destructor<Empty>(); test_has_trivial_destructor<int>(); test_has_trivial_destructor<double>(); test_has_trivial_destructor<int*>(); test_has_trivial_destructor<const int*>(); test_has_trivial_destructor<char[3]>(); test_has_trivial_destructor<char[3]>(); test_has_trivial_destructor<bit_zero>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_trivial_destructor #include <type_traits> template <class T> void test_has_trivial_destructor() { static_assert( std::has_trivial_destructor<T>::value, ""); static_assert( std::has_trivial_destructor<const T>::value, ""); static_assert( std::has_trivial_destructor<volatile T>::value, ""); static_assert( std::has_trivial_destructor<const volatile T>::value, ""); } template <class T> void test_has_not_trivial_destructor() { static_assert(!std::has_trivial_destructor<T>::value, ""); static_assert(!std::has_trivial_destructor<const T>::value, ""); static_assert(!std::has_trivial_destructor<volatile T>::value, ""); static_assert(!std::has_trivial_destructor<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { ~A(); }; int main() { test_has_not_trivial_destructor<void>(); test_has_not_trivial_destructor<A>(); test_has_not_trivial_destructor<Abstract>(); test_has_not_trivial_destructor<NotEmpty>(); test_has_trivial_destructor<int&>(); test_has_trivial_destructor<Union>(); test_has_trivial_destructor<Empty>(); test_has_trivial_destructor<int>(); test_has_trivial_destructor<double>(); test_has_trivial_destructor<int*>(); test_has_trivial_destructor<const int*>(); test_has_trivial_destructor<char[3]>(); test_has_trivial_destructor<char[3]>(); test_has_trivial_destructor<bit_zero>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_move_assign.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_move_assign.pass.cpp
index 9ca95a40c26..c1d2246f449 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_move_assign.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_move_assign.pass.cpp
@@ -1,6 +1,6 @@
//===----------------------------------------------------------------------===//
//
-// ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure
+// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_move_constructor.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_move_constructor.pass.cpp
index 245c5892cf2..d5068f549d3 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_move_constructor.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_trivial_move_constructor.pass.cpp
@@ -1,6 +1,6 @@
//===----------------------------------------------------------------------===//
//
-// ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure
+// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_virtual_destructor.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_virtual_destructor.pass.cpp
index 7563806f0de..05198ba130d 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_virtual_destructor.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/has_virtual_destructor.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_virtual_destructor #include <type_traits> template <class T> void test_has_virtual_destructor() { static_assert( std::has_virtual_destructor<T>::value, ""); static_assert( std::has_virtual_destructor<const T>::value, ""); static_assert( std::has_virtual_destructor<volatile T>::value, ""); static_assert( std::has_virtual_destructor<const volatile T>::value, ""); } template <class T> void test_has_not_virtual_destructor() { static_assert(!std::has_virtual_destructor<T>::value, ""); static_assert(!std::has_virtual_destructor<const T>::value, ""); static_assert(!std::has_virtual_destructor<volatile T>::value, ""); static_assert(!std::has_virtual_destructor<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { ~A(); }; int main() { test_has_not_virtual_destructor<void>(); test_has_not_virtual_destructor<A>(); test_has_not_virtual_destructor<int&>(); test_has_not_virtual_destructor<Union>(); test_has_not_virtual_destructor<Empty>(); test_has_not_virtual_destructor<int>(); test_has_not_virtual_destructor<double>(); test_has_not_virtual_destructor<int*>(); test_has_not_virtual_destructor<const int*>(); test_has_not_virtual_destructor<char[3]>(); test_has_not_virtual_destructor<char[3]>(); test_has_not_virtual_destructor<bit_zero>(); test_has_virtual_destructor<Abstract>(); test_has_virtual_destructor<NotEmpty>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // has_virtual_destructor #include <type_traits> template <class T> void test_has_virtual_destructor() { static_assert( std::has_virtual_destructor<T>::value, ""); static_assert( std::has_virtual_destructor<const T>::value, ""); static_assert( std::has_virtual_destructor<volatile T>::value, ""); static_assert( std::has_virtual_destructor<const volatile T>::value, ""); } template <class T> void test_has_not_virtual_destructor() { static_assert(!std::has_virtual_destructor<T>::value, ""); static_assert(!std::has_virtual_destructor<const T>::value, ""); static_assert(!std::has_virtual_destructor<volatile T>::value, ""); static_assert(!std::has_virtual_destructor<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { ~A(); }; int main() { test_has_not_virtual_destructor<void>(); test_has_not_virtual_destructor<A>(); test_has_not_virtual_destructor<int&>(); test_has_not_virtual_destructor<Union>(); test_has_not_virtual_destructor<Empty>(); test_has_not_virtual_destructor<int>(); test_has_not_virtual_destructor<double>(); test_has_not_virtual_destructor<int*>(); test_has_not_virtual_destructor<const int*>(); test_has_not_virtual_destructor<char[3]>(); test_has_not_virtual_destructor<char[3]>(); test_has_not_virtual_destructor<bit_zero>(); test_has_virtual_destructor<Abstract>(); test_has_virtual_destructor<NotEmpty>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_abstract.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_abstract.pass.cpp
index b213049025c..583cbff8ffa 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_abstract.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_abstract.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_abstract #include <type_traits> template <class T> void test_is_abstract() { static_assert( std::is_abstract<T>::value, ""); static_assert( std::is_abstract<const T>::value, ""); static_assert( std::is_abstract<volatile T>::value, ""); static_assert( std::is_abstract<const volatile T>::value, ""); } template <class T> void test_is_not_abstract() { static_assert(!std::is_abstract<T>::value, ""); static_assert(!std::is_abstract<const T>::value, ""); static_assert(!std::is_abstract<volatile T>::value, ""); static_assert(!std::is_abstract<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; int main() { test_is_not_abstract<void>(); test_is_not_abstract<int&>(); test_is_not_abstract<int>(); test_is_not_abstract<double>(); test_is_not_abstract<int*>(); test_is_not_abstract<const int*>(); test_is_not_abstract<char[3]>(); test_is_not_abstract<char[3]>(); test_is_not_abstract<Union>(); test_is_not_abstract<Empty>(); test_is_not_abstract<bit_zero>(); test_is_not_abstract<NotEmpty>(); test_is_abstract<Abstract>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_abstract #include <type_traits> template <class T> void test_is_abstract() { static_assert( std::is_abstract<T>::value, ""); static_assert( std::is_abstract<const T>::value, ""); static_assert( std::is_abstract<volatile T>::value, ""); static_assert( std::is_abstract<const volatile T>::value, ""); } template <class T> void test_is_not_abstract() { static_assert(!std::is_abstract<T>::value, ""); static_assert(!std::is_abstract<const T>::value, ""); static_assert(!std::is_abstract<volatile T>::value, ""); static_assert(!std::is_abstract<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; int main() { test_is_not_abstract<void>(); test_is_not_abstract<int&>(); test_is_not_abstract<int>(); test_is_not_abstract<double>(); test_is_not_abstract<int*>(); test_is_not_abstract<const int*>(); test_is_not_abstract<char[3]>(); test_is_not_abstract<char[3]>(); test_is_not_abstract<Union>(); test_is_not_abstract<Empty>(); test_is_not_abstract<bit_zero>(); test_is_not_abstract<NotEmpty>(); test_is_abstract<Abstract>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_const.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_const.pass.cpp
index fc3a459ee9a..c56b78ba519 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_const.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_const.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_const #include <type_traits> template <class T> void test_is_const() { static_assert(!std::is_const<T>::value, ""); static_assert( std::is_const<const T>::value, ""); static_assert(!std::is_const<volatile T>::value, ""); static_assert( std::is_const<const volatile T>::value, ""); } int main() { test_is_const<void>(); test_is_const<int>(); test_is_const<double>(); test_is_const<int*>(); test_is_const<const int*>(); test_is_const<char[3]>(); test_is_const<char[3]>(); static_assert(!std::is_const<int&>::value, ""); static_assert(!std::is_const<const int&>::value, ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_const #include <type_traits> template <class T> void test_is_const() { static_assert(!std::is_const<T>::value, ""); static_assert( std::is_const<const T>::value, ""); static_assert(!std::is_const<volatile T>::value, ""); static_assert( std::is_const<const volatile T>::value, ""); } int main() { test_is_const<void>(); test_is_const<int>(); test_is_const<double>(); test_is_const<int*>(); test_is_const<const int*>(); test_is_const<char[3]>(); test_is_const<char[3]>(); static_assert(!std::is_const<int&>::value, ""); static_assert(!std::is_const<const int&>::value, ""); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_constructible.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_constructible.pass.cpp
index 0868242ce27..a4601fd9b6a 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_constructible.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_constructible.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // template <class T, class... Args> // struct is_constructible; #include <type_traits> #ifndef _LIBCPP_HAS_NO_ADVANCED_SFINAE struct A { explicit A(int); A(int, double); }; #endif int main() { #ifndef _LIBCPP_HAS_NO_ADVANCED_SFINAE static_assert((std::is_constructible<int>::value), ""); static_assert((std::is_constructible<int, const int>::value), ""); static_assert((std::is_constructible<A, int>::value), ""); static_assert((std::is_constructible<A, int, double>::value), ""); static_assert((!std::is_constructible<A>::value), ""); #endif } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // template <class T, class... Args> // struct is_constructible; #include <type_traits> #ifndef _LIBCPP_HAS_NO_ADVANCED_SFINAE struct A { explicit A(int); A(int, double); }; #endif int main() { #ifndef _LIBCPP_HAS_NO_ADVANCED_SFINAE static_assert((std::is_constructible<int>::value), ""); static_assert((std::is_constructible<int, const int>::value), ""); static_assert((std::is_constructible<A, int>::value), ""); static_assert((std::is_constructible<A, int, double>::value), ""); static_assert((!std::is_constructible<A>::value), ""); #endif } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_empty.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_empty.pass.cpp
index b365dfb11f7..e1dc14f7e70 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_empty.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_empty.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_empty #include <type_traits> template <class T> void test_is_empty() { static_assert( std::is_empty<T>::value, ""); static_assert( std::is_empty<const T>::value, ""); static_assert( std::is_empty<volatile T>::value, ""); static_assert( std::is_empty<const volatile T>::value, ""); } template <class T> void test_is_not_empty() { static_assert(!std::is_empty<T>::value, ""); static_assert(!std::is_empty<const T>::value, ""); static_assert(!std::is_empty<volatile T>::value, ""); static_assert(!std::is_empty<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; int main() { test_is_not_empty<void>(); test_is_not_empty<int&>(); test_is_not_empty<int>(); test_is_not_empty<double>(); test_is_not_empty<int*>(); test_is_not_empty<const int*>(); test_is_not_empty<char[3]>(); test_is_not_empty<char[3]>(); test_is_not_empty<Union>(); test_is_not_empty<NotEmpty>(); test_is_empty<Empty>(); test_is_empty<bit_zero>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_empty #include <type_traits> template <class T> void test_is_empty() { static_assert( std::is_empty<T>::value, ""); static_assert( std::is_empty<const T>::value, ""); static_assert( std::is_empty<volatile T>::value, ""); static_assert( std::is_empty<const volatile T>::value, ""); } template <class T> void test_is_not_empty() { static_assert(!std::is_empty<T>::value, ""); static_assert(!std::is_empty<const T>::value, ""); static_assert(!std::is_empty<volatile T>::value, ""); static_assert(!std::is_empty<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; int main() { test_is_not_empty<void>(); test_is_not_empty<int&>(); test_is_not_empty<int>(); test_is_not_empty<double>(); test_is_not_empty<int*>(); test_is_not_empty<const int*>(); test_is_not_empty<char[3]>(); test_is_not_empty<char[3]>(); test_is_not_empty<Union>(); test_is_not_empty<NotEmpty>(); test_is_empty<Empty>(); test_is_empty<bit_zero>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_literal_type.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_literal_type.pass.cpp
index b2827155f4f..cbce73730c4 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_literal_type.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_literal_type.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_literal_type #include <type_traits> int main() { static_assert( std::is_literal_type<int>::value, ""); static_assert( std::is_literal_type<const int>::value, ""); static_assert(!std::is_literal_type<int&>::value, ""); static_assert(!std::is_literal_type<volatile int&>::value, ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_literal_type #include <type_traits> int main() { static_assert( std::is_literal_type<int>::value, ""); static_assert( std::is_literal_type<const int>::value, ""); static_assert(!std::is_literal_type<int&>::value, ""); static_assert(!std::is_literal_type<volatile int&>::value, ""); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_nothrow_constructible.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_nothrow_constructible.pass.cpp
index e839e09254b..0974ee3aa33 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_nothrow_constructible.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_nothrow_constructible.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // template <class T, class... Args> // struct is_nothrow_constructible; #include <type_traits> #ifndef _LIBCPP_HAS_NO_VARIADICS class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A(const A&); }; #endif int main() { #ifndef _LIBCPP_HAS_NO_VARIADICS static_assert((std::is_nothrow_constructible<int, const int>::value), ""); #endif } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // template <class T, class... Args> // struct is_nothrow_constructible; #include <type_traits> #ifndef _LIBCPP_HAS_NO_VARIADICS class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; struct A { A(const A&); }; #endif int main() { #ifndef _LIBCPP_HAS_NO_VARIADICS static_assert((std::is_nothrow_constructible<int, const int>::value), ""); #endif } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_pod.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_pod.pass.cpp
index f55427906ca..8f783b0734a 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_pod.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_pod.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_pod #include <type_traits> template <class T> void test_is_pod() { static_assert( std::is_pod<T>::value, ""); static_assert( std::is_pod<const T>::value, ""); static_assert( std::is_pod<volatile T>::value, ""); static_assert( std::is_pod<const volatile T>::value, ""); } template <class T> void test_is_not_pod() { static_assert(!std::is_pod<T>::value, ""); static_assert(!std::is_pod<const T>::value, ""); static_assert(!std::is_pod<volatile T>::value, ""); static_assert(!std::is_pod<const volatile T>::value, ""); } class Class { public: ~Class(); }; int main() { test_is_not_pod<void>(); test_is_not_pod<int&>(); test_is_not_pod<Class>(); test_is_pod<int>(); test_is_pod<double>(); test_is_pod<int*>(); test_is_pod<const int*>(); test_is_pod<char[3]>(); test_is_pod<char[3]>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_pod #include <type_traits> template <class T> void test_is_pod() { static_assert( std::is_pod<T>::value, ""); static_assert( std::is_pod<const T>::value, ""); static_assert( std::is_pod<volatile T>::value, ""); static_assert( std::is_pod<const volatile T>::value, ""); } template <class T> void test_is_not_pod() { static_assert(!std::is_pod<T>::value, ""); static_assert(!std::is_pod<const T>::value, ""); static_assert(!std::is_pod<volatile T>::value, ""); static_assert(!std::is_pod<const volatile T>::value, ""); } class Class { public: ~Class(); }; int main() { test_is_not_pod<void>(); test_is_not_pod<int&>(); test_is_not_pod<Class>(); test_is_pod<int>(); test_is_pod<double>(); test_is_pod<int*>(); test_is_pod<const int*>(); test_is_pod<char[3]>(); test_is_pod<char[3]>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_polymorphic.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_polymorphic.pass.cpp
index b933b7e7e48..07004b9fa89 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_polymorphic.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_polymorphic.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_polymorphic #include <type_traits> template <class T> void test_is_polymorphic() { static_assert( std::is_polymorphic<T>::value, ""); static_assert( std::is_polymorphic<const T>::value, ""); static_assert( std::is_polymorphic<volatile T>::value, ""); static_assert( std::is_polymorphic<const volatile T>::value, ""); } template <class T> void test_is_not_polymorphic() { static_assert(!std::is_polymorphic<T>::value, ""); static_assert(!std::is_polymorphic<const T>::value, ""); static_assert(!std::is_polymorphic<volatile T>::value, ""); static_assert(!std::is_polymorphic<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; int main() { test_is_not_polymorphic<void>(); test_is_not_polymorphic<int&>(); test_is_not_polymorphic<int>(); test_is_not_polymorphic<double>(); test_is_not_polymorphic<int*>(); test_is_not_polymorphic<const int*>(); test_is_not_polymorphic<char[3]>(); test_is_not_polymorphic<char[3]>(); test_is_not_polymorphic<Union>(); test_is_not_polymorphic<Empty>(); test_is_not_polymorphic<bit_zero>(); test_is_polymorphic<NotEmpty>(); test_is_polymorphic<Abstract>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_polymorphic #include <type_traits> template <class T> void test_is_polymorphic() { static_assert( std::is_polymorphic<T>::value, ""); static_assert( std::is_polymorphic<const T>::value, ""); static_assert( std::is_polymorphic<volatile T>::value, ""); static_assert( std::is_polymorphic<const volatile T>::value, ""); } template <class T> void test_is_not_polymorphic() { static_assert(!std::is_polymorphic<T>::value, ""); static_assert(!std::is_polymorphic<const T>::value, ""); static_assert(!std::is_polymorphic<volatile T>::value, ""); static_assert(!std::is_polymorphic<const volatile T>::value, ""); } class Empty { }; class NotEmpty { virtual ~NotEmpty(); }; union Union {}; struct bit_zero { int : 0; }; class Abstract { virtual ~Abstract() = 0; }; int main() { test_is_not_polymorphic<void>(); test_is_not_polymorphic<int&>(); test_is_not_polymorphic<int>(); test_is_not_polymorphic<double>(); test_is_not_polymorphic<int*>(); test_is_not_polymorphic<const int*>(); test_is_not_polymorphic<char[3]>(); test_is_not_polymorphic<char[3]>(); test_is_not_polymorphic<Union>(); test_is_not_polymorphic<Empty>(); test_is_not_polymorphic<bit_zero>(); test_is_polymorphic<NotEmpty>(); test_is_polymorphic<Abstract>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_signed.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_signed.pass.cpp
index 53d788228a8..0416e3a96b6 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_signed.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_signed.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_signed #include <type_traits> template <class T> void test_is_signed() { static_assert( std::is_signed<T>::value, ""); static_assert( std::is_signed<const T>::value, ""); static_assert( std::is_signed<volatile T>::value, ""); static_assert( std::is_signed<const volatile T>::value, ""); } template <class T> void test_is_not_signed() { static_assert(!std::is_signed<T>::value, ""); static_assert(!std::is_signed<const T>::value, ""); static_assert(!std::is_signed<volatile T>::value, ""); static_assert(!std::is_signed<const volatile T>::value, ""); } class Class { public: ~Class(); }; int main() { test_is_not_signed<void>(); test_is_not_signed<int&>(); test_is_not_signed<Class>(); test_is_not_signed<int*>(); test_is_not_signed<const int*>(); test_is_not_signed<char[3]>(); test_is_not_signed<char[3]>(); test_is_not_signed<bool>(); test_is_not_signed<unsigned>(); test_is_signed<int>(); test_is_signed<double>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_signed #include <type_traits> template <class T> void test_is_signed() { static_assert( std::is_signed<T>::value, ""); static_assert( std::is_signed<const T>::value, ""); static_assert( std::is_signed<volatile T>::value, ""); static_assert( std::is_signed<const volatile T>::value, ""); } template <class T> void test_is_not_signed() { static_assert(!std::is_signed<T>::value, ""); static_assert(!std::is_signed<const T>::value, ""); static_assert(!std::is_signed<volatile T>::value, ""); static_assert(!std::is_signed<const volatile T>::value, ""); } class Class { public: ~Class(); }; int main() { test_is_not_signed<void>(); test_is_not_signed<int&>(); test_is_not_signed<Class>(); test_is_not_signed<int*>(); test_is_not_signed<const int*>(); test_is_not_signed<char[3]>(); test_is_not_signed<char[3]>(); test_is_not_signed<bool>(); test_is_not_signed<unsigned>(); test_is_signed<int>(); test_is_signed<double>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_standard_layout.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_standard_layout.pass.cpp
index f88d2e697bb..ede3b834a5f 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_standard_layout.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_standard_layout.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_standard_layout #include <type_traits> int main() { static_assert( std::is_standard_layout<int>::value, ""); static_assert(!std::is_standard_layout<int&>::value, ""); static_assert(!std::is_standard_layout<volatile int&>::value, ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_standard_layout #include <type_traits> int main() { static_assert( std::is_standard_layout<int>::value, ""); static_assert(!std::is_standard_layout<int&>::value, ""); static_assert(!std::is_standard_layout<volatile int&>::value, ""); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_trivial.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_trivial.pass.cpp
index 484bfaabad4..3a48ccab228 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_trivial.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_trivial.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_trivial #include <type_traits> int main() { static_assert( std::is_trivial<int>::value, ""); static_assert(!std::is_trivial<int&>::value, ""); static_assert(!std::is_trivial<volatile int&>::value, ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_trivial #include <type_traits> int main() { static_assert( std::is_trivial<int>::value, ""); static_assert(!std::is_trivial<int&>::value, ""); static_assert(!std::is_trivial<volatile int&>::value, ""); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_trivialially_copyable.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_trivialially_copyable.pass.cpp
index 872b23442b2..b589c2b9291 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_trivialially_copyable.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_trivialially_copyable.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_trivially_copyable #include <type_traits> #include <cassert> struct A { int i_; }; struct B { int i_; ~B() {assert(i_ == 0);} }; int main() { static_assert( std::is_trivially_copyable<int>::value, ""); static_assert( std::is_trivially_copyable<const int>::value, ""); static_assert(!std::is_trivially_copyable<int&>::value, ""); static_assert( std::is_trivially_copyable<A>::value, ""); static_assert( std::is_trivially_copyable<const A>::value, ""); static_assert(!std::is_trivially_copyable<const A&>::value, ""); static_assert(!std::is_trivially_copyable<B>::value, ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_trivially_copyable #include <type_traits> #include <cassert> struct A { int i_; }; struct B { int i_; ~B() {assert(i_ == 0);} }; int main() { static_assert( std::is_trivially_copyable<int>::value, ""); static_assert( std::is_trivially_copyable<const int>::value, ""); static_assert(!std::is_trivially_copyable<int&>::value, ""); static_assert( std::is_trivially_copyable<A>::value, ""); static_assert( std::is_trivially_copyable<const A>::value, ""); static_assert(!std::is_trivially_copyable<const A&>::value, ""); static_assert(!std::is_trivially_copyable<B>::value, ""); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_unsigned.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_unsigned.pass.cpp
index 8d6b6b0f634..9967cc4ab41 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_unsigned.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_unsigned.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_unsigned #include <type_traits> template <class T> void test_is_unsigned() { static_assert( std::is_unsigned<T>::value, ""); static_assert( std::is_unsigned<const T>::value, ""); static_assert( std::is_unsigned<volatile T>::value, ""); static_assert( std::is_unsigned<const volatile T>::value, ""); } template <class T> void test_is_not_unsigned() { static_assert(!std::is_unsigned<T>::value, ""); static_assert(!std::is_unsigned<const T>::value, ""); static_assert(!std::is_unsigned<volatile T>::value, ""); static_assert(!std::is_unsigned<const volatile T>::value, ""); } class Class { public: ~Class(); }; int main() { test_is_not_unsigned<void>(); test_is_not_unsigned<int&>(); test_is_not_unsigned<Class>(); test_is_not_unsigned<int*>(); test_is_not_unsigned<const int*>(); test_is_not_unsigned<char[3]>(); test_is_not_unsigned<char[3]>(); test_is_not_unsigned<int>(); test_is_not_unsigned<double>(); test_is_unsigned<bool>(); test_is_unsigned<unsigned>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_unsigned #include <type_traits> template <class T> void test_is_unsigned() { static_assert( std::is_unsigned<T>::value, ""); static_assert( std::is_unsigned<const T>::value, ""); static_assert( std::is_unsigned<volatile T>::value, ""); static_assert( std::is_unsigned<const volatile T>::value, ""); } template <class T> void test_is_not_unsigned() { static_assert(!std::is_unsigned<T>::value, ""); static_assert(!std::is_unsigned<const T>::value, ""); static_assert(!std::is_unsigned<volatile T>::value, ""); static_assert(!std::is_unsigned<const volatile T>::value, ""); } class Class { public: ~Class(); }; int main() { test_is_not_unsigned<void>(); test_is_not_unsigned<int&>(); test_is_not_unsigned<Class>(); test_is_not_unsigned<int*>(); test_is_not_unsigned<const int*>(); test_is_not_unsigned<char[3]>(); test_is_not_unsigned<char[3]>(); test_is_not_unsigned<int>(); test_is_not_unsigned<double>(); test_is_unsigned<bool>(); test_is_unsigned<unsigned>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_volatile.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_volatile.pass.cpp
index 19b2cfa273a..00ff887e696 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_volatile.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_volatile.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_volatile #include <type_traits> template <class T> void test_is_volatile() { static_assert(!std::is_volatile<T>::value, ""); static_assert(!std::is_volatile<const T>::value, ""); static_assert( std::is_volatile<volatile T>::value, ""); static_assert( std::is_volatile<const volatile T>::value, ""); } int main() { test_is_volatile<void>(); test_is_volatile<int>(); test_is_volatile<double>(); test_is_volatile<int*>(); test_is_volatile<const int*>(); test_is_volatile<char[3]>(); test_is_volatile<char[3]>(); static_assert(!std::is_volatile<int&>::value, ""); static_assert(!std::is_volatile<volatile int&>::value, ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // is_volatile #include <type_traits> template <class T> void test_is_volatile() { static_assert(!std::is_volatile<T>::value, ""); static_assert(!std::is_volatile<const T>::value, ""); static_assert( std::is_volatile<volatile T>::value, ""); static_assert( std::is_volatile<const volatile T>::value, ""); } int main() { test_is_volatile<void>(); test_is_volatile<int>(); test_is_volatile<double>(); test_is_volatile<int*>(); test_is_volatile<const int*>(); test_is_volatile<char[3]>(); test_is_volatile<char[3]>(); static_assert(!std::is_volatile<int&>::value, ""); static_assert(!std::is_volatile<volatile int&>::value, ""); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/rank.pass.cpp b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/rank.pass.cpp
index bfb96b22c42..0cd61f685f0 100644
--- a/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/rank.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/rank.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // rank #include <type_traits> template <class T, unsigned A> void test_rank() { static_assert( std::rank<T>::value == A, ""); static_assert( std::rank<const T>::value == A, ""); static_assert( std::rank<volatile T>::value == A, ""); static_assert( std::rank<const volatile T>::value == A, ""); } class Class { public: ~Class(); }; int main() { test_rank<void, 0>(); test_rank<int&, 0>(); test_rank<Class, 0>(); test_rank<int*, 0>(); test_rank<const int*, 0>(); test_rank<int, 0>(); test_rank<double, 0>(); test_rank<bool, 0>(); test_rank<unsigned, 0>(); test_rank<char[3], 1>(); test_rank<char[][3], 2>(); test_rank<char[][4][3], 3>(); } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // rank #include <type_traits> template <class T, unsigned A> void test_rank() { static_assert( std::rank<T>::value == A, ""); static_assert( std::rank<const T>::value == A, ""); static_assert( std::rank<volatile T>::value == A, ""); static_assert( std::rank<const volatile T>::value == A, ""); } class Class { public: ~Class(); }; int main() { test_rank<void, 0>(); test_rank<int&, 0>(); test_rank<Class, 0>(); test_rank<int*, 0>(); test_rank<const int*, 0>(); test_rank<int, 0>(); test_rank<double, 0>(); test_rank<bool, 0>(); test_rank<unsigned, 0>(); test_rank<char[3], 1>(); test_rank<char[][3], 2>(); test_rank<char[][4][3], 3>(); } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/meta.unary/nothing_to_do.pass.cpp b/libcxx/test/utilities/meta/meta.unary/nothing_to_do.pass.cpp
index 92348261209..e8db90cbee0 100644
--- a/libcxx/test/utilities/meta/meta.unary/nothing_to_do.pass.cpp
+++ b/libcxx/test/utilities/meta/meta.unary/nothing_to_do.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// int main() { } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// int main() { } \ No newline at end of file
diff --git a/libcxx/test/utilities/meta/version.pass.cpp b/libcxx/test/utilities/meta/version.pass.cpp
index 0286825f5c4..513d4080a53 100644
--- a/libcxx/test/utilities/meta/version.pass.cpp
+++ b/libcxx/test/utilities/meta/version.pass.cpp
@@ -1 +1 @@
-//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <type_traits> #include <type_traits> #ifndef _LIBCPP_VERSION #error _LIBCPP_VERSION not defined #endif int main() { } \ No newline at end of file
+//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <type_traits> #include <type_traits> #ifndef _LIBCPP_VERSION #error _LIBCPP_VERSION not defined #endif int main() { } \ No newline at end of file
OpenPOWER on IntegriCloud