libstdc++: Add [[nodiscard]] to sequence containers
authorJonathan Wakely <jwakely@redhat.com>
Tue, 3 Aug 2021 19:50:52 +0000 (20:50 +0100)
committerJonathan Wakely <jwakely@redhat.com>
Wed, 4 Aug 2021 11:54:29 +0000 (12:54 +0100)
commit0d04fe49239d91787850036599164788f1c87785
treefc8e84c4b7ae94e3206bb65579fd6ef45ff9d8a3
parent240b01b0215f9e46ecf04267c8a3faeb19d4fe3c
libstdc++: Add [[nodiscard]] to sequence containers

... and container adaptors.

This adds the [[nodiscard]] attribute to functions with no side-effects
for the sequence containers and their iterators, and the debug versions
of those containers, and the container adaptors,

Signed-off-by: Jonathan Wakely <jwakely@redhat.com>
libstdc++-v3/ChangeLog:

* include/bits/forward_list.h: Add [[nodiscard]] to functions
with no side-effects.
* include/bits/stl_bvector.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_queue.h: Likewise.
* include/bits/stl_stack.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/debug/deque: Likewise.
* include/debug/forward_list: Likewise.
* include/debug/list: Likewise.
* include/debug/safe_iterator.h: Likewise.
* include/debug/vector: Likewise.
* include/std/array: Likewise.
* testsuite/23_containers/array/creation/3_neg.cc: Use
-Wno-unused-result.
* testsuite/23_containers/array/debug/back1_neg.cc: Cast result
to void.
* testsuite/23_containers/array/debug/back2_neg.cc: Likewise.
* testsuite/23_containers/array/debug/front1_neg.cc: Likewise.
* testsuite/23_containers/array/debug/front2_neg.cc: Likewise.
* testsuite/23_containers/array/debug/square_brackets_operator1_neg.cc:
Likewise.
* testsuite/23_containers/array/debug/square_brackets_operator2_neg.cc:
Likewise.
* testsuite/23_containers/array/tuple_interface/get_neg.cc:
Adjust dg-error line numbers.
* testsuite/23_containers/deque/cons/clear_allocator.cc: Cast
result to void.
* testsuite/23_containers/deque/debug/invalidation/4.cc:
Likewise.
* testsuite/23_containers/deque/types/1.cc: Use
-Wno-unused-result.
* testsuite/23_containers/list/types/1.cc: Cast result to void.
* testsuite/23_containers/priority_queue/members/7161.cc:
Likewise.
* testsuite/23_containers/queue/members/7157.cc: Likewise.
* testsuite/23_containers/vector/59829.cc: Likewise.
* testsuite/23_containers/vector/ext_pointer/types/1.cc:
Likewise.
* testsuite/23_containers/vector/ext_pointer/types/2.cc:
Likewise.
* testsuite/23_containers/vector/types/1.cc: Use
-Wno-unused-result.
31 files changed:
libstdc++-v3/include/bits/forward_list.h
libstdc++-v3/include/bits/stl_bvector.h
libstdc++-v3/include/bits/stl_deque.h
libstdc++-v3/include/bits/stl_list.h
libstdc++-v3/include/bits/stl_queue.h
libstdc++-v3/include/bits/stl_stack.h
libstdc++-v3/include/bits/stl_vector.h
libstdc++-v3/include/debug/deque
libstdc++-v3/include/debug/forward_list
libstdc++-v3/include/debug/list
libstdc++-v3/include/debug/safe_iterator.h
libstdc++-v3/include/debug/vector
libstdc++-v3/include/std/array
libstdc++-v3/testsuite/23_containers/array/creation/3_neg.cc
libstdc++-v3/testsuite/23_containers/array/debug/back1_neg.cc
libstdc++-v3/testsuite/23_containers/array/debug/back2_neg.cc
libstdc++-v3/testsuite/23_containers/array/debug/front1_neg.cc
libstdc++-v3/testsuite/23_containers/array/debug/front2_neg.cc
libstdc++-v3/testsuite/23_containers/array/debug/square_brackets_operator1_neg.cc
libstdc++-v3/testsuite/23_containers/array/debug/square_brackets_operator2_neg.cc
libstdc++-v3/testsuite/23_containers/array/tuple_interface/get_neg.cc
libstdc++-v3/testsuite/23_containers/deque/cons/clear_allocator.cc
libstdc++-v3/testsuite/23_containers/deque/debug/invalidation/4.cc
libstdc++-v3/testsuite/23_containers/deque/types/1.cc
libstdc++-v3/testsuite/23_containers/list/types/1.cc
libstdc++-v3/testsuite/23_containers/priority_queue/members/7161.cc
libstdc++-v3/testsuite/23_containers/queue/members/7157.cc
libstdc++-v3/testsuite/23_containers/vector/59829.cc
libstdc++-v3/testsuite/23_containers/vector/ext_pointer/types/1.cc
libstdc++-v3/testsuite/23_containers/vector/ext_pointer/types/2.cc
libstdc++-v3/testsuite/23_containers/vector/types/1.cc