This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[committed] PR 68406: Avoid problem with older host compilers
- From: Richard Sandiford <richard dot sandiford at arm dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Wed, 18 Nov 2015 14:31:28 +0000
- Subject: [committed] PR 68406: Avoid problem with older host compilers
- Authentication-results: sourceware.org; auth=none
Older compilers require the Key typedef to be expanded for the traversal
function templates. This patch uses the same approach as we did for
hash_map.
Tested on x86_64-linux-gnu and applied as obvious (given the previous
hash_map patch).
Sorry for the breakage.
Richard
gcc/
PR bootstrap/68406
* hash-set.h (hash_set::traverse): Expand Key typedef.
diff --git a/gcc/hash-set.h b/gcc/hash-set.h
index 679d2b6..8a7c9a0 100644
--- a/gcc/hash-set.h
+++ b/gcc/hash-set.h
@@ -68,7 +68,7 @@ public:
/* Call the call back on each pair of key and value with the passed in
arg. */
- template<typename Arg, bool (*f)(const Key &, Arg)>
+ template<typename Arg, bool (*f)(const typename Traits::value_type &, Arg)>
void traverse (Arg a) const
{
for (typename hash_table<Traits>::iterator iter = m_table.begin ();