------- Comment #9 from rguenth at gcc dot gnu dot org 2010-01-05 12:16 ------- Ok, it's simple. We add false aliases to &index to both SMTs of SEntry and STable because may_alias_p (SEntry, char) returns true as every alias-set is a subset of alias-set zero.
But then when coming along to adding SMT aliases we do not add STable as an alias of SEntry because they already have (false) aliases in common. These false aliases are pruned by access_can_touch_variable later and boom - there we go. I have a fix. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42614