From: Jason Merrill Date: Fri, 22 Apr 2016 16:16:21 +0000 (-0400) Subject: * parser.c (cp_parser_perform_range_for_lookup): Decay the array. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=76f9244ed07780936e422cb6d4e9c8d229c1990a;p=gcc.git * parser.c (cp_parser_perform_range_for_lookup): Decay the array. From-SVN: r235370 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index ecfad0fe5fe..3a3373e3806 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +2016-04-22 Jason Merrill + + * parser.c (cp_parser_perform_range_for_lookup): Decay the array. + 2016-04-21 Patrick Palka * name-lookup.c (free_saved_scope): New free list of saved_scope 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 {