> > diff --git a/gcc/c-family/array-notation-common.c > > b/gcc/c-family/array-notation-common.c > > index c010039..5db14c6 100644 > > --- a/gcc/c-family/array-notation-common.c > > +++ b/gcc/c-family/array-notation-common.c > > @@ -221,7 +221,9 @@ find_rank (location_t loc, tree orig_expr, tree expr, > bool ignore_builtin_fn, > > current_rank++; > > ii_tree = ARRAY_NOTATION_ARRAY (ii_tree); > > } > > - else if (TREE_CODE (ii_tree) == ARRAY_REF) > > + else if (TREE_CODE (ii_tree) == ARRAY_REF > > + || TREE_CODE (ii_tree) == INDIRECT_REF > > + || TREE_CODE (ii_tree) == COMPONENT_REF) > > Maybe you want handled_component_p (ii_tree)? The above misses > REALPART_EXPR, IMAGPART_EXRP, VIEW_CONVERT_EXPR and > BIT_FIELD_REF. > > And I'm missing a > > else > gcc_unreachable ();
Thanks, will look at it. Igor > > Richard. > > > ii_tree = TREE_OPERAND (ii_tree, 0); > > else if (TREE_CODE (ii_tree) == PARM_DECL > > || TREE_CODE (ii_tree) == VAR_DECL) diff --git