gcc/libstdc++-v3/testsuite/util
François Dumont 5720787ada re PR libstdc++/57779 (vector insert fails to diagnose iterators pointing 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-08-01 19:54:46 +00:00
..
common_type
debug re PR libstdc++/57779 (vector insert fails to diagnose iterators pointing into *this in debug mode) 2013-08-01 19:54:46 +00:00
exception stl_deque.h (deque<>::insert(iterator, const value_type&), [...]): Adjust C++11 signatures to take a const_iterator. 2013-06-27 09:51:21 +00:00
hash_fn
io
native_type
performance
regression hashtable_policy.h: Add C++11 allocator support. 2013-04-22 20:22:07 +00:00
statistic
thread
replacement_memory_operators.h
testsuite_abi.cc chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, include unistd.h and sys/syscall.h. 2013-05-24 20:08:42 +02:00
testsuite_abi.h
testsuite_abi_check.cc
testsuite_allocator.cc
testsuite_allocator.h re PR libstdc++/57263 (std::set with user-defined allocator - compile error) 2013-06-16 18:13:34 +01:00
testsuite_api.h
testsuite_character.cc
testsuite_character.h
testsuite_common_types.h atomic (compare_exchange_weak, [...]): Add call to __cmpexch_failure_order. 2013-07-29 17:13:05 +00:00
testsuite_container_traits.h
testsuite_containers.h c++config (_GLIBCXX_ABI_TAG_CXX11): Add. 2013-06-10 23:11:05 +00:00
testsuite_counter_type.h hashtable_policy.h: Add C++11 allocator support. 2013-04-22 20:22:07 +00:00
testsuite_error.h
testsuite_greedy_ops.h
testsuite_hooks.cc
testsuite_hooks.h
testsuite_io.h
testsuite_iterators.h stl_algo.h (is_permutation): Add overloads from N3671. 2013-06-08 17:12:13 +01:00
testsuite_performance.h forced.C: Extend current handling of Linux-based x86 systems to cover all GNU systems. 2013-06-10 09:21:29 +02:00
testsuite_random.h
testsuite_regex.h
testsuite_rng.h
testsuite_rvalref.h
testsuite_shared.cc c++config (_GLIBCXX_ABI_TAG_CXX11): Add. 2013-06-10 23:11:05 +00:00
testsuite_tr1.h