aboutsummaryrefslogtreecommitdiff
path: root/tests/span_tests.cpp
diff options
context:
space:
mode:
authorNeil MacIntosh <neilmac@microsoft.com>2016-03-16 19:39:55 -0700
committerNeil MacIntosh <neilmac@microsoft.com>2016-03-16 19:39:55 -0700
commit717a2e35f13e723c491aa1d90364a7831cdbb526 (patch)
treeab7a00e0d67fc4d14a07d20a492ca551c9c179cb /tests/span_tests.cpp
parentc40094a532f932bc0ed7af2279161dc4bc72b85d (diff)
downloadMicrosoft-GSL-717a2e35f13e723c491aa1d90364a7831cdbb526.tar.gz
Added conversion ctors.
Diffstat (limited to 'tests/span_tests.cpp')
-rw-r--r--tests/span_tests.cpp46
1 files changed, 28 insertions, 18 deletions
diff --git a/tests/span_tests.cpp b/tests/span_tests.cpp
index e68493c..0b65507 100644
--- a/tests/span_tests.cpp
+++ b/tests/span_tests.cpp
@@ -512,34 +512,44 @@ SUITE(span_tests)
#endif
}
}
-#if 0
+
TEST(from_convertible_span_constructor)
{
-#ifdef CONFIRM_COMPILATION_ERRORS
- span<int, 7, 4, 2> av1(nullptr, b1);
+ {
+ span<DerivedClass> avd;
+ span<const DerivedClass> avcd = avd;
+ (void)avcd;
+ }
- auto f = [&]() { span<int, 7, 4, 2> av1(nullptr); };
- CHECK_THROW(f(), fail_fast);
+ {
+#ifdef CONFIRM_COMPILATION_ERRORS
+ span<DerivedClass> avd;
+ span<BaseClass> avb = avd;
+ (void) avb;
#endif
+ }
-#ifdef CONFIRM_COMPILATION_ERRORS
- static_bounds<size_t, 7, dynamic_range, 2> b12(b11);
- b12 = b11;
- b11 = b12;
+ {
+ span<int> s;
+ span<unsigned int> s2 = s;
+ (void)s2;
+ }
- span<int, dynamic_range> av1 = nullptr;
- span<int, 7, dynamic_range, 2> av2(av1);
- span<int, 7, 4, 2> av2(av1);
-#endif
+ {
+ span<int> s;
+ span<const unsigned int> s2 = s;
+ (void)s2;
+ }
- span<DerivedClass> avd;
+ {
#ifdef CONFIRM_COMPILATION_ERRORS
- span<BaseClass> avb = avd;
+ span<int> s;
+ span<short> s2 = s;
+ (void)s2;
#endif
- span<const DerivedClass> avcd = avd;
- (void) avcd;
+ }
}
-
+#if 0
TEST(copy_move_and_assignment)
{
span<int> s1;