https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69553
--- Comment #9 from Richard Biener <rguenth at gcc dot gnu.org> --- Exposes a similar issue in stmt_kills_ref_p which does 2248 /* Just compare the outermost handled component, if 2249 they are equal we have found a possible common 2250 base. */ 2251 tree saved_base0 = TREE_OPERAND (base, 0); 2252 TREE_OPERAND (base, 0) = integer_zero_node; 2253 bool res = operand_equal_p (lhs, base, 0); 2254 TREE_OPERAND (base, 0) = saved_base0; 2255 if (res) 2256 break; and thus also happily will treat unrelated ARRAY_REFs (different element size or low bound) as equal ...