From 7fa3585cd41976ad1523212e8779214a8ed112ae Mon Sep 17 00:00:00 2001 From: Geoffrey Keating Date: Sat, 4 Jun 2005 00:06:22 +0000 Subject: [PATCH] c-parser.c (c_parser_parms_declarator): Don't use chainon(). * c-parser.c (c_parser_parms_declarator): Don't use chainon(). (c_parser_expr_list): Don't use chainon(). From-SVN: r100567 --- gcc/ChangeLog | 3 +++ gcc/c-parser.c | 13 +++++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fbdd7b1..82db934 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -5,6 +5,9 @@ 2005-06-03 Geoffrey Keating + * c-parser.c (c_parser_parms_declarator): Don't use chainon(). + (c_parser_expr_list): Don't use chainon(). + * config/darwin.h (LINK_SPEC): Pass -syslibroot to linker when -isysroot passed. diff --git a/gcc/c-parser.c b/gcc/c-parser.c index d0eec8d..1207e66 100644 --- a/gcc/c-parser.c +++ b/gcc/c-parser.c @@ -2355,12 +2355,13 @@ c_parser_parms_declarator (c_parser *parser, bool id_list_ok, tree attrs) && c_parser_next_token_is (parser, CPP_NAME) && c_parser_peek_token (parser)->id_kind == C_ID_ID) { - tree list = NULL_TREE; + tree list = NULL_TREE, *nextp = &list; while (c_parser_next_token_is (parser, CPP_NAME) && c_parser_peek_token (parser)->id_kind == C_ID_ID) { - list = chainon (list, build_tree_list (NULL_TREE, - c_parser_peek_token (parser)->value)); + *nextp = build_tree_list (NULL_TREE, + c_parser_peek_token (parser)->value); + nextp = & TREE_CHAIN (*nextp); c_parser_consume_token (parser); if (c_parser_next_token_is_not (parser, CPP_COMMA)) break; @@ -5294,14 +5295,14 @@ static tree c_parser_expr_list (c_parser *parser) { struct c_expr expr; - tree ret; + tree ret, cur; expr = c_parser_expr_no_commas (parser, NULL); - ret = build_tree_list (NULL_TREE, expr.value); + ret = cur = build_tree_list (NULL_TREE, expr.value); while (c_parser_next_token_is (parser, CPP_COMMA)) { c_parser_consume_token (parser); expr = c_parser_expr_no_commas (parser, NULL); - ret = chainon (ret, build_tree_list (NULL_TREE, expr.value)); + cur = TREE_CHAIN (cur) = build_tree_list (NULL_TREE, expr.value); } return ret; } -- 2.7.4