summaryrefslogtreecommitdiff
path: root/gcc/hash-traits.h
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2015-06-25 17:05:55 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2015-06-25 17:05:55 +0000
commitdd106147059b09755b74e6df75fa7ff4c020a1c2 (patch)
treefa3b1ac9d98c284a816013ec0edd06a55c612b1f /gcc/hash-traits.h
parent9937801191a8686d18a79c105b3c3b419c51f174 (diff)
downloadgcc-dd106147059b09755b74e6df75fa7ff4c020a1c2.tar.gz
gcc/
* hash-traits.h (ggc_hasher::remove): Take a reference parameter. (ggc_hasher::ggc_mx): Likewise. (ggc_cache_hasher): Inherit from ggc_hasher. Remove definitions that duplicate ggc_hasher ones. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@224955 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/hash-traits.h')
-rw-r--r--gcc/hash-traits.h25
1 files changed, 3 insertions, 22 deletions
diff --git a/gcc/hash-traits.h b/gcc/hash-traits.h
index 3cc6a6fa9dd..1d1a220179f 100644
--- a/gcc/hash-traits.h
+++ b/gcc/hash-traits.h
@@ -96,10 +96,10 @@ struct ggc_hasher
typedef T value_type;
typedef T compare_type;
- static void remove (T) {}
+ static void remove (T &) {}
static void
- ggc_mx (T p)
+ ggc_mx (T &p)
{
extern void gt_ggc_mx (T &);
gt_ggc_mx (p);
@@ -122,30 +122,11 @@ struct ggc_hasher
/* Hasher for cache entry in gc memory. */
template<typename T>
-struct ggc_cache_hasher
+struct ggc_cache_hasher : ggc_hasher<T>
{
- typedef T value_type;
- typedef T compare_type;
-
- static void remove (T &) {}
-
/* Entries are weakly held because this is for caches. */
-
static void ggc_mx (T &) {}
- static void
- pch_nx (T &p)
- {
- extern void gt_pch_nx (T &);
- gt_pch_nx (p);
- }
-
- static void
- pch_nx (T &p, gt_pointer_operator op, void *cookie)
- {
- op (&p, cookie);
- }
-
static int
keep_cache_entry (T &e)
{