summaryrefslogtreecommitdiff
path: root/asl/base/meta_tests.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'asl/base/meta_tests.cpp')
-rw-r--r--asl/base/meta_tests.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/asl/base/meta_tests.cpp b/asl/base/meta_tests.cpp
index 7aa7145..99cc6c0 100644
--- a/asl/base/meta_tests.cpp
+++ b/asl/base/meta_tests.cpp
@@ -287,3 +287,23 @@ ASL_TEST(deref)
wants_base_ptr(&asl::deref<Base>(d));
}
+static_assert(asl::same_as<asl::copy_cref_t<int, float>, float>);
+static_assert(asl::same_as<asl::copy_cref_t<int, const float>, float>);
+static_assert(asl::same_as<asl::copy_cref_t<int, float&&>, float>);
+static_assert(asl::same_as<asl::copy_cref_t<int, const float&>, float>);
+
+static_assert(asl::same_as<asl::copy_cref_t<int&&, float>, float&&>);
+static_assert(asl::same_as<asl::copy_cref_t<int&&, const float>, float&&>);
+static_assert(asl::same_as<asl::copy_cref_t<int&&, float&&>, float&&>);
+static_assert(asl::same_as<asl::copy_cref_t<int&&, const float&>, float&&>);
+
+static_assert(asl::same_as<asl::copy_cref_t<const int, float>, const float>);
+static_assert(asl::same_as<asl::copy_cref_t<const int, const float>, const float>);
+static_assert(asl::same_as<asl::copy_cref_t<const int, float&&>, const float>);
+static_assert(asl::same_as<asl::copy_cref_t<const int, const float&>, const float>);
+
+static_assert(asl::same_as<asl::copy_cref_t<const int&, float>, const float&>);
+static_assert(asl::same_as<asl::copy_cref_t<const int&, const float>, const float&>);
+static_assert(asl::same_as<asl::copy_cref_t<const int&, float&&>, const float&>);
+static_assert(asl::same_as<asl::copy_cref_t<const int&, const float&>, const float&>);
+