gcc/libstdc++-v3/testsuite/util
Patrick Palka 4512b7d851 libstdc++: Add a test that takes the split_view of a non-forward range
This adds a tests that verifies taking the split_view of a non-forward range
works correctly.  Doing so revealed a typo in one of _OuterIter's constructors.

It also revealed that the default constructor of
__gnu_test::test_range::iterator misbehaves, because by delegating to
Iter<T>(nullptr, nullptr) we perform a null-pointer deref at runtime in
input_iterator_wrapper's constructor due to the ITERATOR_VERIFY check therein.
Instead of delegating to this constructor it seems we can just inherit the
protected default constructor, which does not contain this ITERATOR_VERIFY
check.

libstdc++-v3/ChangeLog:

	* include/std/ranges (split_view::_OuterIter::_OuterIter): Typo fix,
	'address' -> 'std::__addressof'.
	* testsuite/std/ranges/adaptors/split.cc: Test taking the split_view of
	a non-forward input_range.
	* testsuite/util/testsuite_iterators.h (output_iterator_wrapper): Make
	default constructor protected instead of deleted, like with
	input_iterator_wrapper.
	(test_range::iterator): Add comment explaining that this type is used
	only when the underlying wrapper is input_iterator_wrapper or
	output_iterator_wrapper.  Remove delegating defaulted constructor so
	that the inherited default constructor is used instead.
2020-03-11 14:56:52 -04:00
..
common_type
debug
exception
hash_fn
io
native_type
performance
pstl
regression
statistic
thread
replacement_memory_operators.h
slow_clock.h
specfun_testcase.h
testsuite_abi_check.cc
testsuite_abi.cc
testsuite_abi.h
testsuite_allocator.cc
testsuite_allocator.h
testsuite_api.h
testsuite_character.cc
testsuite_character.h
testsuite_common_types.h
testsuite_container_traits.h
testsuite_containergen.h
testsuite_containers.h
testsuite_counter_type.h
testsuite_error.h
testsuite_fs.h
testsuite_greedy_ops.h
testsuite_hooks.cc
testsuite_hooks.h
testsuite_io.h
testsuite_iterators.h libstdc++: Add a test that takes the split_view of a non-forward range 2020-03-11 14:56:52 -04:00
testsuite_new_operators.h
testsuite_performance.h
testsuite_random.h
testsuite_regex.h
testsuite_rng.h
testsuite_rvalref.h
testsuite_shared.cc
testsuite_tr1.h