diff options
Diffstat (limited to 'gcc/hash-traits.h')
-rw-r--r-- | gcc/hash-traits.h | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/gcc/hash-traits.h b/gcc/hash-traits.h index 1bac581..3cc6a6f 100644 --- a/gcc/hash-traits.h +++ b/gcc/hash-traits.h @@ -146,13 +146,10 @@ struct ggc_cache_hasher op (&p, cookie); } - /* Clear out entries if they are about to be gc'd. */ - - static void - handle_cache_entry (T &e) + static int + keep_cache_entry (T &e) { - if (e != HTAB_EMPTY_ENTRY && e != HTAB_DELETED_ENTRY && !ggc_marked_p (e)) - e = static_cast<T> (HTAB_DELETED_ENTRY); + return ggc_marked_p (e) ? -1 : 0; } }; |