diff options
Diffstat (limited to 'gcc/alias.c')
-rw-r--r-- | gcc/alias.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/alias.c b/gcc/alias.c index cdbb94d..49f712e 100644 --- a/gcc/alias.c +++ b/gcc/alias.c @@ -1952,13 +1952,13 @@ nonoverlapping_component_refs_p (tree x, tree y) do { fieldx = TREE_OPERAND (x, 1); - typex = DECL_FIELD_CONTEXT (fieldx); + typex = TYPE_MAIN_VARIANT (DECL_FIELD_CONTEXT (fieldx)); y = orig_y; do { fieldy = TREE_OPERAND (y, 1); - typey = DECL_FIELD_CONTEXT (fieldy); + typey = TYPE_MAIN_VARIANT (DECL_FIELD_CONTEXT (fieldy)); if (typex == typey) goto found; @@ -1971,7 +1971,7 @@ nonoverlapping_component_refs_p (tree x, tree y) } while (x && TREE_CODE (x) == COMPONENT_REF); /* Never found a common type. */ - return true; + return false; found: /* If we're left with accessing different fields of a structure, |