diff options
Diffstat (limited to 'gcc/c')
-rw-r--r-- | gcc/c/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/c/c-array-notation.c | 8 |
2 files changed, 13 insertions, 0 deletions
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog index 7f5b5a9..5fbb31f 100644 --- a/gcc/c/ChangeLog +++ b/gcc/c/ChangeLog @@ -1,5 +1,10 @@ 2013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com> + * c-array-notation.c (expand_array_notation_exprs): Added + ARRAY_NOTATION_REF case. + +2013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com> + * c-array-notation.c (length_mismatch_in_expr_p): Moved this function to c-family/array-notation-common.c. (is_cilkplus_reduce_builtin): Likewise. diff --git a/gcc/c/c-array-notation.c b/gcc/c/c-array-notation.c index 7b13687..b1040da 100644 --- a/gcc/c/c-array-notation.c +++ b/gcc/c/c-array-notation.c @@ -2317,6 +2317,14 @@ expand_array_notation_exprs (tree t) case RETURN_EXPR: if (contains_array_notation_expr (t)) t = fix_return_expr (t); + return t; + case ARRAY_NOTATION_REF: + /* IF we are here, then we are dealing with cases like this: + A[:]; + A[x:y:z]; + A[x:y]; + Replace those with just void zero node. */ + t = void_zero_node; default: return t; } |