summaryrefslogtreecommitdiff
path: root/gcc/mem-stats.h
diff options
context:
space:
mode:
authortbsaunde <tbsaunde@138bc75d-0d04-0410-961f-82ee72b054a4>2015-11-24 11:46:10 +0000
committertbsaunde <tbsaunde@138bc75d-0d04-0410-961f-82ee72b054a4>2015-11-24 11:46:10 +0000
commit768546501182c362b94df75c7c317d13aef6c809 (patch)
tree58070dd13c6248487e3ae1a088186d0901249d7f /gcc/mem-stats.h
parent177a1f393daf0214066c4e1ce21b330d5946527a (diff)
downloadgcc-768546501182c362b94df75c7c317d13aef6c809.tar.gz
destroy values as well as keys when removing them from hash maps
gcc/ChangeLog: 2015-11-24 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * hash-map-traits.h (simple_hashmap_traits ::remove): call destructors on values that are being removed. * mem-stats.h (hash_map): Pass type of values to simple_hashmap_traits. * tree-sra.c (sra_deinitialize): Remove work around for hash maps not destructing values. * genmatch.c (sinfo_hashmap_traits): Adjust. * tree-ssa-uncprop.c (val_ssa_equiv_hash_traits): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230801 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/mem-stats.h')
-rw-r--r--gcc/mem-stats.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/mem-stats.h b/gcc/mem-stats.h
index a6489b50068..2c68ca752eb 100644
--- a/gcc/mem-stats.h
+++ b/gcc/mem-stats.h
@@ -3,7 +3,8 @@
/* Forward declaration. */
template<typename Key, typename Value,
- typename Traits = simple_hashmap_traits<default_hash_traits<Key> > >
+ typename Traits = simple_hashmap_traits<default_hash_traits<Key>,
+ Value> >
class hash_map;
#define LOCATION_LINE_EXTRA_SPACE 30