r275411 - in /trunk/libstdc++-v3: ChangeLog doc...
redi@gcc.gnu.org
redi@gcc.gnu.org
Thu Sep 5 13:48:00 GMT 2019
Author: redi
Date: Thu Sep 5 13:48:33 2019
New Revision: 275411
URL: https://gcc.gnu.org/viewcvs?rev=275411&root=gcc&view=rev
Log:
Improve precondition checks for std::span
* doc/xml/manual/status_cxx2020.xml: Update status for P0122R7 and
P1024R3. Remove entry for P0920R2.
* include/std/span (__cpp_lib_span): Change value.
(__extent_storage, __extent_storage<dynamic_extent>): Remove default
constructor.
(span): Replace __extent_storage base class with data member.
(span::_S_subspan_extent): New function.
(span::empty()): Add nodiscard attribute.
(span::front, span::back, span::operator[]): Check preconditions.
(span::first, span::last, span::subspan): Add noexcept. Improve
precondition checks (LWG 3103).
(get): Remove redundant condition from static_assert.
(tuple_element<I, span<T, E>>): Fix static_assert message and simplify.
(as_writable_bytes): Add inline specifier.
* include/std/version (__cpp_lib_span): Change value.
* testsuite/23_containers/span/back_neg.cc: Remove stray semi-colon.
* testsuite/23_containers/span/front_neg.cc: Likewise.
* testsuite/23_containers/span/index_op_neg.cc: Likewise.
* testsuite/23_containers/span/last_neg.cc: Improve test.
* testsuite/23_containers/span/subspan_neg.cc: Likewise.
* testsuite/23_containers/span/1.cc: New test.
* testsuite/23_containers/span/2.cc: New test.
* testsuite/23_containers/span/back_assert_neg.cc: New test.
* testsuite/23_containers/span/first_2_assert_neg.cc: New test.
* testsuite/23_containers/span/first_assert_neg.cc: New test.
* testsuite/23_containers/span/first_neg.cc: New test.
* testsuite/23_containers/span/front_assert_neg.cc: New test.
* testsuite/23_containers/span/index_op_assert_neg.cc: New test.
* testsuite/23_containers/span/last_2_assert_neg.cc: New test.
* testsuite/23_containers/span/last_assert_neg.cc: New test.
* testsuite/23_containers/span/subspan_2_assert_neg.cc: New test.
* testsuite/23_containers/span/subspan_3_assert_neg.cc: New test.
* testsuite/23_containers/span/subspan_4_assert_neg.cc: New test.
* testsuite/23_containers/span/subspan_5_assert_neg.cc: New test.
* testsuite/23_containers/span/subspan_6_assert_neg.cc: New test.
* testsuite/23_containers/span/subspan_assert_neg.cc: New test.
Added:
trunk/libstdc++-v3/testsuite/23_containers/span/1.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/2.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/back_assert_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/back_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/first_2_assert_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/first_assert_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/first_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/front_assert_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/front_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/index_op_assert_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/index_op_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/last_2_assert_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/last_assert_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/subspan_2_assert_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/subspan_3_assert_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/subspan_4_assert_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/subspan_5_assert_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/subspan_6_assert_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/subspan_assert_neg.cc
- copied, changed from r275408, trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/doc/html/manual/status.html
trunk/libstdc++-v3/doc/xml/manual/status_cxx2020.xml
trunk/libstdc++-v3/include/std/span
trunk/libstdc++-v3/include/std/version
trunk/libstdc++-v3/testsuite/23_containers/span/last_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/span/subspan_neg.cc
More information about the Libstdc++-cvs
mailing list