diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2021-05-06 15:28:55 +0100 |
---|---|---|
committer | Jonathan Wakely <jwakely@redhat.com> | 2021-05-06 16:07:10 +0100 |
commit | 07dd185755a791ab19e6a63274cf2cb69f087a6c (patch) | |
tree | 9f9206b3cfa439e4b7e04d279bf93400715a7450 | |
parent | 717d278af93a4ab04ff30267888fc14fe0221799 (diff) | |
download | gcc-07dd185755a791ab19e6a63274cf2cb69f087a6c.zip gcc-07dd185755a791ab19e6a63274cf2cb69f087a6c.tar.gz gcc-07dd185755a791ab19e6a63274cf2cb69f087a6c.tar.bz2 |
libstdc++: Improve static assert messages
The message used for static assertions should be phrased so that it's
unambiguous whether the condition should be true or false. The message
should definitely not state the negative condition.
libstdc++-v3/ChangeLog:
* include/bits/stl_algobase.h (__copy_move, __copy_move_backward):
Improve static_assert messages.
* testsuite/25_algorithms/copy/58982.cc: Adjust expected output.
* testsuite/25_algorithms/copy_n/58982.cc: Likewise.
-rw-r--r-- | libstdc++-v3/include/bits/stl_algobase.h | 4 | ||||
-rw-r--r-- | libstdc++-v3/testsuite/25_algorithms/copy/58982.cc | 2 | ||||
-rw-r--r-- | libstdc++-v3/testsuite/25_algorithms/copy_n/58982.cc | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/libstdc++-v3/include/bits/stl_algobase.h b/libstdc++-v3/include/bits/stl_algobase.h index a76b00b..d001b5f 100644 --- a/libstdc++-v3/include/bits/stl_algobase.h +++ b/libstdc++-v3/include/bits/stl_algobase.h @@ -424,7 +424,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION is_move_assignable<_Tp>, is_copy_assignable<_Tp>>; // trivial types can have deleted assignment - static_assert( __assignable::type::value, "type is not assignable" ); + static_assert( __assignable::type::value, "type must be assignable" ); #endif const ptrdiff_t _Num = __last - __first; if (_Num) @@ -735,7 +735,7 @@ _GLIBCXX_END_NAMESPACE_CONTAINER is_move_assignable<_Tp>, is_copy_assignable<_Tp>>; // trivial types can have deleted assignment - static_assert( __assignable::type::value, "type is not assignable" ); + static_assert( __assignable::type::value, "type must be assignable" ); #endif const ptrdiff_t _Num = __last - __first; if (_Num) diff --git a/libstdc++-v3/testsuite/25_algorithms/copy/58982.cc b/libstdc++-v3/testsuite/25_algorithms/copy/58982.cc index f47bf9f..151a7e2 100644 --- a/libstdc++-v3/testsuite/25_algorithms/copy/58982.cc +++ b/libstdc++-v3/testsuite/25_algorithms/copy/58982.cc @@ -38,5 +38,5 @@ test01(T* result) T t[1]; std::copy(t, t+1, result); // { dg-error "here|deleted" } } -// { dg-prune-output "not assignable" } +// { dg-prune-output "type must be assignable" } // { dg-prune-output "use of deleted" } diff --git a/libstdc++-v3/testsuite/25_algorithms/copy_n/58982.cc b/libstdc++-v3/testsuite/25_algorithms/copy_n/58982.cc index 133a2e2..5ddc8cc 100644 --- a/libstdc++-v3/testsuite/25_algorithms/copy_n/58982.cc +++ b/libstdc++-v3/testsuite/25_algorithms/copy_n/58982.cc @@ -38,5 +38,5 @@ test01(T* result) T t[1]; std::copy_n(t, 1, result); // { dg-error "here|deleted" } } -// { dg-prune-output "not assignable" } +// { dg-prune-output "type must be assignable" } // { dg-prune-output "use of deleted" } |