diff options
Diffstat (limited to 'gcc/tree.c')
-rw-r--r-- | gcc/tree.c | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/gcc/tree.c b/gcc/tree.c index 5ae362cc9d5..7c04b3d01fd 100644 --- a/gcc/tree.c +++ b/gcc/tree.c @@ -2247,17 +2247,16 @@ stabilize_reference_1 (e) Constants, decls, types and misc nodes cannot be. */ tree -build VPARAMS ((enum tree_code code, tree tt, ...)) +build (enum tree_code code, tree tt, ...) { tree t; int length; int i; int fro; int constant; + va_list p; - VA_OPEN (p, tt); - VA_FIXEDARG (p, enum tree_code, code); - VA_FIXEDARG (p, tree, tt); + va_start (p, tt); t = make_node (code); length = TREE_CODE_LENGTH (code); @@ -2334,7 +2333,7 @@ build VPARAMS ((enum tree_code code, tree tt, ...)) } } } - VA_CLOSE (p); + va_end (p); TREE_CONSTANT (t) = constant; return t; @@ -2435,14 +2434,14 @@ build1 (code, type, node) or even garbage if their values do not matter. */ tree -build_nt VPARAMS ((enum tree_code code, ...)) +build_nt (enum tree_code code, ...) { tree t; int length; int i; + va_list p; - VA_OPEN (p, code); - VA_FIXEDARG (p, enum tree_code, code); + va_start (p, code); t = make_node (code); length = TREE_CODE_LENGTH (code); @@ -2450,7 +2449,7 @@ build_nt VPARAMS ((enum tree_code code, ...)) for (i = 0; i < length; i++) TREE_OPERAND (t, i) = va_arg (p, tree); - VA_CLOSE (p); + va_end (p); return t; } @@ -3838,12 +3837,12 @@ build_function_type (value_type, arg_types) be terminated by NULL_TREE. */ tree -build_function_type_list VPARAMS ((tree return_type, ...)) +build_function_type_list (tree return_type, ...) { tree t, args, last; + va_list p; - VA_OPEN (p, return_type); - VA_FIXEDARG (p, tree, return_type); + va_start (p, return_type); t = va_arg (p, tree); for (args = NULL_TREE; t != NULL_TREE; t = va_arg (p, tree)) @@ -3854,7 +3853,7 @@ build_function_type_list VPARAMS ((tree return_type, ...)) TREE_CHAIN (last) = void_list_node; args = build_function_type (return_type, args); - VA_CLOSE (p); + va_end (p); return args; } |