llvm-project/libcxx/test/std/experimental
Eric Fiselier e02ed1c255 Diagnose when reverse_iterator is used on path::iterator.
path::iterator isn't a strictly conforming iterator. Specifically
it stashes the current element inside the iterator. This leads to
UB when used with reverse_iterator since it requires the element
to outlive the lifetime of the iterator.

This patch adds a static_assert inside reverse_iterator to disallow
"stashing iterator types", and it tags path::iterator as such a type.

Additionally this patch removes all uses of reverse_iterator<path::iterator>
within the tests.

llvm-svn: 300164
2017-04-13 02:54:13 +00:00
..
algorithms Fix libc++ test experimental/algorithms/alg.random.sample/sample.pass.cpp when ran in c++11 mode 32 bits 2017-03-02 22:08:42 +00:00
any Fix unused parameters and variables 2016-12-23 23:37:52 +00:00
filesystem Diagnose when reverse_iterator is used on path::iterator. 2017-04-13 02:54:13 +00:00
func Fix some 'FIXME's in the tests. 2016-12-30 17:42:11 +00:00
iterator Remove trailing whitespace in test suite. Approved by Marshall Clow. 2016-06-01 21:35:39 +00:00
memory [libcxx] [test] Fix comment typos, strip trailing whitespace. 2017-01-18 20:10:25 +00:00
numeric Fix a bug I introduced in the tests for experimental::lcm and experimental::gcd. 2017-02-10 22:44:14 +00:00
optional Fix unused parameters and variables 2016-12-23 23:37:52 +00:00
string.view [libcxx] [test] Fix comment typos, strip trailing whitespace. 2017-01-18 20:10:25 +00:00
utilities [libcxx] [test] Fix comment typos, strip trailing whitespace. 2017-01-18 20:10:25 +00:00
nothing_to_do.pass.cpp