diff options
author | Alexandre Oliva <aoliva@redhat.com> | 2007-11-26 06:37:46 +0000 |
---|---|---|
committer | Alexandre Oliva <aoliva@gcc.gnu.org> | 2007-11-26 06:37:46 +0000 |
commit | 0043f60679c6c6b8b76acb75cf8a7e363aca1d06 (patch) | |
tree | 662302ab9043057f862b87acba5356dedaf1d148 /gcc | |
parent | 6e0b7c703dae4c537b8aa36c2d726d5c3a26dff0 (diff) | |
download | gcc-0043f60679c6c6b8b76acb75cf8a7e363aca1d06.zip gcc-0043f60679c6c6b8b76acb75cf8a7e363aca1d06.tar.gz gcc-0043f60679c6c6b8b76acb75cf8a7e363aca1d06.tar.bz2 |
* tree.c (type_hash_add): Don't violate strict aliasing rules.
From-SVN: r130429
Diffstat (limited to 'gcc')
-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 |