From 5a784d350c57d670775471bec847370ed7677666 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Thu, 5 Dec 2019 13:50:08 +0000 Subject: [PATCH] libstdc++: Fix bug in std::span test The previous commit fixed the std::span constructors from const arrays, revealing a bug in this test. * testsuite/23_containers/span/lwg3255.cc: Fix test. Constructing a span of non-const elements should not be possible from a const array or an array of const elements. From-SVN: r279001 --- libstdc++-v3/ChangeLog | 6 ++++++ libstdc++-v3/testsuite/23_containers/span/lwg3255.cc | 9 +++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 82cb5a9..b041bb4 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,9 @@ +2019-12-05 Jonathan Wakely + + * testsuite/23_containers/span/lwg3255.cc: Fix test. Constructing a + span of non-const elements should not be possible from a const array + or an array of const elements. + 2019-12-05 JeanHeyd "ThePhD" Meneide Implement P1872R0 and P1394R0 for std::span diff --git a/libstdc++-v3/testsuite/23_containers/span/lwg3255.cc b/libstdc++-v3/testsuite/23_containers/span/lwg3255.cc index bab7da3..eec686b 100644 --- a/libstdc++-v3/testsuite/23_containers/span/lwg3255.cc +++ b/libstdc++-v3/testsuite/23_containers/span/lwg3255.cc @@ -39,7 +39,6 @@ static_assert( is_constructible_v, array&> ); static_assert( is_constructible_v, array&> ); static_assert( is_constructible_v, array&> ); -static_assert( is_constructible_v, const array&> ); static_assert( is_constructible_v, const array&> ); static_assert( is_constructible_v, const array&> ); @@ -63,6 +62,12 @@ static_assert( is_constructible_v, array&> ); static_assert( is_constructible_v, array&> ); static_assert( is_constructible_v, array&> ); -static_assert( is_constructible_v, const array&> ); static_assert( is_constructible_v, const array&> ); static_assert( is_constructible_v, const array&> ); + +static_assert( ! is_constructible_v, array&> ); +static_assert( ! is_constructible_v, const array&> ); +static_assert( ! is_constructible_v, const array&> ); +static_assert( ! is_constructible_v, array&> ); +static_assert( ! is_constructible_v, const array&> ); +static_assert( ! is_constructible_v, const array&> ); -- 2.7.4