diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1994-02-10 08:12:29 -0500 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1994-02-10 08:12:29 -0500 |
commit | ba63ed560e46903b5cdb272f3aa265215936da59 (patch) | |
tree | 1193f134709946eb4d05b43f7a29517d1a140620 /gcc | |
parent | e0e2a8dafa2fd8c11b717db8c4dbb949c05be515 (diff) | |
download | gcc-ba63ed560e46903b5cdb272f3aa265215936da59.zip gcc-ba63ed560e46903b5cdb272f3aa265215936da59.tar.gz gcc-ba63ed560e46903b5cdb272f3aa265215936da59.tar.bz2 |
If __STDC__, include gstdarg and use ANSI form of varargs.
From-SVN: r6518
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/tree.c | 48 |
1 files changed, 33 insertions, 15 deletions
@@ -37,7 +37,11 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "tree.h" #include "function.h" #include "obstack.h" +#ifdef __STDC__ +#include "gstdarg.h" +#else #include "gvarargs.h" +#endif #include <stdio.h> #define obstack_chunk_alloc xmalloc @@ -2386,21 +2390,27 @@ stabilize_reference_1 (e) Constants, decls, types and misc nodes cannot be. */ tree -build (va_alist) - va_dcl +build VPROTO((enum tree_code code, tree tt, ...)) { - va_list p; +#ifndef __STDC__ enum tree_code code; + tree tt; +#endif + va_list p; register tree t; register int length; register int i; - va_start (p); + VA_START (p, tt); +#ifndef __STDC__ code = va_arg (p, enum tree_code); + tt = va_arg (p, tree); +#endif + t = make_node (code); length = tree_code_length[(int) code]; - TREE_TYPE (t) = va_arg (p, tree); + TREE_TYPE (t) = tt; if (length == 2) { @@ -2504,18 +2514,22 @@ build1 (code, type, node) or even garbage if their values do not matter. */ tree -build_nt (va_alist) - va_dcl +build_nt VPROTO((register enum tree_code code, ...)) { - va_list p; +#ifndef __STDC__ register enum tree_code code; +#endif + va_list p; register tree t; register int length; register int i; - va_start (p); + VA_START (p, code); +#ifndef __STDC__ code = va_arg (p, enum tree_code); +#endif + t = make_node (code); length = tree_code_length[(int) code]; @@ -2530,21 +2544,25 @@ build_nt (va_alist) on the temp_decl_obstack, regardless. */ tree -build_parse_node (va_alist) - va_dcl +build_parse_node VPROTO((register enum tree_code code, ...)) { +#ifndef __STDC__ + register enum tree_code code; +#endif register struct obstack *ambient_obstack = expression_obstack; va_list p; - register enum tree_code code; register tree t; register int length; register int i; - expression_obstack = &temp_decl_obstack; - - va_start (p); + VA_START (p, code); +#ifndef __STDC__ code = va_arg (p, enum tree_code); +#endif + + expression_obstack = &temp_decl_obstack; + t = make_node (code); length = tree_code_length[(int) code]; |