Commit 8dfaeb63 by Mark Mitchell Committed by Mark Mitchell

Makefile.in (typeck2.o): Depend on output.h.

	* Makefile.in (typeck2.o): Depend on output.h.
	* typeck2.c: Include output.h.

	* decl.c (flag_ansi): Remove declaration.

	* pt.c (tinst_level_tick): Make it static.
	(last_template_error_tick): Likewise.

	* cp-tree.h (mapcar): Remove declaration.
	(search_tree): Likewise.
	(walk_tree_fn): New typedef.
	(walk_tree): New function.
	* tree.c (bot_manip): Change prototype.  Adjust to be called via
	walk_tree.
	(bot_replace): Likewise.
	(no_linkage_helper): Likewise.
	(copy_tree_r): New function.
	(search_tree): Rename, and adjust, to become ...
	(walk_tree): New function.
	(mapcar): Remove.
	(target_remap): Remove.
	(target_remap_count): Likewise.
	(break_out_target_exprs): Use walk_tree.
	* decl.c (local_variable_p): Change prototype.
	(check_default_argument): Use walk_tree.
	* pt.c (for_each_template_parm_r): New function, split out from ...
	(for_each_template_parm): Here.  Use it, via walk_tree.

From-SVN: r30412
parent 71144a65
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
(copy_tree_r): New function. (copy_tree_r): New function.
(search_tree): Rename, and adjust, to become ... (search_tree): Rename, and adjust, to become ...
(walk_tree): New function. (walk_tree): New function.
(mapcar): Rtemove. (mapcar): Remove.
(target_remap): Remove. (target_remap): Remove.
(target_remap_count): Likewise. (target_remap_count): Likewise.
(break_out_target_exprs): Use walk_tree. (break_out_target_exprs): Use walk_tree.
......
...@@ -3986,7 +3986,6 @@ extern int varargs_function_p PROTO((tree)); ...@@ -3986,7 +3986,6 @@ extern int varargs_function_p PROTO((tree));
extern int really_overloaded_fn PROTO((tree)); extern int really_overloaded_fn PROTO((tree));
extern int cp_tree_equal PROTO((tree, tree)); extern int cp_tree_equal PROTO((tree, tree));
extern int can_free PROTO((struct obstack *, tree)); extern int can_free PROTO((struct obstack *, tree));
extern tree mapcar PROTO((tree, tree (*) (tree)));
extern tree no_linkage_check PROTO((tree)); extern tree no_linkage_check PROTO((tree));
extern void debug_binfo PROTO((tree)); extern void debug_binfo PROTO((tree));
extern void push_expression_obstack PROTO((void)); extern void push_expression_obstack PROTO((void));
...@@ -3994,7 +3993,8 @@ extern void push_permanent_obstack PROTO((void)); ...@@ -3994,7 +3993,8 @@ extern void push_permanent_obstack PROTO((void));
extern tree build_dummy_object PROTO((tree)); extern tree build_dummy_object PROTO((tree));
extern tree maybe_dummy_object PROTO((tree, tree *)); extern tree maybe_dummy_object PROTO((tree, tree *));
extern int is_dummy_object PROTO((tree)); extern int is_dummy_object PROTO((tree));
extern tree search_tree PROTO((tree *, tree (*)(tree *))); typedef tree (*walk_tree_fn) PROTO((tree *, int *, void *));
extern tree walk_tree PROTO((tree *, walk_tree_fn, void *));
extern int cp_valid_lang_attribute PROTO((tree, tree, tree, tree)); extern int cp_valid_lang_attribute PROTO((tree, tree, tree, tree));
extern tree make_ptrmem_cst PROTO((tree, tree)); extern tree make_ptrmem_cst PROTO((tree, tree));
extern tree cp_build_qualified_type_real PROTO((tree, int, int)); extern tree cp_build_qualified_type_real PROTO((tree, int, int));
......
...@@ -141,7 +141,7 @@ static boolean typename_compare PROTO((hash_table_key, hash_table_key)); ...@@ -141,7 +141,7 @@ static boolean typename_compare PROTO((hash_table_key, hash_table_key));
static void push_binding PROTO((tree, tree, struct binding_level*)); static void push_binding PROTO((tree, tree, struct binding_level*));
static int add_binding PROTO((tree, tree)); static int add_binding PROTO((tree, tree));
static void pop_binding PROTO((tree, tree)); static void pop_binding PROTO((tree, tree));
static tree local_variable_p PROTO((tree *)); static tree local_variable_p PROTO((tree *, int *, void *));
static tree find_binding PROTO((tree, tree)); static tree find_binding PROTO((tree, tree));
static tree select_decl PROTO((tree, int)); static tree select_decl PROTO((tree, int));
static int lookup_flags PROTO((int, int)); static int lookup_flags PROTO((int, int));
...@@ -349,11 +349,6 @@ extern int flag_no_builtin; ...@@ -349,11 +349,6 @@ extern int flag_no_builtin;
extern int flag_no_nonansi_builtin; extern int flag_no_nonansi_builtin;
/* Nonzero means enable obscure ANSI features and disable GNU extensions
that might cause ANSI-compliant code to be miscompiled. */
extern int flag_ansi;
/* Nonzero if we want to support huge (> 2^(sizeof(short)*8-1) bytes) /* Nonzero if we want to support huge (> 2^(sizeof(short)*8-1) bytes)
objects. */ objects. */
extern int flag_huge_objects; extern int flag_huge_objects;
...@@ -11189,8 +11184,10 @@ require_complete_types_for_parms (parms) ...@@ -11189,8 +11184,10 @@ require_complete_types_for_parms (parms)
NULL_TREE otherwise. */ NULL_TREE otherwise. */
static tree static tree
local_variable_p (tp) local_variable_p (tp, walk_subtrees, data)
tree *tp; tree *tp;
int *walk_subtrees ATTRIBUTE_UNUSED;
void *data ATTRIBUTE_UNUSED;
{ {
tree t = *tp; tree t = *tp;
...@@ -11272,7 +11269,7 @@ check_default_argument (decl, arg) ...@@ -11272,7 +11269,7 @@ check_default_argument (decl, arg)
The keyword `this' shall not be used in a default argument of a The keyword `this' shall not be used in a default argument of a
member function. */ member function. */
var = search_tree (&arg, local_variable_p); var = walk_tree (&arg, local_variable_p, NULL);
if (var) if (var)
{ {
cp_error ("default argument `%E' uses local variable `%D'", cp_error ("default argument `%E' uses local variable `%D'",
......
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