diff options
author | Richard Guenther <rguenther@suse.de> | 2007-07-03 15:29:19 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2007-07-03 15:29:19 +0000 |
commit | e656a4656e61366599bce12256e22b019e3cd65b (patch) | |
tree | 99dc19d6f7b8cb68004e7d0a8d2c67758122924b /gcc/cp/class.c | |
parent | 6ba6728370f90daaec0dc7d3b052c5e58cc8cc4c (diff) | |
download | gcc-e656a4656e61366599bce12256e22b019e3cd65b.zip gcc-e656a4656e61366599bce12256e22b019e3cd65b.tar.gz gcc-e656a4656e61366599bce12256e22b019e3cd65b.tar.bz2 |
re PR c++/32609 (ICE in htab_clear_slot at libiberty/hashtab.c:722)
2007-07-03 Richard Guenther <rguenther@suse.de>
PR c++/32609
* class.c (fixed_type_or_null): Re-lookup the hashtable slot
after recursing.
From-SVN: r126262
Diffstat (limited to 'gcc/cp/class.c')
-rw-r--r-- | gcc/cp/class.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/cp/class.c b/gcc/cp/class.c index 67cf63d..f2ccd5b 100644 --- a/gcc/cp/class.c +++ b/gcc/cp/class.c @@ -5377,7 +5377,7 @@ fixed_type_or_null (tree instance, int *nonnull, int *cdtorp) slot = htab_find_slot (ht, instance, INSERT); *slot = instance; type = RECUR (DECL_INITIAL (instance)); - htab_clear_slot (ht, slot); + htab_remove_elt (ht, instance); return type; } |