Commit 7fa3585c by Geoffrey Keating Committed by Geoffrey Keating

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
parent 789246d7
...@@ -5,6 +5,9 @@ ...@@ -5,6 +5,9 @@
2005-06-03 Geoffrey Keating <geoffk@apple.com> 2005-06-03 Geoffrey Keating <geoffk@apple.com>
* 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 * config/darwin.h (LINK_SPEC): Pass -syslibroot to linker
when -isysroot passed. when -isysroot passed.
......
...@@ -2355,12 +2355,13 @@ c_parser_parms_declarator (c_parser *parser, bool id_list_ok, tree attrs) ...@@ -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_next_token_is (parser, CPP_NAME)
&& c_parser_peek_token (parser)->id_kind == C_ID_ID) && 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) while (c_parser_next_token_is (parser, CPP_NAME)
&& c_parser_peek_token (parser)->id_kind == C_ID_ID) && c_parser_peek_token (parser)->id_kind == C_ID_ID)
{ {
list = chainon (list, build_tree_list (NULL_TREE, *nextp = build_tree_list (NULL_TREE,
c_parser_peek_token (parser)->value)); c_parser_peek_token (parser)->value);
nextp = & TREE_CHAIN (*nextp);
c_parser_consume_token (parser); c_parser_consume_token (parser);
if (c_parser_next_token_is_not (parser, CPP_COMMA)) if (c_parser_next_token_is_not (parser, CPP_COMMA))
break; break;
...@@ -5294,14 +5295,14 @@ static tree ...@@ -5294,14 +5295,14 @@ static tree
c_parser_expr_list (c_parser *parser) c_parser_expr_list (c_parser *parser)
{ {
struct c_expr expr; struct c_expr expr;
tree ret; tree ret, cur;
expr = c_parser_expr_no_commas (parser, NULL); 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)) while (c_parser_next_token_is (parser, CPP_COMMA))
{ {
c_parser_consume_token (parser); c_parser_consume_token (parser);
expr = c_parser_expr_no_commas (parser, NULL); 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; return ret;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment