aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/testsuite/util/debug
AgeCommit message (Collapse)AuthorFilesLines
2025-04-18libstdc++: Add _GLIBCXX_DEBUG checks on unordered container local_iteratorFrançois Dumont1-39/+113
Complete tests on _GLIBCXX_DEBUG checks in include/debug/safe_local_iterator.h. Fix several tests not testing the container corresponding to their location in the testsuite directory. libstdc++-v3/ChangeLog: * testsuite/util/debug/unordered_checks.h (fill_container): New helper method. (use_erased_local_iterator, invalid_local_iterator_pre_increment) (invalid_local_iterator_post_increment, invalid_local_iterator_compare) (invalid_local_iterator_range): Use latter. (fill_and_get_local_iterator): New, use fill_container. (use_invalid_local_iterator): Use latter. (invalid_local_iterator_arrow_operator): New test function. (invalid_local_iterator_copy_instantiation): New test function. (invalid_local_iterator_move_instantiation): New test function. (invalid_local_iterator_copy_assignment): New test function. (invalid_local_iterator_move_assignment): New test function. (invalid_local_iterator_const_conversion): New test function. * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_arrow_operator_neg.cc: New test case. * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_const_conversion_neg.cc: New test case. * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_copy_assignment_neg.cc: New test case. * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_copy_construction_neg.cc: New test case. * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_move_assignment_neg.cc: New test case. * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_move_construction_neg.cc: New test case. * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc: Test unordered_map. * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc: Test unordered_multimap. * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_arrow_operator_neg.cc: New test case. * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_const_conversion_neg.cc: New test case. * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_copy_assignment_neg.cc: New test case. * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_copy_construction_neg.cc: New test case. * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_move_assignment_neg.cc: New test case. * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_move_construction_neg.cc: New test case. * testsuite/23_containers/unordered_multimap/debug/max_load_factor_neg.cc: Test unordered_multimap. * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_arrow_operator_neg.cc: New test case. * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_const_conversion_neg.cc: New test case. * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_copy_assignment_neg.cc: New test case. * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_copy_construction_neg.cc: New test case. * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_move_assignment_neg.cc: New test case. * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_move_construction_neg.cc: New test case. * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_arrow_operator_neg.cc: New test case. * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_const_conversion_neg.cc: New test case. * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_copy_assignment_neg.cc: New test case. * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_copy_construction_neg.cc: New test case. * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_move_assignment_neg.cc: New test case. * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_move_construction_neg.cc: New test case. Reviewed-by: Jonathan Wakely <jwakely@redhat.com>
2025-01-02Update copyright years.Jakub Jelinek2-2/+2
2024-01-03Update copyright years.Jakub Jelinek2-2/+2
2023-01-16Update copyright years.Jakub Jelinek2-2/+2
2023-01-15libstdc++: [_GLIBCXX_DEBUG] Complete deadlock fix on safe iterators [PR108288]François Dumont1-0/+34
Complete fix on all _Safe_iterator post-increment and post-decrement implementations and on _Safe_local_iterator. libstdc++-v3/ChangeLog: PR libstdc++/108288 * include/debug/safe_iterator.h (_Safe_iterator<>::operator++(int)): Extend deadlock fix to other iterator category. (_Safe_iterator<>::operator--(int)): Likewise. * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::operator++(int)): Fix deadlock. * testsuite/util/debug/unordered_checks.h (invalid_local_iterator_pre_increment): New. (invalid_local_iterator_post_increment): New. * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_post_increment_neg.cc: New test. * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_pre_increment_neg.cc: New test.
2022-01-03Update copyright years.Jakub Jelinek2-2/+2
2021-01-04Update copyright years.Jakub Jelinek2-2/+2
2020-01-01Update copyright years.Jakub Jelinek2-2/+2
From-SVN: r279813
2019-01-01Update copyright years.Jakub Jelinek2-2/+2
From-SVN: r267494
2018-01-03Update copyright years.Jakub Jelinek2-2/+2
From-SVN: r256169
2017-01-01Update copyright years.Jakub Jelinek2-2/+2
From-SVN: r243994
2016-10-13container_access.cc: Remove 'test' variables.Paolo Carlini2-30/+0
2016-10-13 Paolo Carlini <paolo.carlini@oracle.com> * testsuite/24_iterators/container_access.cc: Remove 'test' variables. * testsuite/24_iterators/istream_iterator/2.cc: Likewise. * testsuite/24_iterators/istreambuf_iterator/2.cc: Likewise. * testsuite/24_iterators/istreambuf_iterator/2627.cc: Likewise. * testsuite/24_iterators/operations/next.cc: Likewise. * testsuite/24_iterators/operations/prev.cc: Likewise. * testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise. * testsuite/24_iterators/random_access_iterator/26020.cc: Likewise. * testsuite/24_iterators/range_access_cpp14.cc: Likewise. * testsuite/24_iterators/reverse_iterator/11729.cc: Likewise. * testsuite/24_iterators/reverse_iterator/3.cc: Likewise. * testsuite/25_algorithms/adjacent_find/vectorbool.cc: Likewise. * testsuite/25_algorithms/all_of/1.cc: Likewise. * testsuite/25_algorithms/any_of/1.cc: Likewise. * testsuite/25_algorithms/binary_search/2.cc: Likewise. * testsuite/25_algorithms/binary_search/partitioned.cc: Likewise. * testsuite/25_algorithms/clamp/1.cc: Likewise. * testsuite/25_algorithms/clamp/2.cc: Likewise. * testsuite/25_algorithms/copy/1.cc: Likewise. * testsuite/25_algorithms/copy/2.cc: Likewise. * testsuite/25_algorithms/copy/3.cc: Likewise. * testsuite/25_algorithms/copy/34595.cc: Likewise. * testsuite/25_algorithms/copy/4.cc: Likewise. * testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise. * testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise. * testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise. * testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise. * testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise. * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise. * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc: Likewise. * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc: Likewise. * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc: Likewise. * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc: Likewise. * testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise. * testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise. * testsuite/25_algorithms/copy_n/1.cc: Likewise. * testsuite/25_algorithms/copy_n/2.cc: Likewise. * testsuite/25_algorithms/copy_n/3.cc: Likewise. * testsuite/25_algorithms/copy_n/4.cc: Likewise. * testsuite/25_algorithms/copy_n/50119.cc: Likewise. * testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise. * testsuite/25_algorithms/equal_range/2.cc: Likewise. * testsuite/25_algorithms/equal_range/partitioned.cc: Likewise. * testsuite/25_algorithms/fill/1.cc: Likewise. * testsuite/25_algorithms/fill/2.cc: Likewise. * testsuite/25_algorithms/fill/3.cc: Likewise. * testsuite/25_algorithms/fill/4.cc: Likewise. * testsuite/25_algorithms/fill_n/1.cc: Likewise. * testsuite/25_algorithms/find/39546.cc: Likewise. * testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc: Likewise. * testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: Likewise. * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc: Likewise. * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc: Likewise. * testsuite/25_algorithms/find_if/1.cc: Likewise. * testsuite/25_algorithms/find_if_not/1.cc: Likewise. * testsuite/25_algorithms/for_each/1.cc: Likewise. * testsuite/25_algorithms/heap/1.cc: Likewise. * testsuite/25_algorithms/heap/moveable.cc: Likewise. * testsuite/25_algorithms/heap/moveable2.cc: Likewise. * testsuite/25_algorithms/heap/vectorbool.cc: Likewise. * testsuite/25_algorithms/includes/1.cc: Likewise. * testsuite/25_algorithms/inplace_merge/1.cc: Likewise. * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise. * testsuite/25_algorithms/inplace_merge/moveable.cc: Likewise. * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise. * testsuite/25_algorithms/is_heap/1.cc: Likewise. * testsuite/25_algorithms/is_heap_until/1.cc: Likewise. * testsuite/25_algorithms/is_partitioned/1.cc: Likewise. * testsuite/25_algorithms/is_permutation/1.cc: Likewise. * testsuite/25_algorithms/is_permutation/2.cc: Likewise. * testsuite/25_algorithms/is_permutation/vectorbool.cc: Likewise. * testsuite/25_algorithms/is_sorted/1.cc: Likewise. * testsuite/25_algorithms/is_sorted_until/1.cc: Likewise. * testsuite/25_algorithms/iter_swap/20577.cc: Likewise. * testsuite/25_algorithms/lower_bound/2.cc: Likewise. * testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise. * testsuite/25_algorithms/make_heap/complexity.cc: Likewise. * testsuite/25_algorithms/max/1.cc: Likewise. * testsuite/25_algorithms/max/2.cc: Likewise. * testsuite/25_algorithms/max/3.cc: Likewise. * testsuite/25_algorithms/max/37547.cc: Likewise. * testsuite/25_algorithms/max/4.cc: Likewise. * testsuite/25_algorithms/min/1.cc: Likewise. * testsuite/25_algorithms/min/2.cc: Likewise. * testsuite/25_algorithms/min/3.cc: Likewise. * testsuite/25_algorithms/min/37547.cc: Likewise. * testsuite/25_algorithms/min/4.cc: Likewise. * testsuite/25_algorithms/minmax/1.cc: Likewise. * testsuite/25_algorithms/minmax/2.cc: Likewise. * testsuite/25_algorithms/minmax/3.cc: Likewise. * testsuite/25_algorithms/minmax/37547.cc: Likewise. * testsuite/25_algorithms/minmax_element/1.cc: Likewise. * testsuite/25_algorithms/move/1.cc: Likewise. * testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise. * testsuite/25_algorithms/move_backward/1.cc: Likewise. * testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise. * testsuite/25_algorithms/next_permutation/moveable.cc: Likewise. * testsuite/25_algorithms/none_of/1.cc: Likewise. * testsuite/25_algorithms/nth_element/1.cc: Likewise. * testsuite/25_algorithms/nth_element/2.cc: Likewise. * testsuite/25_algorithms/nth_element/3.cc: Likewise. * testsuite/25_algorithms/nth_element/moveable.cc: Likewise. * testsuite/25_algorithms/nth_element/random_test.cc: Likewise. * testsuite/25_algorithms/partial_sort/2.cc: Likewise. * testsuite/25_algorithms/partial_sort/check_compare_by_value.cc: Likewise. * testsuite/25_algorithms/partial_sort/moveable.cc: Likewise. * testsuite/25_algorithms/partial_sort/random_test.cc: Likewise. * testsuite/25_algorithms/partial_sort_copy/2.cc: Likewise. * testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise. * testsuite/25_algorithms/partition/1.cc: Likewise. * testsuite/25_algorithms/partition/moveable.cc: Likewise. * testsuite/25_algorithms/partition_copy/1.cc: Likewise. * testsuite/25_algorithms/partition_point/1.cc: Likewise. * testsuite/25_algorithms/pop_heap/complexity.cc: Likewise. * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise. * testsuite/25_algorithms/push_heap/complexity.cc: Likewise. * testsuite/25_algorithms/random_shuffle/1.cc: Likewise. * testsuite/25_algorithms/random_shuffle/moveable.cc: Likewise. * testsuite/25_algorithms/rotate/1.cc: Likewise. * testsuite/25_algorithms/rotate/moveable.cc: Likewise. * testsuite/25_algorithms/rotate/moveable2.cc: Likewise. * testsuite/25_algorithms/rotate/rotate.cc: Likewise. * testsuite/25_algorithms/search/1.cc: Likewise. * testsuite/25_algorithms/search_n/58358.cc: Likewise. * testsuite/25_algorithms/shuffle/1.cc: Likewise. * testsuite/25_algorithms/sort/1.cc: Likewise. * testsuite/25_algorithms/sort/check_compare_by_value.cc: Likewise. * testsuite/25_algorithms/sort/moveable.cc: Likewise. * testsuite/25_algorithms/sort/random_test.cc: Likewise. * testsuite/25_algorithms/sort/vectorbool.cc: Likewise. * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc: Likewise. * testsuite/25_algorithms/sort_heap/complexity.cc: Likewise. * testsuite/25_algorithms/stable_partition/1.cc: Likewise. * testsuite/25_algorithms/stable_partition/mem_check.cc: Likewise. * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise. * testsuite/25_algorithms/stable_sort/2.cc: Likewise. * testsuite/25_algorithms/stable_sort/3.cc: Likewise. * testsuite/25_algorithms/stable_sort/49559.cc: Likewise. * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc: Likewise. * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise. * testsuite/25_algorithms/stable_sort/moveable.cc: Likewise. * testsuite/25_algorithms/stable_sort/moveable2.cc: Likewise. * testsuite/25_algorithms/swap_ranges/1.cc: Likewise. * testsuite/25_algorithms/unique/11480.cc: Likewise. * testsuite/25_algorithms/unique/2.cc: Likewise. * testsuite/25_algorithms/unique/moveable.cc: Likewise. * testsuite/25_algorithms/unique_copy/1.cc: Likewise. * testsuite/25_algorithms/unique_copy/2.cc: Likewise. * testsuite/25_algorithms/unique_copy/26133.cc: Likewise. * testsuite/25_algorithms/upper_bound/2.cc: Likewise. * testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/basic/string_01.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/basic/ string_range_00_03.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/basic/ string_range_01_03.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/basic/ string_range_02_03.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/char/53622.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/char/57173.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/char/58576.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/char/68863.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/char/ungreedy.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/ anymatcher.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/cjk_match.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/extended/ cstring_questionmark.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/extended/ cstring_range.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/extended/string_any.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/extended/ string_range_00_03.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/extended/ string_range_01_03.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/extended/ string_range_02_03.cc: Likewise. * testsuite/28_regex/algorithms/regex_match/extended/ wstring_locale.cc: Likewise. * testsuite/28_regex/algorithms/regex_replace/char/basic_replace.cc: Likewise. * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc: Likewise. * testsuite/28_regex/algorithms/regex_search/61720.cc: Likewise. * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc: Likewise. * testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc: Likewise. * testsuite/28_regex/algorithms/regex_search/ecma/flags.cc: Likewise. * testsuite/28_regex/algorithms/regex_search/ecma/greedy.cc: Likewise. * testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc: Likewise. * testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise. * testsuite/28_regex/basic_regex/assign/char/cstring_op.cc: Likewise. * testsuite/28_regex/basic_regex/assign/char/moveable.cc: Likewise. * testsuite/28_regex/basic_regex/assign/char/pstring.cc: Likewise. * testsuite/28_regex/basic_regex/assign/char/range.cc: Likewise. * testsuite/28_regex/basic_regex/assign/char/string.cc: Likewise. * testsuite/28_regex/basic_regex/assign/char/string_op.cc: Likewise. * testsuite/28_regex/basic_regex/assign/wchar_t/cstring.cc: Likewise. * testsuite/28_regex/basic_regex/assign/wchar_t/cstring_op.cc: Likewise. * testsuite/28_regex/basic_regex/assign/wchar_t/pstring.cc: Likewise. * testsuite/28_regex/basic_regex/assign/wchar_t/range.cc: Likewise. * testsuite/28_regex/basic_regex/assign/wchar_t/string.cc: Likewise. * testsuite/28_regex/basic_regex/assign/wchar_t/string_op.cc: Likewise. * testsuite/28_regex/basic_regex/ctors/basic/pstring_wchar_t.cc: Likewise. * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc: Likewise. * testsuite/28_regex/basic_regex/ctors/extended/cstring.cc: Likewise. * testsuite/28_regex/basic_regex/ctors/extended/ string_range_01_02_03.cc: Likewise. * testsuite/28_regex/basic_regex/ctors/move_char.cc: Likewise. * testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise. * testsuite/28_regex/basic_regex/ctors/wchar_t/cstring.cc: Likewise. * testsuite/28_regex/basic_regex/ctors/wchar_t/default.cc: Likewise. * testsuite/28_regex/basic_regex/ctors/wchar_t/range.cc: Likewise. * testsuite/28_regex/basic_regex/imbue/string.cc: Likewise. * testsuite/28_regex/constants/error_type.cc: Likewise. * testsuite/28_regex/constants/match_flag_type.cc: Likewise. * testsuite/28_regex/init-list.cc: Likewise. * testsuite/28_regex/iterators/regex_iterator/char/64140.cc: Likewise. * testsuite/28_regex/iterators/regex_iterator/char/string_01.cc: Likewise. * testsuite/28_regex/iterators/regex_iterator/char/ string_position_01.cc * testsuite/28_regex/iterators/regex_iterator/ctors/char/default.cc: Likewise. * testsuite/28_regex/iterators/regex_iterator/ctors/wchar_t/ default.cc: Likewise. * testsuite/28_regex/iterators/regex_iterator/typedefs.cc: Likewise. * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc: Likewise. * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc: Likewise. * testsuite/28_regex/iterators/regex_token_iterator/64303.cc: Likewise. * testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc: Likewise. * testsuite/28_regex/iterators/regex_token_iterator/ctors/char/ default.cc: Likewise. * testsuite/28_regex/iterators/regex_token_iterator/ctors/wchar_t/ default.cc: Likewise. * testsuite/28_regex/iterators/regex_token_iterator/typedefs.cc: Likewise. * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/ string_01.cc: Likewise. * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/ wstring_02.cc: Likewise. * testsuite/28_regex/match_results/ctors/char/default.cc: Likewise. * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise. * testsuite/28_regex/match_results/format.cc: Likewise. * testsuite/28_regex/match_results/out_of_range_submatches.cc: Likewise. * testsuite/28_regex/match_results/swap.cc: Likewise. * testsuite/28_regex/match_results/typedefs.cc: Likewise. * testsuite/28_regex/regex_error/regex_error.cc: Likewise. * testsuite/28_regex/regression.cc: Likewise. * testsuite/28_regex/sub_match/cast_char.cc: Likewise. * testsuite/28_regex/sub_match/cast_wchar_t.cc: Likewise. * testsuite/28_regex/sub_match/embedded_zeros_cmp.cc: Likewise. * testsuite/28_regex/sub_match/length.cc: Likewise. * testsuite/28_regex/traits/char/ctor.cc: Likewise. * testsuite/28_regex/traits/char/isctype.cc: Likewise. * testsuite/28_regex/traits/char/length.cc: Likewise. * testsuite/28_regex/traits/char/lookup_classname.cc: Likewise. * testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise. * testsuite/28_regex/traits/char/transform.cc: Likewise. * testsuite/28_regex/traits/char/transform_primary.cc: Likewise. * testsuite/28_regex/traits/char/translate.cc: Likewise. * testsuite/28_regex/traits/char/translate_nocase.cc: Likewise. * testsuite/28_regex/traits/char/user_defined.cc: Likewise. * testsuite/28_regex/traits/char/value.cc: Likewise. * testsuite/28_regex/traits/wchar_t/ctor.cc: Likewise. * testsuite/28_regex/traits/wchar_t/isctype.cc: Likewise. * testsuite/28_regex/traits/wchar_t/length.cc: Likewise. * testsuite/28_regex/traits/wchar_t/lookup_classname.cc: Likewise. * testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: Likewise. * testsuite/28_regex/traits/wchar_t/transform.cc: Likewise. * testsuite/28_regex/traits/wchar_t/transform_primary.cc: Likewise. * testsuite/28_regex/traits/wchar_t/translate.cc: Likewise. * testsuite/28_regex/traits/wchar_t/translate_nocase.cc: Likewise. * testsuite/28_regex/traits/wchar_t/user_defined.cc: Likewise. * testsuite/28_regex/traits/wchar_t/value.cc: Likewise. * testsuite/29_atomics/atomic/60658.cc: Likewise. * testsuite/29_atomics/atomic/operators/51811.cc: Likewise. * testsuite/29_atomics/atomic_flag/clear/1.cc: Likewise. * testsuite/backward/11460.cc: Likewise. * testsuite/backward/hash_map/1.cc: Likewise. * testsuite/backward/hash_map/25896.cc: Likewise. * testsuite/backward/hash_set/1.cc: Likewise. * testsuite/backward/hash_set/25896.cc: Likewise. * testsuite/decimal/binary-arith.cc: Likewise. * testsuite/decimal/comparison.cc: Likewise. * testsuite/decimal/compound-assignment-memfunc.cc: Likewise. * testsuite/decimal/compound-assignment.cc: Likewise. * testsuite/decimal/conversion-from-float.cc: Likewise. * testsuite/decimal/conversion-from-integral.cc: Likewise. * testsuite/decimal/conversion-to-generic-float.cc: Likewise. * testsuite/decimal/conversion-to-integral.cc: Likewise. * testsuite/decimal/ctor.cc: Likewise. * testsuite/decimal/incdec-memfunc.cc: Likewise. * testsuite/decimal/incdec.cc: Likewise. * testsuite/decimal/make-decimal.cc: Likewise. * testsuite/decimal/pr54036-1.cc: Likewise. * testsuite/decimal/pr54036-2.cc: Likewise. * testsuite/decimal/pr54036-3.cc: Likewise. * testsuite/decimal/unary-arith.cc: Likewise. * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: Likewise. * testsuite/special_functions/01_assoc_laguerre/check_value.cc: Likewise. * testsuite/special_functions/02_assoc_legendre/check_nan.cc: Likewise. * testsuite/special_functions/02_assoc_legendre/check_value.cc: Likewise. * testsuite/special_functions/03_beta/check_nan.cc: Likewise. * testsuite/special_functions/03_beta/check_value.cc: Likewise. * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise. * testsuite/special_functions/04_comp_ellint_1/check_value.cc: Likewise. * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise. * testsuite/special_functions/05_comp_ellint_2/check_value.cc: Likewise. * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise. * testsuite/special_functions/06_comp_ellint_3/check_value.cc: Likewise. * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise. * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: Likewise. * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise. * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise. * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: Likewise. * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise. * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: Likewise. * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise. * testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise. * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise. * testsuite/special_functions/11_ellint_1/check_value.cc: Likewise. * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise. * testsuite/special_functions/12_ellint_2/check_value.cc: Likewise. * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise. * testsuite/special_functions/13_ellint_3/check_value.cc: Likewise. * testsuite/special_functions/14_expint/check_nan.cc: Likewise. * testsuite/special_functions/14_expint/check_value.cc: Likewise. * testsuite/special_functions/15_hermite/check_nan.cc: Likewise. * testsuite/special_functions/15_hermite/check_value.cc: Likewise. * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise. * testsuite/special_functions/16_laguerre/check_value.cc: Likewise. * testsuite/special_functions/17_legendre/check_nan.cc: Likewise. * testsuite/special_functions/17_legendre/check_value.cc: Likewise. * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise. * testsuite/special_functions/18_riemann_zeta/check_value.cc: Likewise. * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise. * testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise. * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise. * testsuite/special_functions/20_sph_legendre/check_value.cc: Likewise. * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise. * testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise. * testsuite/tr2/bases/value.cc: Likewise. * testsuite/tr2/direct_bases/value.cc: Likewise. * testsuite/util/debug/checks.h: Likewise. * testsuite/util/debug/unordered_checks.h: Likewise. * testsuite/util/testsuite_allocator.h: Likewise. * testsuite/util/testsuite_api.h: Likewise. * testsuite/util/testsuite_common_types.h: Likewise. * testsuite/util/testsuite_random.h: Likewise. * testsuite/util/testsuite_rvalref.h: Likewise. From-SVN: r241138
2016-09-15Fix testsuite to not increment boolJonathan Wakely1-0/+13
* testsuite/23_containers/vector/debug/insert6_neg.cc: Remove -Wno-deprecated. * testsuite/util/debug/checks.h (generate_unique<bool>): Specialize. From-SVN: r240157
2016-04-29Remove trailing whitespace from libstdc++-v3 filesChris Gregory2-3/+3
2016-04-29 Chris Gregory <czipperz@gmail.com> * config/*: Remove trailing whitespace. * src/*: Likewise. * testsuite/tr1/*: Likewise. * testsuite/util/*: Likewise. From-SVN: r235645
2016-01-04Update copyright years.Jakub Jelinek2-2/+2
From-SVN: r232055
2015-01-05Update copyright years.Jakub Jelinek2-2/+2
From-SVN: r219188
2014-05-06macros.h [...]: Add parameter to pass the 2 instances to check allocator ↵François Dumont1-9/+3
equality. 2014-05-06 François Dumont <fdumont@gcc.gnu.org> * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add parameter to pass the 2 instances to check allocator equality. * include/debug/safe_container.h: New, define _Safe_container<>. * include/Makefile.am: Add previous. * include/debug/deque (std::__debug::deque<>): Inherit _Safe_container<>. Use default implementation for all special functions. * include/debug/forward_list (std::__debug::forward_list<>): Likewise. * include/debug/list (std::__debug::list<>): Likewise. * include/debug/map.h (std::__debug::map<>): Likewise. * include/debug/multimap.h (std::__debug::multimap<>): Likewise. * include/debug/set.h (std::__debug::set<>): Likewise. * include/debug/multiset.h (std::__debug::multiset<>): Likewise. * include/debug/string (std::__debug::basic_string<>): Likewise. * include/debug/unordered_map (std::__debug::unordered_map<>): Likewise. (std::__debug::unordered_multimap<>): Likewise. * include/debug/unordered_set (std::__debug::unordered_set<>): Likewise. (std::__debug::unordered_multiset<>): Likewise. * include/debug/vector (std::__debug::vector<>): Likewise. * include/debug/safe_base.h (_Safe_sequence_base()): Add noexcept. (_Safe_sequence_base(_Safe_sequence_base&&): Remove. (~_Safe_sequence_base()): Add noexcept. * include/debug/safe_sequence.h (std::__debug::_Safe_node_sequence<>): New. * include/debug/safe_unordered_base.h (_Safe_unordered_container_base()): Add noexcept. (~_Safe_unordered_container_base()): Likewise. (_M_swap(_Safe_unordered_container_base&)): Likewise. * include/debug/safe_unordered_container.h: (_Safe_unordered_container<>::_M_invalidate_locals()): New. (_Safe_unordered_container<>::_M_invalidate_all()): New. * src/c++11/debug.cc: Limit includes, adapt methods noexcept qualifications. * testsuite/util/debug/checks.h (check_construct1): Just implement an invalid constructor invocation and no other operations potentially not supported by some types of container. (check_construct2): Likewise. (check_construct3): Likewise. * testsuite/23_containers/forward_list/allocator/move.cc: Add check on iterators to make sure they are correctly moved in debug mode. * testsuite/23_containers/forward_list/allocator/move_assign.cc: Likewise. * testsuite/23_containers/map/allocator/move.cc: Likewise. * testsuite/23_containers/map/allocator/move_assign.cc: Likewise. * testsuite/23_containers/multimap/allocator/move.cc: Likewise. * testsuite/23_containers/multimap/allocator/move_assign.cc: Likewise. * testsuite/23_containers/multiset/allocator/move.cc: Likewise. * testsuite/23_containers/multiset/allocator/move_assign.cc: Likewise. * testsuite/23_containers/set/allocator/move.cc: Likewise. * testsuite/23_containers/set/allocator/move_assign.cc: Likewise. * testsuite/23_containers/unordered_map/allocator/move.cc: Likewise. * testsuite/23_containers/unordered_map/allocator/move_assign.cc: Likewise. * testsuite/23_containers/unordered_multimap/allocator/move.cc: Likewise. * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc: Likewise. * testsuite/23_containers/unordered_multiset/allocator/move.cc: Likewise. * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc: Likewise. * testsuite/23_containers/unordered_set/allocator/move.cc: Likewise. * testsuite/23_containers/unordered_set/allocator/move_assign.cc: Likewise. * testsuite/23_containers/forward_list/debug/construct1_neg.cc: New. * testsuite/23_containers/forward_list/debug/construct2_neg.cc: New. * testsuite/23_containers/forward_list/debug/construct3_neg.cc: New. * testsuite/23_containers/forward_list/debug/construct4_neg.cc: New. * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: New. * testsuite/23_containers/forward_list/debug/move_neg.cc: New. * testsuite/23_containers/map/debug/construct5_neg.cc: New. * testsuite/23_containers/map/debug/move_assign_neg.cc: New. * testsuite/23_containers/map/debug/move_neg.cc: New. * testsuite/23_containers/multimap/debug/construct5_neg.cc: New. * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New. * testsuite/23_containers/multimap/debug/move_neg.cc: New. * testsuite/23_containers/multiset/debug/construct5_neg.cc: New. * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New. * testsuite/23_containers/multiset/debug/move_neg.cc: New. * testsuite/23_containers/set/debug/construct5_neg.cc: New. * testsuite/23_containers/set/debug/move_assign_neg.cc: New. * testsuite/23_containers/set/debug/move_neg.cc: New. * testsuite/23_containers/unordered_map/debug/construct5_neg.cc: New. * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc: New. * testsuite/23_containers/unordered_map/debug/move_neg.cc: New. * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc: New. * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc: New. * testsuite/23_containers/unordered_multimap/debug/move_neg.cc: New. * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc: New. * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc: New. * testsuite/23_containers/unordered_multiset/debug/move_neg.cc: New. * testsuite/23_containers/unordered_set/debug/construct5_neg.cc: New. * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc: New. * testsuite/23_containers/unordered_set/debug/move_neg.cc: New. * testsuite/23_containers/vector/debug/move_neg.cc: New. From-SVN: r210123
2014-01-02Update copyright years in libstdc++-v3/Richard Sandiford2-2/+2
From-SVN: r206301
2013-08-01re PR libstdc++/57779 (vector insert fails to diagnose iterators pointing ↵François Dumont1-1/+29
into *this in debug mode) 2013-08-01 François Dumont <fdumont@gcc.gnu.org> PR libstdc++/57779 * include/debug/formatter.h (_Debug_msg_id): Add __msg_insert_itself_range entry. * include/debug/functions.h (_Insert_range_from_self_is_safe<>): New, indicate container types supporting self range insertion in GNU implementation. (__foreign_iterator): New, check if an iterator points to a given sequence. * include/debug/macros.h (__glibcxx_check_insert_range): Add check using __foreign_iterator. (__gibcxx_check_insert_range_after): Likewise. * include/debug/string (_Insert_range_from_self_is_safe<>): Partially specialized to mark __gnu_debug::basic_string<> as supporting self range insert. * include/debug/list (_Insert_range_from_self_is_safe<>): Partially specialized to mark std::list as supporting self range insert if _GLIBCXX_DEBUG_PEDANTIC is not defined. * include/debug/forward_list (_Insert_range_from_self_is_safe<>): Likewise. * src/c++11/debug.cc (_S_debug_messages): Add __msg_insert_itself_range_entry message. (_Error_formatter::_Parameter::_M_print_description): Display iterator sequence address rather than sequence address when the parameter type is an iterator. (_Error_formatter::_M_print_word): Enhance behavior when displaying a word with an appended '\n'. * testsuite/util/debug/checks.h (check_insert4<>): New. * testsuite/23_containers/deque/debug/insert5_neg.cc: New. * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert6_neg.cc: Likewise. * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise. * testsuite/23_containers/list/debug/insert5_neg.cc: Likewise. * testsuite/23_containers/forward_list/debug/insert_after4_neg.cc: Likewise. From-SVN: r201416
2013-02-03Update copyright in libstdc++-v3.Richard Sandiford2-2/+2
From-SVN: r195701
2011-07-19safe_unordered_base.h, [...]: New, support for unordered sequence safe local ↵François Dumont2-12/+222
iterators. 2011-07-19 François Dumont <francois.cppdevs@free.fr> * include/debug/safe_unordered_base.h, safe_unordered_sequence.h, safe_unordered_sequence.tcc, safe_local_iterator.h, safe_local_iterator.tcc: New, support for unordered sequence safe local iterators. * include/Makefile.am: Add previous files. * include/Makefile.in: Regenerate. * include/debug/unordered_map, unordered_set: Implement _Safe_unordered_sequence and expose _Safe_local_iterator. * include/debug/safe_iterator.h, safe_iterator.tcc: Refactor _Safe_iterator::_M_get_distance static method to expose it as __get_distance function and use it in _Safe_local_iterator type. * include/debug/formatter.h: Add __msg_local_iter_compare_bad _Debug_msg_id enum entry to notify invalid comparison between local iterators from different buckets. Add _Parameter constructor from _Safe_local_iterator. * include/debug/functions.h: Add __valid_range overload for _Safe_local_iterator. * src/debug.cc: Add _Safe_unordered_sequence_base and _Safe_local_iterator_base methods implementations. * config/abi/pre/gnu.ver: Add export of some _Safe_unordered_sequence_base and _Safe_local_iterator_base methods. * testsuite/util/debug/checks.h: Add use_invalid_iterator function to simulate use of a singular iterator. * testsuite/util/debug/unordered_checks.h: New, several functions to simulate classic invalid usage of unordered sequence local iterators. * testsuite/23_containers/unordered_map/debug/ use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, invalid_local_iterator_compare_neg.cc: New. * testsuite/23_containers/unordered_multimap/debug/ use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, invalid_local_iterator_compare_neg.cc: New. * testsuite/23_containers/unordered_set/debug/ use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, invalid_local_iterator_compare_neg.cc: New. * testsuite/23_containers/unordered_multiset/debug/ use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, invalid_local_iterator_compare_neg.cc: New. From-SVN: r176487
2010-09-03libstdc++.exp ([check_v3_target_debug_mode]): Fix so that it really detects ↵François Dumont4-396/+379
when debug mode is activated. 2010-09-03 François Dumont <francois.cppdevs@free.fr> * testsuite/lib/libstdc++.exp ([check_v3_target_debug_mode]): Fix so that it really detects when debug mode is activated. * testsuite/util/debug/construct_neg.h, insert_neg.h, assign_neg.h: Remove, content moved... * testsuite/util/debug/checks.h: ... here. Modify checks to take the type of the container to test rather than an intermediate container type traits helper. * testsuite/23_containers/unordered_map/debug/insert1_neg.cc: Update to use dg-require-debug-mode when necessary and use new check functions. * testsuite/23_containers/unordered_map/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/unordered_map/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/unordered_map/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/unordered_map/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/unordered_map/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/unordered_map/debug/construct4_neg.cc: Likewise. * testsuite/23_containers/unordered_map/debug/insert4_neg.cc: Likewise. * testsuite/23_containers/multimap/debug/insert1_neg.cc: Likewise. * testsuite/23_containers/multimap/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/multimap/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/multimap/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/multimap/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/multimap/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/multimap/debug/construct4_neg.cc: Likewise. * testsuite/23_containers/multimap/debug/insert4_neg.cc: Likewise. * testsuite/23_containers/set/debug/insert1_neg.cc: Likewise. * testsuite/23_containers/set/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/set/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/set/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/set/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/set/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/set/debug/construct4_neg.cc: Likewise. * testsuite/23_containers/set/debug/insert4_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/insert1_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/construct4_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/insert4_neg.cc: Likewise. * testsuite/23_containers/vector/debug/assign1_neg.cc: Likewise. * testsuite/23_containers/vector/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/vector/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/vector/debug/assign2_neg.cc: Likewise. * testsuite/23_containers/vector/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/vector/debug/assign3_neg.cc: Likewise. * testsuite/23_containers/vector/debug/construct4_neg.cc: Likewise. * testsuite/23_containers/vector/debug/assign4_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert1_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert4_neg.cc: Likewise. * testsuite/23_containers/unordered_set/debug/insert1_neg.cc: Likewise. * testsuite/23_containers/unordered_set/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/unordered_set/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/unordered_set/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/unordered_set/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/unordered_set/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/unordered_set/debug/construct4_neg.cc: Likewise. * testsuite/23_containers/unordered_set/debug/insert4_neg.cc: Likewise. * testsuite/23_containers/deque/debug/assign1_neg.cc: Likewise. * testsuite/23_containers/deque/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/deque/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/deque/debug/assign2_neg.cc: Likewise. * testsuite/23_containers/deque/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/deque/debug/assign3_neg.cc: Likewise. * testsuite/23_containers/deque/debug/construct4_neg.cc: Likewise. * testsuite/23_containers/deque/debug/assign4_neg.cc: Likewise. * testsuite/23_containers/deque/debug/insert1_neg.cc: Likewise. * testsuite/23_containers/deque/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/deque/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/deque/debug/insert4_neg.cc: Likewise. * testsuite/23_containers/multiset/debug/insert1_neg.cc: Likewise. * testsuite/23_containers/multiset/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/multiset/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/multiset/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/multiset/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/multiset/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/multiset/debug/construct4_neg.cc: Likewise. * testsuite/23_containers/multiset/debug/insert4_neg.cc: Likewise. * testsuite/23_containers/list/debug/assign1_neg.cc: Likewise. * testsuite/23_containers/list/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/list/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/list/debug/assign2_neg.cc: Likewise. * testsuite/23_containers/list/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/list/debug/assign3_neg.cc: Likewise. * testsuite/23_containers/list/debug/construct4_neg.cc: Likewise. * testsuite/23_containers/list/debug/assign4_neg.cc: Likewise. * testsuite/23_containers/list/debug/insert1_neg.cc: Likewise. * testsuite/23_containers/list/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/list/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/list/debug/insert4_neg.cc: Likewise. * testsuite/23_containers/unordered_multiset/debug/insert1_neg.cc: Likewise. * testsuite/23_containers/unordered_multiset/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/unordered_multiset/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/unordered_multiset/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/unordered_multiset/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/unordered_multiset/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/unordered_multiset/debug/construct4_neg.cc: Likewise. * testsuite/23_containers/unordered_multiset/debug/insert4_neg.cc: Likewise. * testsuite/23_containers/map/debug/insert1_neg.cc: Likewise. * testsuite/23_containers/map/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/map/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/map/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/map/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/map/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/map/debug/construct4_neg.cc: Likewise. * testsuite/23_containers/map/debug/insert4_neg.cc: Likewise. * testsuite/23_containers/unordered_map/debug/cont_traits.h: Remove. * testsuite/23_containers/unordered_map/debug/debug_cont_traits.h: Likewise. * testsuite/23_containers/multimap/debug/cont_traits.h: Likewise. * testsuite/23_containers/multimap/debug/debug_cont_traits.h: Likewise. * testsuite/23_containers/set/debug/cont_traits.h: Likewise. * testsuite/23_containers/set/debug/debug_cont_traits.h: Likewise. * testsuite/23_containers/unordered_multimap/debug/cont_traits.h: Likewise. * testsuite/23_containers/unordered_multimap/debug/ debug_cont_traits.h: Likewise. * testsuite/23_containers/vector/debug/cont_traits.h: Likewise. * testsuite/23_containers/vector/debug/debug_cont_traits.h: Likewise. * testsuite/23_containers/unordered_set/debug/cont_traits.h: Likewise. * testsuite/23_containers/unordered_set/debug/debug_cont_traits.h: Likewise. * testsuite/23_containers/deque/debug/cont_traits.h: Likewise. * testsuite/23_containers/deque/debug/debug_cont_traits.h: Likewise. * testsuite/23_containers/multiset/debug/cont_traits.h: Likewise. * testsuite/23_containers/multiset/debug/debug_cont_traits.h: Likewise. * testsuite/23_containers/list/debug/cont_traits.h: Likewise. * testsuite/23_containers/list/debug/debug_cont_traits.h: Likewise. * testsuite/23_containers/unordered_multiset/debug/cont_traits.h: Likewise. * testsuite/23_containers/unordered_multiset/debug/ debug_cont_traits.h: Likewise. * testsuite/23_containers/map/debug/cont_traits.h: Likewise. * testsuite/23_containers/map/debug/debug_cont_traits.h: Likewise. * testsuite/21_strings/basic_string/element_access/char: Tidy. * testsuite/21_strings/basic_string/element_access/wchar_t: Likewise. From-SVN: r163837
2010-08-29[multiple changes]Paolo Carlini3-0/+396
2010-08-29 Paolo Carlini <paolo.carlini@oracle.com> * testsuite/23_containers/bitset/invalidation: Move... * testsuite/23_containers/bitset/debug/invalidation: ... here. * testsuite/23_containers/deque/invalidation: Move... * testsuite/23_containers/deque/debug/invalidation: ... here. * testsuite/23_containers/list/invalidation: Move... * testsuite/23_containers/list/debug/invalidation: ... here. * testsuite/23_containers/map/invalidation: Move... * testsuite/23_containers/map/debug/invalidation: ... here. * testsuite/23_containers/multimap/invalidation: Move... * testsuite/23_containers/multimap/debug/invalidation: ... here. * testsuite/23_containers/set/invalidation: Move... * testsuite/23_containers/set/debug/invalidation: ... here. * testsuite/23_containers/multiset/invalidation: Move... * testsuite/23_containers/multiset/debug/invalidation: ... here. * testsuite/23_containers/vector/invalidation: Move... * testsuite/23_containers/vector/debug/invalidation: ... here. 2010-08-29 François Dumont <francois.cppdevs@free.fr> * include/bits/stl_algobase.h (_Iter_base): Move... * include/bits/stl_iterator_base_types.h: ...here. * include/debug/functions.h (__check_valid_range, __check_string, __check_sorted): Fix to not depend on _GLIBCXX_DEBUG; include formatter.h and use formatting macros for a consistent debug result. * include/debug/formatter.h (__check_singular): Declare; do not include debug.h. * include/debug/debug.h: Do not include formatter.h. * include/debug/safe_iterator.h (_Safe_iterator::_Base_Iterator) rename to iterator_type. (__gnu_debug::__base): Add. * include/debug/set.h: Use everywhere __gnu_debug::__base once iterator range valided. * include/debug/unordered_map: Likewise. * include/debug/multiset.h: Likewise. * include/debug/vector: Likewise. * include/debug/unordered_set: Likewise. * include/debug/deque: Likewise. * include/debug/map.h: Likewise. * include/debug/string: Likewise. * include/debug/list: Likewise. * include/debug/multimap.h: Likewise. * testsuite/23_containers/util/debug/assign_neg.h: New test cases on debug checks performed on container assign operation. * testsuite/23_containers/util/debug/construct_neg.h: New test cases on debug checks on constructors. * testsuite/23_containers/util/debug/insert_neg.h: New test cases on debug checks performed on container insert operations. * testsuite/23_containers/unordered_map/debug/cont_traits.h, debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc, construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc, insert3_neg.cc, insert4_neg.cc: New. * testsuite/23_containers/multimap/debug/cont_traits.h, debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc, construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc, insert3_neg.cc, insert4_neg.cc: Likewise. * testsuite/23_containers/set/debug/cont_traits.h, debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc, construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc, insert3_neg.cc, insert4_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/cont_traits.h, debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc, construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc, insert3_neg.cc, insert4_neg.cc: Likewise. * testsuite/23_containers/unordered_set/debug/cont_traits.h, debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc, construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc, insert3_neg.cc, insert4_neg.cc: Likewise. * testsuite/23_containers/multiset/debug/cont_traits.h, debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc, construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc, insert3_neg.cc, insert4_neg.cc: Likewise. * testsuite/23_containers/unordered_multiset/debug/cont_traits.h, debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc, construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc, insert3_neg.cc, insert4_neg.cc: Likewise. * testsuite/23_containers/map/debug/cont_traits.h, debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc, construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc, insert3_neg.cc, insert4_neg.cc: Likewise. * testsuite/23_containers/vector/debug/cont_traits.h, debug_cont_traits.h, assign1_neg.cc, assign2_neg.cc, assign3_neg.cc, assign4_neg.cc, construct1_neg.cc, construct2_neg.cc, construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc, insert3_neg.cc, insert4_neg.cc: Likewise. * testsuite/23_containers/deque/debug/cont_traits.h, debug_cont_traits.h, assign1_neg.cc, assign2_neg.cc, assign3_neg.cc, assign4_neg.cc, construct1_neg.cc, construct2_neg.cc, construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc, insert3_neg.cc, insert4_neg.cc: Likewise. * testsuite/23_containers/list/debug/cont_traits.h, debug_cont_traits.h, assign1_neg.cc, assign2_neg.cc, assign3_neg.cc, assign4_neg.cc, construct1_neg.cc, construct2_neg.cc, construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc, insert3_neg.cc, insert4_neg.cc: Likewise. * testsuite/performance/23_containers/range_construct/ list_construct1.cc: New, validate performance impact of the patch on the debug mode. * testsuite/performance/23_containers/range_construct/ list_construct2.cc: Likewise. * testsuite/performance/23_containers/range_construct/ vector_construct.cc: Likewise. * testsuite/performance/23_containers/range_construct/ deque_construct.cc: Likewise. From-SVN: r163628