------- Comment #5 from rguenth at gcc dot gnu dot org  2008-04-07 08:51 -------
Only if you extend refs_may_alias_p, as for pointers you have

 p_2 = p_1 + 1;
 *p_2
 *p_1

and it doesn't follow def-use chains to see the pointer-plus to disambiguate
both pointer de-references.  With arrays you see

 a[0]
 a[1]

which it handles fine.  It also should handle

 (*p_2)[0]
 (*p_2)[1]

fine (if you convert p_! to (int *)[] first).


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29751

Reply via email to