diff options
Diffstat (limited to 'gcc/cp/parser.c')
-rw-r--r-- | gcc/cp/parser.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c index feb8de76bc3..500a9b39a26 100644 --- a/gcc/cp/parser.c +++ b/gcc/cp/parser.c @@ -11413,12 +11413,12 @@ cp_parser_perform_range_for_lookup (tree range, tree *begin, tree *end) if (TREE_CODE (TREE_TYPE (range)) == ARRAY_TYPE) { /* If RANGE is an array, we will use pointer arithmetic. */ - *begin = range; + *begin = decay_conversion (range, tf_warning_or_error); *end = build_binary_op (input_location, PLUS_EXPR, range, array_type_nelts_top (TREE_TYPE (range)), 0); - return build_pointer_type (TREE_TYPE (TREE_TYPE (range))); + return TREE_TYPE (*begin); } else { |