PR libstdc++/91871 * testsuite/util/testsuite_hooks.h (conversion::iterator_to_const_iterator()): Do not return an invalid iterator. Test direct-initialization and direct-list-initialization as well as implicit conversion.
Tested x86_64-linux, normal and debug mode. Committed to trunk.
commit a4d7bc903e708136f8f359a16bd7a982aff40881 Author: Jonathan Wakely <jwak...@redhat.com> Date: Tue Sep 24 11:07:20 2019 +0100 PR libstdc++/91871 fix Clang warnings in testsuite PR libstdc++/91871 * testsuite/util/testsuite_hooks.h (conversion::iterator_to_const_iterator()): Do not return an invalid iterator. Test direct-initialization and direct-list-initialization as well as implicit conversion. diff --git a/libstdc++-v3/testsuite/util/testsuite_hooks.h b/libstdc++-v3/testsuite/util/testsuite_hooks.h index 51c431bf9c0..84a44faa710 100644 --- a/libstdc++-v3/testsuite/util/testsuite_hooks.h +++ b/libstdc++-v3/testsuite/util/testsuite_hooks.h @@ -326,13 +326,15 @@ namespace __gnu_test typedef typename _Container::const_iterator const_iterator; // Implicit conversion iterator to const_iterator. - static const_iterator + static void iterator_to_const_iterator() { _Container v; - const_iterator it = v.begin(); - const_iterator end = v.end(); - return it == end ? v.end() : it; + const_iterator i __attribute__((unused)) = const_iterator(v.begin()); + const_iterator j __attribute__((unused)) = true ? i : v.begin(); +#if __cplusplus >= 201103L + const_iterator k __attribute__((unused)) { v.begin() }; +#endif } };