aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/hash-map.h6
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index af03924..6f54c22 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2015-06-26 Richard Sandiford <richard.sandiford@arm.com>
+
+ * hash-map.h (hash_map::traverse): Use the definition of the
+ Key typedef rather than the typedef itself.
+
2015-06-26 Martin Jambor <mjambor@suse.cz>
PR debug/66301
diff --git a/gcc/hash-map.h b/gcc/hash-map.h
index cd97d35..59794eb 100644
--- a/gcc/hash-map.h
+++ b/gcc/hash-map.h
@@ -169,7 +169,8 @@ public:
/* Call the call back on each pair of key and value with the passed in
arg. */
- template<typename Arg, bool (*f)(const Key &, const Value &, Arg)>
+ template<typename Arg, bool (*f)(const typename Traits::key_type &,
+ const Value &, Arg)>
void traverse (Arg a) const
{
for (typename hash_table<hash_entry>::iterator iter = m_table.begin ();
@@ -177,7 +178,8 @@ public:
f ((*iter).m_key, (*iter).m_value, a);
}
- template<typename Arg, bool (*f)(const Key &, Value *, Arg)>
+ template<typename Arg, bool (*f)(const typename Traits::key_type &,
+ Value *, Arg)>
void traverse (Arg a) const
{
for (typename hash_table<hash_entry>::iterator iter = m_table.begin ();