+2019-02-06 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/89211
+ * c-parser.c (c_parser_declaration_or_fndef): Don't update
+ DECL_ARGUMENTS of d if it has been defined already. Use a single if
+ instead of 3 nested ifs.
+
2019-02-06 Joseph Myers <joseph@codesourcery.com>
PR c/88584
tree d = start_decl (declarator, specs, false,
chainon (postfix_attrs,
all_prefix_attrs));
- if (d && TREE_CODE (d) == FUNCTION_DECL)
- if (declarator->kind == cdk_function)
- if (DECL_ARGUMENTS (d) == NULL_TREE)
- DECL_ARGUMENTS (d) = declarator->u.arg_info->parms;
+ if (d
+ && TREE_CODE (d) == FUNCTION_DECL
+ && declarator->kind == cdk_function
+ && DECL_ARGUMENTS (d) == NULL_TREE
+ && DECL_INITIAL (d) == NULL_TREE)
+ DECL_ARGUMENTS (d) = declarator->u.arg_info->parms;
if (omp_declare_simd_clauses.exists ())
{
tree parms = NULL_TREE;