aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2019-09-24 11:09:18 +0100
committerJonathan Wakely <redi@gcc.gnu.org>2019-09-24 11:09:18 +0100
commit47d17f705826669e7a7c56f1bee54b4231870e41 (patch)
tree1c569c01dcee1414c9e9ee9550c90d081b7a2544
parent18b86eda6f2be355dfc34c32b36605356ae46fb9 (diff)
downloadgcc-47d17f705826669e7a7c56f1bee54b4231870e41.zip
gcc-47d17f705826669e7a7c56f1bee54b4231870e41.tar.gz
gcc-47d17f705826669e7a7c56f1bee54b4231870e41.tar.bz2
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. From-SVN: r276091
-rw-r--r--libstdc++-v3/ChangeLog8
-rw-r--r--libstdc++-v3/testsuite/util/testsuite_hooks.h10
2 files changed, 14 insertions, 4 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 54fe95f..64f8618 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,11 @@
+2019-09-24 Jonathan Wakely <jwakely@redhat.com>
+
+ 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.
+
2019-09-23 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/91788 (partial)
diff --git a/libstdc++-v3/testsuite/util/testsuite_hooks.h b/libstdc++-v3/testsuite/util/testsuite_hooks.h
index 51c431b..84a44fa 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
}
};