gcc/ 2010-09-01 Mikael Pettersson PR bootstrap/45321 * tree.c (stdarg_p): Make fntype parameter const. * tree.h (stdarg_p): Likewise. (function_args_iterator): Remove unused fntype field. (function_args_iter_init): Do not initialize fntype field. Make fntype parameter const. --- gcc-4.6-20100814/gcc/tree.c.~1~ 2010-08-10 04:51:40.000000000 +0200 +++ gcc-4.6-20100814/gcc/tree.c 2010-09-01 14:29:01.000000000 +0200 @@ -10508,7 +10508,7 @@ get_name (tree t) /* Return true if TYPE has a variable argument list. */ bool -stdarg_p (tree fntype) +stdarg_p (const_tree fntype) { function_args_iterator args_iter; tree n = NULL_TREE, t; --- gcc-4.6-20100814/gcc/tree.h.~1~ 2010-08-12 12:36:08.000000000 +0200 +++ gcc-4.6-20100814/gcc/tree.h 2010-09-01 14:28:36.000000000 +0200 @@ -4745,16 +4745,14 @@ extern GTY(()) const char * current_func /* Iterator for going through the function arguments. */ typedef struct { - tree fntype; /* function type declaration */ tree next; /* TREE_LIST pointing to the next argument */ } function_args_iterator; /* Initialize the iterator I with arguments from function FNDECL */ static inline void -function_args_iter_init (function_args_iterator *i, tree fntype) +function_args_iter_init (function_args_iterator *i, const_tree fntype) { - i->fntype = fntype; i->next = TYPE_ARG_TYPES (fntype); } @@ -4826,7 +4824,7 @@ extern tree call_expr_arg (tree, int); extern tree *call_expr_argp (tree, int); extern tree create_artificial_label (location_t); extern const char *get_name (tree); -extern bool stdarg_p (tree); +extern bool stdarg_p (const_tree); extern bool prototype_p (tree); extern bool is_typedef_decl (tree x); extern bool typedef_variant_p (tree);