diff options
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/tree.c | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e500186..83a3ee8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2007-11-26 Alexandre Oliva <aoliva@redhat.com> + * tree.c (type_hash_add): Don't violate strict aliasing rules. + +2007-11-26 Alexandre Oliva <aoliva@redhat.com> + PR c/27898 * c-typeck.c (tagged_types_tu_compatible_p): Enable exact matches between anonymous union fields. @@ -4677,7 +4677,7 @@ type_hash_add (hashval_t hashcode, tree type) h->hash = hashcode; h->type = type; loc = htab_find_slot_with_hash (type_hash_table, h, hashcode, INSERT); - *(struct type_hash **) loc = h; + *loc = (void*)h; } /* Given TYPE, and HASHCODE its hash code, return the canonical |