------- Comment #12 from jakub at gcc dot gnu dot org 2008-12-03 15:20 ------- Created an attachment (id=16813) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16813&action=view) gcc44-pr36143.patch
I've tried to implement what Richi suggested in #c6, unfortunately that didn't fix the failure. After forwprop1 foo_char and foo_void contain: D.2279_5 = (struct Foo *) &i; D.2279_5->i[0] ={v} 1; D.2281_11 = i[0]; but the optimizers don't figure out that ((struct Foo *) &i)->i[0] and i[0] is the same thing. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36143