summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>2000-01-26 20:51:37 +0000
committerghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>2000-01-26 20:51:37 +0000
commit2405414425fb0e4ca0075bbc49644d8ca03214df (patch)
treed6963b0f465ce20472a59151e1711f58104f858f
parentb59496fadbe8fb21b91d6d02370ac9fcff66d2d0 (diff)
downloadppe42-gcc-2405414425fb0e4ca0075bbc49644d8ca03214df.tar.gz
ppe42-gcc-2405414425fb0e4ca0075bbc49644d8ca03214df.zip
* call.c: PROTO -> PARAMS.
* class.c: Likewise. * cp-tree.h: Likewise. * cvt.c: Likewise. * decl.c: Likewise. * decl.h: Likewise. * decl2.c: Likewise. * dump.c: Likewise. * errfn.c: Likewise. * error.c: Likewise. * except.c: Likewise. * expr.c: Likewise. * init.c: Likewise. * input.c: Likewise. * lex.c: Likewise. * lex.h: Likewise. * method.c: Likewise. * optimize.c: Likewise. * parse.y: Likewise. * pt.c: Likewise. * repo.c: Likewise. * rtti.c: Likewise. * search.c: Likewise. * semantics.c: Likewise. * spew.c: Likewise. * tree.c: Likewise. * typeck.c: Likewise. * typeck2.c: Likewise. * xref.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@31632 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/cp/ChangeLog32
-rw-r--r--gcc/cp/call.c86
-rw-r--r--gcc/cp/class.c160
-rw-r--r--gcc/cp/cp-tree.h1600
-rw-r--r--gcc/cp/cvt.c6
-rw-r--r--gcc/cp/decl.c160
-rw-r--r--gcc/cp/decl.h4
-rw-r--r--gcc/cp/decl2.c72
-rw-r--r--gcc/cp/dump.c26
-rw-r--r--gcc/cp/errfn.c23
-rw-r--r--gcc/cp/error.c79
-rw-r--r--gcc/cp/except.c35
-rw-r--r--gcc/cp/expr.c6
-rw-r--r--gcc/cp/init.c32
-rw-r--r--gcc/cp/input.c19
-rw-r--r--gcc/cp/lex.c68
-rw-r--r--gcc/cp/lex.h4
-rw-r--r--gcc/cp/method.c62
-rw-r--r--gcc/cp/optimize.c22
-rw-r--r--gcc/cp/parse.c8
-rw-r--r--gcc/cp/parse.y8
-rw-r--r--gcc/cp/pt.c130
-rw-r--r--gcc/cp/repo.c14
-rw-r--r--gcc/cp/rtti.c34
-rw-r--r--gcc/cp/search.c136
-rw-r--r--gcc/cp/semantics.c6
-rw-r--r--gcc/cp/spew.c16
-rw-r--r--gcc/cp/tree.c34
-rw-r--r--gcc/cp/typeck.c44
-rw-r--r--gcc/cp/typeck2.c10
-rw-r--r--gcc/cp/xref.c20
31 files changed, 1496 insertions, 1460 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index d6eea728a52..7cd0cb4f600 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,35 @@
+2000-01-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * call.c: PROTO -> PARAMS.
+ * class.c: Likewise.
+ * cp-tree.h: Likewise.
+ * cvt.c: Likewise.
+ * decl.c: Likewise.
+ * decl.h: Likewise.
+ * decl2.c: Likewise.
+ * dump.c: Likewise.
+ * errfn.c: Likewise.
+ * error.c: Likewise.
+ * except.c: Likewise.
+ * expr.c: Likewise.
+ * init.c: Likewise.
+ * input.c: Likewise.
+ * lex.c: Likewise.
+ * lex.h: Likewise.
+ * method.c: Likewise.
+ * optimize.c: Likewise.
+ * parse.y: Likewise.
+ * pt.c: Likewise.
+ * repo.c: Likewise.
+ * rtti.c: Likewise.
+ * search.c: Likewise.
+ * semantics.c: Likewise.
+ * spew.c: Likewise.
+ * tree.c: Likewise.
+ * typeck.c: Likewise.
+ * typeck2.c: Likewise.
+ * xref.c: Likewise.
+
2000-01-25 Richard Henderson <rth@cygnus.com>
* typeck.c (build_binary_op_nodefault): Remove UNNE_EXPR.
diff --git a/gcc/cp/call.c b/gcc/cp/call.c
index 991a79dcd99..da320b4ffe1 100644
--- a/gcc/cp/call.c
+++ b/gcc/cp/call.c
@@ -39,65 +39,65 @@ Boston, MA 02111-1307, USA. */
extern int inhibit_warnings;
-static tree build_new_method_call PROTO((tree, tree, tree, tree, int));
-
-static tree build_field_call PROTO((tree, tree, tree, tree));
-static struct z_candidate * tourney PROTO((struct z_candidate *));
-static int equal_functions PROTO((tree, tree));
-static int joust PROTO((struct z_candidate *, struct z_candidate *, int));
-static int compare_ics PROTO((tree, tree));
-static tree build_over_call PROTO((struct z_candidate *, tree, int));
-static tree convert_like PROTO((tree, tree));
-static void op_error PROTO((enum tree_code, enum tree_code, tree, tree,
+static tree build_new_method_call PARAMS ((tree, tree, tree, tree, int));
+
+static tree build_field_call PARAMS ((tree, tree, tree, tree));
+static struct z_candidate * tourney PARAMS ((struct z_candidate *));
+static int equal_functions PARAMS ((tree, tree));
+static int joust PARAMS ((struct z_candidate *, struct z_candidate *, int));
+static int compare_ics PARAMS ((tree, tree));
+static tree build_over_call PARAMS ((struct z_candidate *, tree, int));
+static tree convert_like PARAMS ((tree, tree));
+static void op_error PARAMS ((enum tree_code, enum tree_code, tree, tree,
tree, const char *));
-static tree build_object_call PROTO((tree, tree));
-static tree resolve_args PROTO((tree));
+static tree build_object_call PARAMS ((tree, tree));
+static tree resolve_args PARAMS ((tree));
static struct z_candidate * build_user_type_conversion_1
- PROTO ((tree, tree, int));
-static void print_z_candidates PROTO((struct z_candidate *));
-static tree build_this PROTO((tree));
-static struct z_candidate * splice_viable PROTO((struct z_candidate *));
-static int any_viable PROTO((struct z_candidate *));
+ PARAMS ((tree, tree, int));
+static void print_z_candidates PARAMS ((struct z_candidate *));
+static tree build_this PARAMS ((tree));
+static struct z_candidate * splice_viable PARAMS ((struct z_candidate *));
+static int any_viable PARAMS ((struct z_candidate *));
static struct z_candidate * add_template_candidate
- PROTO((struct z_candidate *, tree, tree, tree, tree, int,
+ PARAMS ((struct z_candidate *, tree, tree, tree, tree, int,
unification_kind_t));
static struct z_candidate * add_template_candidate_real
- PROTO((struct z_candidate *, tree, tree, tree, tree, int,
+ PARAMS ((struct z_candidate *, tree, tree, tree, tree, int,
tree, unification_kind_t));
static struct z_candidate * add_template_conv_candidate
- PROTO((struct z_candidate *, tree, tree, tree, tree));
+ PARAMS ((struct z_candidate *, tree, tree, tree, tree));
static struct z_candidate * add_builtin_candidates
- PROTO((struct z_candidate *, enum tree_code, enum tree_code,
+ PARAMS ((struct z_candidate *, enum tree_code, enum tree_code,
tree, tree *, int));
static struct z_candidate * add_builtin_candidate
- PROTO((struct z_candidate *, enum tree_code, enum tree_code,
+ PARAMS ((struct z_candidate *, enum tree_code, enum tree_code,
tree, tree, tree, tree *, tree *, int));
-static int is_complete PROTO((tree));
+static int is_complete PARAMS ((tree));
static struct z_candidate * build_builtin_candidate
- PROTO((struct z_candidate *, tree, tree, tree, tree *, tree *,
+ PARAMS ((struct z_candidate *, tree, tree, tree, tree *, tree *,
int));
static struct z_candidate * add_conv_candidate
- PROTO((struct z_candidate *, tree, tree, tree));
+ PARAMS ((struct z_candidate *, tree, tree, tree));
static struct z_candidate * add_function_candidate
- PROTO((struct z_candidate *, tree, tree, int));
-static tree implicit_conversion PROTO((tree, tree, tree, int));
-static tree standard_conversion PROTO((tree, tree, tree));
-static tree reference_binding PROTO((tree, tree, tree, int));
-static tree non_reference PROTO((tree));
-static tree build_conv PROTO((enum tree_code, tree, tree));
-static int is_subseq PROTO((tree, tree));
-static int maybe_handle_ref_bind PROTO((tree*, tree*));
-static void maybe_handle_implicit_object PROTO((tree*));
-static struct z_candidate * add_candidate PROTO((struct z_candidate *,
+ PARAMS ((struct z_candidate *, tree, tree, int));
+static tree implicit_conversion PARAMS ((tree, tree, tree, int));
+static tree standard_conversion PARAMS ((tree, tree, tree));
+static tree reference_binding PARAMS ((tree, tree, tree, int));
+static tree non_reference PARAMS ((tree));
+static tree build_conv PARAMS ((enum tree_code, tree, tree));
+static int is_subseq PARAMS ((tree, tree));
+static int maybe_handle_ref_bind PARAMS ((tree*, tree*));
+static void maybe_handle_implicit_object PARAMS ((tree*));
+static struct z_candidate * add_candidate PARAMS ((struct z_candidate *,
tree, tree, int));
-static tree source_type PROTO((tree));
-static void add_warning PROTO((struct z_candidate *, struct z_candidate *));
-static int reference_related_p PROTO ((tree, tree));
-static int reference_compatible_p PROTO ((tree, tree));
-static tree convert_class_to_reference PROTO ((tree, tree, tree));
-static tree direct_reference_binding PROTO ((tree, tree));
-static int promoted_arithmetic_type_p PROTO ((tree));
-static tree conditional_conversion PROTO ((tree, tree));
+static tree source_type PARAMS ((tree));
+static void add_warning PARAMS ((struct z_candidate *, struct z_candidate *));
+static int reference_related_p PARAMS ((tree, tree));
+static int reference_compatible_p PARAMS ((tree, tree));
+static tree convert_class_to_reference PARAMS ((tree, tree, tree));
+static tree direct_reference_binding PARAMS ((tree, tree));
+static int promoted_arithmetic_type_p PARAMS ((tree));
+static tree conditional_conversion PARAMS ((tree, tree));
tree
build_vfield_ref (datum, type)
diff --git a/gcc/cp/class.c b/gcc/cp/class.c
index 0085052d302..e7b11f95469 100644
--- a/gcc/cp/class.c
+++ b/gcc/cp/class.c
@@ -41,7 +41,7 @@ Boston, MA 02111-1307, USA. */
same. */
#define SAME_FN(FN1DECL, FN2DECL) (DECL_ASSEMBLER_NAME (FN1DECL) == DECL_ASSEMBLER_NAME (FN2DECL))
-extern void set_class_shadows PROTO ((tree));
+extern void set_class_shadows PARAMS ((tree));
/* The number of nested classes being processed. If we are not in the
scope of any class, this is zero. */
@@ -72,87 +72,87 @@ typedef struct class_stack_node {
static int current_class_stack_size;
static class_stack_node_t current_class_stack;
-static tree get_vfield_name PROTO((tree));
-static void finish_struct_anon PROTO((tree));
-static tree build_vbase_pointer PROTO((tree, tree));
-static tree build_vtable_entry PROTO((tree, tree));
-static tree get_vtable_name PROTO((tree));
-static tree get_derived_offset PROTO((tree, tree));
-static tree get_basefndecls PROTO((tree, tree));
-static void set_rtti_entry PROTO((tree, tree, tree));
-static void build_vtable PROTO((tree, tree));
-static void prepare_fresh_vtable PROTO((tree, tree));
-static tree dfs_fixup_vtable_deltas PROTO((tree, void *));
-static tree dfs_finish_vtbls PROTO((tree, void *));
-static void finish_vtbls PROTO((tree));
-static void modify_vtable_entry PROTO((tree, tree, tree));
-static tree get_vtable_entry_n PROTO((tree, unsigned HOST_WIDE_INT));
-static void add_virtual_function PROTO((tree *, tree *, int *, tree, tree));
-static tree delete_duplicate_fields_1 PROTO((tree, tree));
-static void delete_duplicate_fields PROTO((tree));
-static void finish_struct_bits PROTO((tree));
-static int alter_access PROTO((tree, tree, tree, tree));
-static void handle_using_decl PROTO((tree, tree));
-static int overrides PROTO((tree, tree));
-static int strictly_overrides PROTO((tree, tree));
-static void merge_overrides PROTO((tree, tree, int, tree));
-static void override_one_vtable PROTO((tree, tree, tree));
-static void mark_overriders PROTO((tree, tree));
-static void check_for_override PROTO((tree, tree));
-static tree dfs_get_class_offset PROTO((tree, void *));
-static tree get_class_offset PROTO((tree, tree, tree, tree));
-static void modify_one_vtable PROTO((tree, tree, tree));
-static tree dfs_modify_vtables PROTO((tree, void *));
-static tree modify_all_vtables PROTO((tree, int *, tree));
-static void determine_primary_base PROTO((tree, int *));
-static void finish_struct_methods PROTO((tree));
-static void maybe_warn_about_overly_private_class PROTO ((tree));
-static int field_decl_cmp PROTO ((const tree *, const tree *));
-static int method_name_cmp PROTO ((const tree *, const tree *));
-static tree add_implicitly_declared_members PROTO((tree, int, int, int));
-static tree fixed_type_or_null PROTO((tree, int *));
-static tree resolve_address_of_overloaded_function PROTO((tree, tree, int,
+static tree get_vfield_name PARAMS ((tree));
+static void finish_struct_anon PARAMS ((tree));
+static tree build_vbase_pointer PARAMS ((tree, tree));
+static tree build_vtable_entry PARAMS ((tree, tree));
+static tree get_vtable_name PARAMS ((tree));
+static tree get_derived_offset PARAMS ((tree, tree));
+static tree get_basefndecls PARAMS ((tree, tree));
+static void set_rtti_entry PARAMS ((tree, tree, tree));
+static void build_vtable PARAMS ((tree, tree));
+static void prepare_fresh_vtable PARAMS ((tree, tree));
+static tree dfs_fixup_vtable_deltas PARAMS ((tree, void *));
+static tree dfs_finish_vtbls PARAMS ((tree, void *));
+static void finish_vtbls PARAMS ((tree));
+static void modify_vtable_entry PARAMS ((tree, tree, tree));
+static tree get_vtable_entry_n PARAMS ((tree, unsigned HOST_WIDE_INT));
+static void add_virtual_function PARAMS ((tree *, tree *, int *, tree, tree));
+static tree delete_duplicate_fields_1 PARAMS ((tree, tree));
+static void delete_duplicate_fields PARAMS ((tree));
+static void finish_struct_bits PARAMS ((tree));
+static int alter_access PARAMS ((tree, tree, tree, tree));
+static void handle_using_decl PARAMS ((tree, tree));
+static int overrides PARAMS ((tree, tree));
+static int strictly_overrides PARAMS ((tree, tree));
+static void merge_overrides PARAMS ((tree, tree, int, tree));
+static void override_one_vtable PARAMS ((tree, tree, tree));
+static void mark_overriders PARAMS ((tree, tree));
+static void check_for_override PARAMS ((tree, tree));
+static tree dfs_get_class_offset PARAMS ((tree, void *));
+static tree get_class_offset PARAMS ((tree, tree, tree, tree));
+static void modify_one_vtable PARAMS ((tree, tree, tree));
+static tree dfs_modify_vtables PARAMS ((tree, void *));
+static tree modify_all_vtables PARAMS ((tree, int *, tree));
+static void determine_primary_base PARAMS ((tree, int *));
+static void finish_struct_methods PARAMS ((tree));
+static void maybe_warn_about_overly_private_class PARAMS ((tree));
+static int field_decl_cmp PARAMS ((const tree *, const tree *));
+static int method_name_cmp PARAMS ((const tree *, const tree *));
+static tree add_implicitly_declared_members PARAMS ((tree, int, int, int));
+static tree fixed_type_or_null PARAMS ((tree, int *));
+static tree resolve_address_of_overloaded_function PARAMS ((tree, tree, int,
int, tree));
-static void build_vtable_entry_ref PROTO((tree, tree, tree));
-static tree build_vtable_entry_for_fn PROTO((tree, tree));
-static tree build_vtbl_initializer PROTO((tree, tree));
-static int count_fields PROTO((tree));
-static int add_fields_to_vec PROTO((tree, tree, int));
-static void check_bitfield_decl PROTO((tree));
-static void check_field_decl PROTO((tree, tree, int *, int *, int *, int *));
-static void check_field_decls PROTO((tree, tree *, int *, int *, int *,
+static void build_vtable_entry_ref PARAMS ((tree, tree, tree));
+static tree build_vtable_entry_for_fn PARAMS ((tree, tree));
+static tree build_vtbl_initializer PARAMS ((tree, tree));
+static int count_fields PARAMS ((tree));
+static int add_fields_to_vec PARAMS ((tree, tree, int));
+static void check_bitfield_decl PARAMS ((tree));
+static void check_field_decl PARAMS ((tree, tree, int *, int *, int *, int *));
+static void check_field_decls PARAMS ((tree, tree *, int *, int *, int *,
int *));
-static int avoid_overlap PROTO((tree, tree, int *));
-static tree build_base_field PROTO((tree, tree, int *, int *, unsigned int *));
-static tree build_base_fields PROTO((tree, int *));
-static tree build_vbase_pointer_fields PROTO((tree, int *));
-static tree build_vtbl_or_vbase_field PROTO((tree, tree, tree, tree, int *));
-static void check_methods PROTO((tree));
-static void remove_zero_width_bit_fields PROTO((tree));
-static void check_bases PROTO((tree, int *, int *, int *));
-static void check_bases_and_members PROTO((tree, int *));
-static void create_vtable_ptr PROTO((tree, int *, int *, tree *, tree *));
-static void layout_class_type PROTO((tree, int *, int *, tree *, tree *));
-static void fixup_pending_inline PROTO((struct pending_inline *));
-static void fixup_inline_methods PROTO((tree));
-static void set_primary_base PROTO((tree, int, int *));
-static tree dfs_propagate_binfo_offsets PROTO((tree, void *));
-static void propagate_binfo_offsets PROTO((tree, tree));
-static void layout_basetypes PROTO((tree));
-static void layout_virtual_bases PROTO((tree));
-static void remove_base_field PROTO((tree, tree, tree *));
-static void remove_base_fields PROTO((tree));
-static tree dfs_set_offset_for_shared_vbases PROTO((tree, void *));
-static tree dfs_set_offset_for_unshared_vbases PROTO((tree, void *));
-static tree dfs_build_vbase_offset_vtbl_entries PROTO((tree, void *));
-static tree build_vbase_offset_vtbl_entries PROTO((tree, tree));
-static tree dfs_vcall_offset_queue_p PROTO((tree, void *));
-static tree dfs_build_vcall_offset_vtbl_entries PROTO((tree, void *));
-static tree build_vcall_offset_vtbl_entries PROTO((tree, tree));
-static tree dfs_count_virtuals PROTO((tree, void *));
-static void start_vtable PROTO((tree, int *));
-static void layout_vtable_decl PROTO((tree, int));
-static int num_vfun_entries PROTO((tree));
+static int avoid_overlap PARAMS ((tree, tree, int *));
+static tree build_base_field PARAMS ((tree, tree, int *, int *, unsigned int *));
+static tree build_base_fields PARAMS ((tree, int *));
+static tree build_vbase_pointer_fields PARAMS ((tree, int *));
+static tree build_vtbl_or_vbase_field PARAMS ((tree, tree, tree, tree, int *));
+static void check_methods PARAMS ((tree));
+static void remove_zero_width_bit_fields PARAMS ((tree));
+static void check_bases PARAMS ((tree, int *, int *, int *));
+static void check_bases_and_members PARAMS ((tree, int *));
+static void create_vtable_ptr PARAMS ((tree, int *, int *, tree *, tree *));
+static void layout_class_type PARAMS ((tree, int *, int *, tree *, tree *));
+static void fixup_pending_inline PARAMS ((struct pending_inline *));
+static void fixup_inline_methods PARAMS ((tree));
+static void set_primary_base PARAMS ((tree, int, int *));
+static tree dfs_propagate_binfo_offsets PARAMS ((tree, void *));
+static void propagate_binfo_offsets PARAMS ((tree, tree));
+static void layout_basetypes PARAMS ((tree));
+static void layout_virtual_bases PARAMS ((tree));
+static void remove_base_field PARAMS ((tree, tree, tree *));
+static void remove_base_fields PARAMS ((tree));
+static tree dfs_set_offset_for_shared_vbases PARAMS ((tree, void *));
+static tree dfs_set_offset_for_unshared_vbases PARAMS ((tree, void *));
+static tree dfs_build_vbase_offset_vtbl_entries PARAMS ((tree, void *));
+static tree build_vbase_offset_vtbl_entries PARAMS ((tree, tree));
+static tree dfs_vcall_offset_queue_p PARAMS ((tree, void *));
+static tree dfs_build_vcall_offset_vtbl_entries PARAMS ((tree, void *));
+static tree build_vcall_offset_vtbl_entries PARAMS ((tree, tree));
+static tree dfs_count_virtuals PARAMS ((tree, void *));
+static void start_vtable PARAMS ((tree, int *));
+static void layout_vtable_decl PARAMS ((tree, int));
+static int num_vfun_entries PARAMS ((tree));
/* Variables shared between class.c and call.c. */
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index 0d83576c922..062586c38c1 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -1135,7 +1135,7 @@ extern int flag_access_control;
after the file has been completely parsed. The argument will be
the GLOBAL_NAMESPACE. */
-extern void (*back_end_hook) PROTO((tree));
+extern void (*back_end_hook) PARAMS ((tree));
/* C++ language-specific tree codes. */
@@ -2954,44 +2954,44 @@ extern int warn_multichar;
extern int warn_nontemplate_friend;
/* in c-common.c */
-extern void declare_function_name PROTO((void));
-extern void decl_attributes PROTO((tree, tree, tree));
-extern void init_function_format_info PROTO((void));
-extern void record_function_format PROTO((tree, tree, int, int, int));
-extern void check_function_format PROTO((tree, tree, tree));
+extern void declare_function_name PARAMS ((void));
+extern void decl_attributes PARAMS ((tree, tree, tree));
+extern void init_function_format_info PARAMS ((void));
+extern void record_function_format PARAMS ((tree, tree, int, int, int));
+extern void check_function_format PARAMS ((tree, tree, tree));
/* Print an error message for invalid operands to arith operation CODE.
NOP_EXPR is used as a special case (see truthvalue_conversion). */
-extern void binary_op_error PROTO((enum tree_code));
-extern tree canonical_type_variant PROTO((tree));
-extern void c_expand_expr_stmt PROTO((tree));
+extern void binary_op_error PARAMS ((enum tree_code));
+extern tree canonical_type_variant PARAMS ((tree));
+extern void c_expand_expr_stmt PARAMS ((tree));
/* Validate the expression after `case' and apply default promotions. */
-extern tree check_case_value PROTO((tree));
+extern tree check_case_value PARAMS ((tree));
/* Concatenate a list of STRING_CST nodes into one STRING_CST. */
-extern tree combine_strings PROTO((tree));
-extern void constant_expression_warning PROTO((tree));
-extern tree convert_and_check PROTO((tree, tree));
-extern void overflow_warning PROTO((tree));
-extern void unsigned_conversion_warning PROTO((tree, tree));
-extern void c_apply_type_quals_to_decl PROTO((int, tree));
+extern tree combine_strings PARAMS ((tree));
+extern void constant_expression_warning PARAMS ((tree));
+extern tree convert_and_check PARAMS ((tree, tree));
+extern void overflow_warning PARAMS ((tree));
+extern void unsigned_conversion_warning PARAMS ((tree, tree));
+extern void c_apply_type_quals_to_decl PARAMS ((int, tree));
/* Read the rest of the current #-directive line. */
#if USE_CPPLIB
-extern char *get_directive_line PROTO((void));
+extern char *get_directive_line PARAMS ((void));
#define GET_DIRECTIVE_LINE() get_directive_line ()
#else
-extern char *get_directive_line PROTO((FILE *));
+extern char *get_directive_line PARAMS ((FILE *));
#define GET_DIRECTIVE_LINE() get_directive_line (finput)
#endif
/* Subroutine of build_binary_op, used for comparison operations.
See if the operands have both been converted from subword integer types
and, if so, perhaps change them both back to their original type. */
-extern tree shorten_compare PROTO((tree *, tree *, tree *, enum tree_code *));
+extern tree shorten_compare PARAMS ((tree *, tree *, tree *, enum tree_code *));
/* Prepare expr to be an argument of a TRUTH_NOT_EXPR,
or validate its data type for an `if' or `while' statement or ?..: exp. */
-extern tree truthvalue_conversion PROTO((tree));
-extern tree type_for_mode PROTO((enum machine_mode, int));
-extern tree type_for_size PROTO((unsigned, int));
-extern int c_get_alias_set PROTO((tree));
+extern tree truthvalue_conversion PARAMS ((tree));
+extern tree type_for_mode PARAMS ((enum machine_mode, int));
+extern tree type_for_size PARAMS ((unsigned, int));
+extern int c_get_alias_set PARAMS ((tree));
/* in decl{2}.c */
/* A node that is a list (length 1) of error_mark_nodes. */
@@ -3033,7 +3033,7 @@ struct tinst_level
struct tinst_level *next;
};
-extern void maybe_print_template_context PROTO ((void));
+extern void maybe_print_template_context PARAMS ((void));
/* in class.c */
@@ -3477,869 +3477,869 @@ enum tree_string_flags
extern const char **opname_tab, **assignop_tab;
/* in call.c */
-extern int check_dtor_name PROTO((tree, tree));
-extern int get_arglist_len_in_bytes PROTO((tree));
-
-extern tree build_vfield_ref PROTO((tree, tree));
-extern tree resolve_scope_to_name PROTO((tree, tree));
-extern tree build_scoped_method_call PROTO((tree, tree, tree, tree));
-extern tree build_addr_func PROTO((tree));
-extern tree build_call PROTO((tree, tree, tree));
-extern tree build_method_call PROTO((tree, tree, tree, tree, int));
-extern int null_ptr_cst_p PROTO((tree));
-extern tree type_decays_to PROTO((tree));
-extern tree build_user_type_conversion PROTO((tree, tree, int));
-extern tree build_new_function_call PROTO((tree, tree));
-extern tree build_new_op PROTO((enum tree_code, int, tree, tree, tree));
-extern tree build_op_new_call PROTO((enum tree_code, tree, tree, int));
-extern tree build_op_delete_call PROTO((enum tree_code, tree, tree, int, tree));
-extern int can_convert PROTO((tree, tree));
-extern int can_convert_arg PROTO((tree, tree, tree));
-extern int enforce_access PROTO((tree, tree));
-extern tree convert_default_arg PROTO((tree, tree, tree));
-extern tree convert_arg_to_ellipsis PROTO((tree));
-extern tree build_x_va_arg PROTO((tree, tree));
-extern tree convert_type_from_ellipsis PROTO((tree));
-extern int is_properly_derived_from PROTO((tree, tree));
-extern tree initialize_reference PROTO((tree, tree));
-extern tree strip_top_quals PROTO((tree));
-extern tree perform_implicit_conversion PROTO((tree, tree));
+extern int check_dtor_name PARAMS ((tree, tree));
+extern int get_arglist_len_in_bytes PARAMS ((tree));
+
+extern tree build_vfield_ref PARAMS ((tree, tree));
+extern tree resolve_scope_to_name PARAMS ((tree, tree));
+extern tree build_scoped_method_call PARAMS ((tree, tree, tree, tree));
+extern tree build_addr_func PARAMS ((tree));
+extern tree build_call PARAMS ((tree, tree, tree));
+extern tree build_method_call PARAMS ((tree, tree, tree, tree, int));
+extern int null_ptr_cst_p PARAMS ((tree));
+extern tree type_decays_to PARAMS ((tree));
+extern tree build_user_type_conversion PARAMS ((tree, tree, int));
+extern tree build_new_function_call PARAMS ((tree, tree));
+extern tree build_new_op PARAMS ((enum tree_code, int, tree, tree, tree));
+extern tree build_op_new_call PARAMS ((enum tree_code, tree, tree, int));
+extern tree build_op_delete_call PARAMS ((enum tree_code, tree, tree, int, tree));
+extern int can_convert PARAMS ((tree, tree));
+extern int can_convert_arg PARAMS ((tree, tree, tree));
+extern int enforce_access PARAMS ((tree, tree));
+extern tree convert_default_arg PARAMS ((tree, tree, tree));
+extern tree convert_arg_to_ellipsis PARAMS ((tree));
+extern tree build_x_va_arg PARAMS ((tree, tree));
+extern tree convert_type_from_ellipsis PARAMS ((tree));
+extern int is_properly_derived_from PARAMS ((tree, tree));
+extern tree initialize_reference PARAMS ((tree, tree));
+extern tree strip_top_quals PARAMS ((tree));
+extern tree perform_implicit_conversion PARAMS ((tree, tree));
/* in class.c */
-extern tree build_vbase_path PROTO((enum tree_code, tree, tree, tree, int));
-extern tree build_vtbl_ref PROTO((tree, tree));
-extern tree build_vfn_ref PROTO((tree *, tree, tree));
-extern tree get_vtable_decl PROTO((tree, int));
-extern void add_method PROTO((tree, tree *, tree));
-extern int currently_open_class PROTO((tree));
-extern tree get_vfield_offset PROTO((tree));
-extern void duplicate_tag_error PROTO((tree));
-extern tree finish_struct PROTO((tree, tree));
-extern void finish_struct_1 PROTO((tree));
-extern int resolves_to_fixed_type_p PROTO((tree, int *));
-extern void init_class_processing PROTO((void));
-extern int is_empty_class PROTO((tree));
-extern void pushclass PROTO((tree, int));
-extern void popclass PROTO((void));
-extern void push_nested_class PROTO((tree, int));
-extern void pop_nested_class PROTO((void));
-extern void push_lang_context PROTO((tree));
-extern void pop_lang_context PROTO((void));
-extern tree instantiate_type PROTO((tree, tree, int));
-extern void print_class_statistics PROTO((void));
-extern tree skip_rtti_stuff PROTO((tree, tree, unsigned HOST_WIDE_INT *));
-extern void build_self_reference PROTO((void));
-extern void warn_hidden PROTO((tree));
-extern tree get_enclosing_class PROTO((tree));
-int is_base_of_enclosing_class PROTO((tree, tree));
-extern void unreverse_member_declarations PROTO((tree));
-extern void invalidate_class_lookup_cache PROTO((void));
-extern void maybe_note_name_used_in_class PROTO((tree, tree));
-extern void note_name_declared_in_class PROTO((tree, tree));
-extern tree num_extra_vtbl_entries PROTO((tree));
-extern tree size_extra_vtbl_entries PROTO((tree));
+extern tree build_vbase_path PARAMS ((enum tree_code, tree, tree, tree, int));
+extern tree build_vtbl_ref PARAMS ((tree, tree));
+extern tree build_vfn_ref PARAMS ((tree *, tree, tree));
+extern tree get_vtable_decl PARAMS ((tree, int));
+extern void add_method PARAMS ((tree, tree *, tree));
+extern int currently_open_class PARAMS ((tree));
+extern tree get_vfield_offset PARAMS ((tree));
+extern void duplicate_tag_error PARAMS ((tree));
+extern tree finish_struct PARAMS ((tree, tree));
+extern void finish_struct_1 PARAMS ((tree));
+extern int resolves_to_fixed_type_p PARAMS ((tree, int *));
+extern void init_class_processing PARAMS ((void));
+extern int is_empty_class PARAMS ((tree));
+extern void pushclass PARAMS ((tree, int));
+extern void popclass PARAMS ((void));
+extern void push_nested_class PARAMS ((tree, int));
+extern void pop_nested_class PARAMS ((void));
+extern void push_lang_context PARAMS ((tree));
+extern void pop_lang_context PARAMS ((void));
+extern tree instantiate_type PARAMS ((tree, tree, int));
+extern void print_class_statistics PARAMS ((void));
+extern tree skip_rtti_stuff PARAMS ((tree, tree, unsigned HOST_WIDE_INT *));
+extern void build_self_reference PARAMS ((void));
+extern void warn_hidden PARAMS ((tree));
+extern tree get_enclosing_class PARAMS ((tree));
+int is_base_of_enclosing_class PARAMS ((tree, tree));
+extern void unreverse_member_declarations PARAMS ((tree));
+extern void invalidate_class_lookup_cache PARAMS ((void));
+extern void maybe_note_name_used_in_class PARAMS ((tree, tree));
+extern void note_name_declared_in_class PARAMS ((tree, tree));
+extern tree num_extra_vtbl_entries PARAMS ((tree));
+extern tree size_extra_vtbl_entries PARAMS ((tree));
/* in cvt.c */
-extern tree convert_to_reference PROTO((tree, tree, int, int, tree));
-extern tree convert_from_reference PROTO((tree));
-extern tree convert_pointer_to_real PROTO((tree, tree));
-extern tree convert_pointer_to PROTO((tree, tree));
-extern tree ocp_convert PROTO((tree, tree, int, int));
-extern tree cp_convert PROTO((tree, tree));
-extern tree convert_to_void PROTO((tree, const char */*implicit context*/));
-extern tree convert PROTO((tree, tree));
-extern tree convert_force PROTO((tree, tree, int));
-extern tree build_type_conversion PROTO((tree, tree, int));
-extern tree build_expr_type_conversion PROTO((int, tree, int));
-extern tree type_promotes_to PROTO((tree));
-extern tree perform_qualification_conversions PROTO((tree, tree));
+extern tree convert_to_reference PARAMS ((tree, tree, int, int, tree));
+extern tree convert_from_reference PARAMS ((tree));
+extern tree convert_pointer_to_real PARAMS ((tree, tree));
+extern tree convert_pointer_to PARAMS ((tree, tree));
+extern tree ocp_convert PARAMS ((tree, tree, int, int));
+extern tree cp_convert PARAMS ((tree, tree));
+extern tree convert_to_void PARAMS ((tree, const char */*implicit context*/));
+extern tree convert PARAMS ((tree, tree));
+extern tree convert_force PARAMS ((tree, tree, int));
+extern tree build_type_conversion PARAMS ((tree, tree, int));
+extern tree build_expr_type_conversion PARAMS ((int, tree, int));
+extern tree type_promotes_to PARAMS ((tree));
+extern tree perform_qualification_conversions PARAMS ((tree, tree));
/* decl.c */
/* resume_binding_level */
-extern void set_identifier_local_value PROTO((tree, tree));
-extern int global_bindings_p PROTO((void));
-extern int toplevel_bindings_p PROTO((void));
-extern int namespace_bindings_p PROTO((void));
-extern void keep_next_level PROTO((int));
-extern int kept_level_p PROTO((void));
-extern void declare_pseudo_global_level PROTO((void));
-extern int pseudo_global_level_p PROTO((void));
-extern void set_class_shadows PROTO((tree));
-extern void pushlevel PROTO((int));
-extern void note_level_for_for PROTO((void));
-extern void resume_level PROTO((struct binding_level *));
-extern void delete_block PROTO((tree));
-extern void insert_block PROTO((tree));
-extern void add_block_current_level PROTO((tree));
-extern void set_block PROTO((tree));
-extern void pushlevel_class PROTO((void));
-extern void poplevel_class PROTO((void));
-extern void print_binding_stack PROTO((void));
-extern void print_binding_level PROTO((struct binding_level *));
-extern void push_namespace PROTO((tree));
-extern void pop_namespace PROTO((void));
-extern void push_nested_namespace PROTO((tree));
-extern void pop_nested_namespace PROTO((tree));
-extern void maybe_push_to_top_level PROTO((int));
-extern void push_to_top_level PROTO((void));
-extern void pop_from_top_level PROTO((void));
-extern tree identifier_type_value PROTO((tree));
-extern void set_identifier_type_value PROTO((tree, tree));
-extern void pop_everything PROTO((void));
-extern void pushtag PROTO((tree, tree, int));
-extern tree make_anon_name PROTO((void));
-extern void clear_anon_tags PROTO((void));
-extern int decls_match PROTO((tree, tree));
-extern int duplicate_decls PROTO((tree, tree));
-extern tree pushdecl PROTO((tree));
-extern tree pushdecl_top_level PROTO((tree));
-extern void pushdecl_class_level PROTO((tree));
+extern void set_identifier_local_value PARAMS ((tree, tree));
+extern int global_bindings_p PARAMS ((void));
+extern int toplevel_bindings_p PARAMS ((void));
+extern int namespace_bindings_p PARAMS ((void));
+extern void keep_next_level PARAMS ((int));
+extern int kept_level_p PARAMS ((void));
+extern void declare_pseudo_global_level PARAMS ((void));
+extern int pseudo_global_level_p PARAMS ((void));
+extern void set_class_shadows PARAMS ((tree));
+extern void pushlevel PARAMS ((int));
+extern void note_level_for_for PARAMS ((void));
+extern void resume_level PARAMS ((struct binding_level *));
+extern void delete_block PARAMS ((tree));
+extern void insert_block PARAMS ((tree));
+extern void add_block_current_level PARAMS ((tree));
+extern void set_block PARAMS ((tree));
+extern void pushlevel_class PARAMS ((void));
+extern void poplevel_class PARAMS ((void));
+extern void print_binding_stack PARAMS ((void));
+extern void print_binding_level PARAMS ((struct binding_level *));
+extern void push_namespace PARAMS ((tree));
+extern void pop_namespace PARAMS ((void));
+extern void push_nested_namespace PARAMS ((tree));
+extern void pop_nested_namespace PARAMS ((tree));
+extern void maybe_push_to_top_level PARAMS ((int));
+extern void push_to_top_level PARAMS ((void));
+extern void pop_from_top_level PARAMS ((void));
+extern tree identifier_type_value PARAMS ((tree));
+extern void set_identifier_type_value PARAMS ((tree, tree));
+extern void pop_everything PARAMS ((void));
+extern void pushtag PARAMS ((tree, tree, int));
+extern tree make_anon_name PARAMS ((void));
+extern void clear_anon_tags PARAMS ((void));
+extern int decls_match PARAMS ((tree, tree));
+extern int duplicate_decls PARAMS ((tree, tree));
+extern tree pushdecl PARAMS ((tree));
+extern tree pushdecl_top_level PARAMS ((tree));
+extern void pushdecl_class_level PARAMS ((tree));
#if 0
-extern void pushdecl_nonclass_level PROTO((tree));
+extern void pushdecl_nonclass_level PARAMS ((tree));
#endif
-extern tree pushdecl_namespace_level PROTO((tree));
-extern tree push_using_decl PROTO((tree, tree));
-extern tree push_using_directive PROTO((tree));
-extern void push_class_level_binding PROTO((tree, tree));
-extern tree implicitly_declare PROTO((tree));
-extern tree lookup_label PROTO((tree));
-extern tree declare_local_label PROTO((tree));
-extern tree define_label PROTO((char *, int, tree));
-extern void push_switch PROTO((void));
-extern void pop_switch PROTO((void));
-extern void define_case_label PROTO((void));
-extern tree getdecls PROTO((void));
-extern tree gettags PROTO((void));
+extern tree pushdecl_namespace_level PARAMS ((tree));
+extern tree push_using_decl PARAMS ((tree, tree));
+extern tree push_using_directive PARAMS ((tree));
+extern void push_class_level_binding PARAMS ((tree, tree));
+extern tree implicitly_declare PARAMS ((tree));
+extern tree lookup_label PARAMS ((tree));
+extern tree declare_local_label PARAMS ((tree));
+extern tree define_label PARAMS ((char *, int, tree));
+extern void push_switch PARAMS ((void));
+extern void pop_switch PARAMS ((void));
+extern void define_case_label PARAMS ((void));
+extern tree getdecls PARAMS ((void));
+extern tree gettags PARAMS ((void));
#if 0
-extern void set_current_level_tags_transparency PROTO((int));
+extern void set_current_level_tags_transparency PARAMS ((int));
#endif
-extern tree binding_for_name PROTO((tree, tree));
-extern tree namespace_binding PROTO((tree, tree));
-extern void set_namespace_binding PROTO((tree, tree, tree));
-extern tree lookup_namespace_name PROTO((tree, tree));
-extern tree build_typename_type PROTO((tree, tree, tree, tree));
-extern tree make_typename_type PROTO((tree, tree, int));
-extern tree lookup_name_nonclass PROTO((tree));
-extern tree lookup_function_nonclass PROTO((tree, tree));
-extern tree lookup_name PROTO((tree, int));
-extern tree lookup_name_current_level PROTO((tree));
-extern tree lookup_type_current_level PROTO((tree));
-extern tree lookup_name_namespace_only PROTO((tree));
-extern void begin_only_namespace_names PROTO((void));
-extern void end_only_namespace_names PROTO((void));
-extern tree namespace_ancestor PROTO((tree, tree));
-extern tree unqualified_namespace_lookup PROTO((tree, int, tree *));
-extern int lookup_using_namespace PROTO((tree, tree, tree, tree, int, tree *));
-extern int qualified_lookup_using_namespace PROTO((tree, tree, tree, int));
-extern tree auto_function PROTO((tree, tree));
-extern void init_decl_processing PROTO((void));
-extern int init_type_desc PROTO((void));
-extern tree define_function PROTO((const char *, tree,
+extern tree binding_for_name PARAMS ((tree, tree));
+extern tree namespace_binding PARAMS ((tree, tree));
+extern void set_namespace_binding PARAMS ((tree, tree, tree));
+extern tree lookup_namespace_name PARAMS ((tree, tree));
+extern tree build_typename_type PARAMS ((tree, tree, tree, tree));
+extern tree make_typename_type PARAMS ((tree, tree, int));
+extern tree lookup_name_nonclass PARAMS ((tree));
+extern tree lookup_function_nonclass PARAMS ((tree, tree));
+extern tree lookup_name PARAMS ((tree, int));
+extern tree lookup_name_current_level PARAMS ((tree));
+extern tree lookup_type_current_level PARAMS ((tree));
+extern tree lookup_name_namespace_only PARAMS ((tree));
+extern void begin_only_namespace_names PARAMS ((void));
+extern void end_only_namespace_names PARAMS ((void));
+extern tree namespace_ancestor PARAMS ((tree, tree));
+extern tree unqualified_namespace_lookup PARAMS ((tree, int, tree *));
+extern int lookup_using_namespace PARAMS ((tree, tree, tree, tree, int, tree *));
+extern int qualified_lookup_using_namespace PARAMS ((tree, tree, tree, int));
+extern tree auto_function PARAMS ((tree, tree));
+extern void init_decl_processing PARAMS ((void));
+extern int init_type_desc PARAMS ((void));
+extern tree define_function PARAMS ((const char *, tree,
void (*) (tree),
const char *));
-extern tree check_tag_decl PROTO((tree));
-extern void shadow_tag PROTO((tree));
-extern tree groktypename PROTO((tree));
-extern tree start_decl PROTO((tree, tree, int, tree, tree));
-extern void start_decl_1 PROTO((tree));
-extern void cp_finish_decl PROTO((tree, tree, tree, int));
-extern void finish_decl PROTO((tree, tree, tree));
-extern void maybe_inject_for_scope_var PROTO((tree));
-extern void initialize_local_var PROTO((tree, tree, int));
-extern void expand_static_init PROTO((tree, tree));
-extern tree start_handler_parms PROTO((tree, tree));
-extern int complete_array_type PROTO((tree, tree, int));
-extern tree build_ptrmemfunc_type PROTO((tree));
+extern tree check_tag_decl PARAMS ((tree));
+extern void shadow_tag PARAMS ((tree));
+extern tree groktypename PARAMS ((tree));
+extern tree start_decl PARAMS ((tree, tree, int, tree, tree));
+extern void start_decl_1 PARAMS ((tree));
+extern void cp_finish_decl PARAMS ((tree, tree, tree, int));
+extern void finish_decl PARAMS ((tree, tree, tree));
+extern void maybe_inject_for_scope_var PARAMS ((tree));
+extern void initialize_local_var PARAMS ((tree, tree, int));
+extern void expand_static_init PARAMS ((tree, tree));
+extern tree start_handler_parms PARAMS ((tree, tree));
+extern int complete_array_type PARAMS ((tree, tree, int));
+extern tree build_ptrmemfunc_type PARAMS ((tree));
/* the grokdeclarator prototype is in decl.h */
-extern int parmlist_is_exprlist PROTO((tree));
-extern int copy_args_p PROTO((tree));
-extern int grok_ctor_properties PROTO((tree, tree));
-extern void grok_op_properties PROTO((tree, int, int));
-extern tree xref_tag PROTO((tree, tree, int));
-extern tree xref_tag_from_type PROTO((tree, tree, int));
-extern void xref_basetypes PROTO((tree, tree, tree, tree));
-extern tree start_enum PROTO((tree));
-extern tree finish_enum PROTO((tree));
-extern void build_enumerator PROTO((tree, tree, tree));
-extern int start_function PROTO((tree, tree, tree, int));
-extern void expand_start_early_try_stmts PROTO((void));
-extern void store_parm_decls PROTO((void));
-extern void store_return_init PROTO((tree));
-extern tree finish_function PROTO((int, int));
-extern tree start_method PROTO((tree, tree, tree));
-extern tree finish_method PROTO((tree));
-extern void hack_incomplete_structures PROTO((tree));
-extern tree maybe_build_cleanup_and_delete PROTO((tree));
-extern tree maybe_build_cleanup PROTO((tree));
-extern void cplus_expand_expr_stmt PROTO((tree));
-extern void finish_stmt PROTO((void));
-extern int in_function_p PROTO((void));
-extern void replace_defarg PROTO((tree, tree));
-extern void print_other_binding_stack PROTO((struct binding_level *));
-extern void revert_static_member_fn PROTO((tree*, tree*, tree*));
-extern void fixup_anonymous_aggr PROTO((tree));
-extern int check_static_variable_definition PROTO((tree, tree));
-extern tree compute_array_index_type PROTO((tree, tree));
-extern void push_local_binding PROTO((tree, tree, int));
-extern int push_class_binding PROTO((tree, tree));
-extern tree check_default_argument PROTO((tree, tree));
-extern tree push_overloaded_decl PROTO((tree, int));
-extern void clear_identifier_class_values PROTO((void));
-extern void storetags PROTO((tree));
-extern int vtable_decl_p PROTO((tree, void *));
-extern int vtype_decl_p PROTO((tree, void *));
-extern int sigtable_decl_p PROTO((tree, void *));
-typedef int (*walk_globals_pred) PROTO((tree, void *));
-typedef int (*walk_globals_fn) PROTO((tree *, void *));
-extern int walk_globals PROTO((walk_globals_pred,
+extern int parmlist_is_exprlist PARAMS ((tree));
+extern int copy_args_p PARAMS ((tree));
+extern int grok_ctor_properties PARAMS ((tree, tree));
+extern void grok_op_properties PARAMS ((tree, int, int));
+extern tree xref_tag PARAMS ((tree, tree, int));
+extern tree xref_tag_from_type PARAMS ((tree, tree, int));
+extern void xref_basetypes PARAMS ((tree, tree, tree, tree));
+extern tree start_enum PARAMS ((tree));
+extern tree finish_enum PARAMS ((tree));
+extern void build_enumerator PARAMS ((tree, tree, tree));
+extern int start_function PARAMS ((tree, tree, tree, int));
+extern void expand_start_early_try_stmts PARAMS ((void));
+extern void store_parm_decls PARAMS ((void));
+extern void store_return_init PARAMS ((tree));
+extern tree finish_function PARAMS ((int, int));
+extern tree start_method PARAMS ((tree, tree, tree));
+extern tree finish_method PARAMS ((tree));
+extern void hack_incomplete_structures PARAMS ((tree));
+extern tree maybe_build_cleanup_and_delete PARAMS ((tree));
+extern tree maybe_build_cleanup PARAMS ((tree));
+extern void cplus_expand_expr_stmt PARAMS ((tree));
+extern void finish_stmt PARAMS ((void));
+extern int in_function_p PARAMS ((void));
+extern void replace_defarg PARAMS ((tree, tree));
+extern void print_other_binding_stack PARAMS ((struct binding_level *));
+extern void revert_static_member_fn PARAMS ((tree*, tree*, tree*));
+extern void fixup_anonymous_aggr PARAMS ((tree));
+extern int check_static_variable_definition PARAMS ((tree, tree));
+extern tree compute_array_index_type PARAMS ((tree, tree));
+extern void push_local_binding PARAMS ((tree, tree, int));
+extern int push_class_binding PARAMS ((tree, tree));
+extern tree check_default_argument PARAMS ((tree, tree));
+extern tree push_overloaded_decl PARAMS ((tree, int));
+extern void clear_identifier_class_values PARAMS ((void));
+extern void storetags PARAMS ((tree));
+extern int vtable_decl_p PARAMS ((tree, void *));
+extern int vtype_decl_p PARAMS ((tree, void *));
+extern int sigtable_decl_p PARAMS ((tree, void *));
+typedef int (*walk_globals_pred) PARAMS ((tree, void *));
+typedef int (*walk_globals_fn) PARAMS ((tree *, void *));
+extern int walk_globals PARAMS ((walk_globals_pred,
walk_globals_fn,
void *));
-typedef int (*walk_namespaces_fn) PROTO((tree, void *));
-extern int walk_namespaces PROTO((walk_namespaces_fn,
+typedef int (*walk_namespaces_fn) PARAMS ((tree, void *));
+extern int walk_namespaces PARAMS ((walk_namespaces_fn,
void *));
-extern int wrapup_globals_for_namespace PROTO((tree, void *));
-extern tree cp_namespace_decls PROTO((tree));
-extern tree create_implicit_typedef PROTO((tree, tree));
-extern tree maybe_push_decl PROTO((tree));
-extern void emit_local_var PROTO((tree));
-extern tree build_target_expr_with_type PROTO((tree, tree));
-extern void make_rtl_for_local_static PROTO((tree));
-extern int local_variable_p PROTO((tree));
-extern int nonstatic_local_decl_p PROTO((tree));
-extern tree declare_global_var PROTO((tree, tree));
-extern void register_dtor_fn PROTO((tree));
+extern int wrapup_globals_for_namespace PARAMS ((tree, void *));
+extern tree cp_namespace_decls PARAMS ((tree));
+extern tree create_implicit_typedef PARAMS ((tree, tree));
+extern tree maybe_push_decl PARAMS ((tree));
+extern void emit_local_var PARAMS ((tree));
+extern tree build_target_expr_with_type PARAMS ((tree, tree));
+extern void make_rtl_for_local_static PARAMS ((tree));
+extern int local_variable_p PARAMS ((tree));
+extern int nonstatic_local_decl_p PARAMS ((tree));
+extern tree declare_global_var PARAMS ((tree, tree));
+extern void register_dtor_fn PARAMS ((tree));
/* in decl2.c */
-extern void init_decl2 PROTO((void));
-extern int check_java_method PROTO((tree));
-extern int lang_decode_option PROTO((int, char **));
-extern int grok_method_quals PROTO((tree, tree, tree));
-extern void warn_if_unknown_interface PROTO((tree));
-extern void grok_x_components PROTO((tree));
-extern void maybe_retrofit_in_chrg PROTO((tree));
-extern void maybe_make_one_only PROTO((tree));
-extern void grokclassfn PROTO((tree, tree, enum overload_flags, tree));
-extern tree grok_alignof PROTO((tree));
-extern tree grok_array_decl PROTO((tree, tree));
-extern tree delete_sanity PROTO((tree, tree, int, int));
-extern tree check_classfn PROTO((tree, tree));
-extern void check_member_template PROTO((tree));
-extern tree grokfield PROTO((tree, tree, tree, tree, tree));
-extern tree grokbitfield PROTO((tree, tree, tree));
-extern tree groktypefield PROTO((tree, tree));
-extern tree grokoptypename PROTO((tree, tree));
-extern int copy_assignment_arg_p PROTO((tree, int));
-extern void cplus_decl_attributes PROTO((tree, tree, tree));
-extern tree constructor_name_full PROTO((tree));
-extern tree constructor_name PROTO((tree));
-extern void setup_vtbl_ptr PROTO((void));
-extern void mark_inline_for_output PROTO((tree));
-extern tree get_temp_name PROTO((tree, int));
-extern void finish_anon_union PROTO((tree));
-extern tree finish_table PROTO((tree, tree, tree, int));
-extern void finish_builtin_type PROTO((tree, const char *,
+extern void init_decl2 PARAMS ((void));
+extern int check_java_method PARAMS ((tree));
+extern int lang_decode_option PARAMS ((int, char **));
+extern int grok_method_quals PARAMS ((tree, tree, tree));
+extern void warn_if_unknown_interface PARAMS ((tree));
+extern void grok_x_components PARAMS ((tree));
+extern void maybe_retrofit_in_chrg PARAMS ((tree));
+extern void maybe_make_one_only PARAMS ((tree));
+extern void grokclassfn PARAMS ((tree, tree, enum overload_flags, tree));
+extern tree grok_alignof PARAMS ((tree));
+extern tree grok_array_decl PARAMS ((tree, tree));
+extern tree delete_sanity PARAMS ((tree, tree, int, int));
+extern tree check_classfn PARAMS ((tree, tree));
+extern void check_member_template PARAMS ((tree));
+extern tree grokfield PARAMS ((tree, tree, tree, tree, tree));
+extern tree grokbitfield PARAMS ((tree, tree, tree));
+extern tree groktypefield PARAMS ((tree, tree));
+extern tree grokoptypename PARAMS ((tree, tree));
+extern int copy_assignment_arg_p PARAMS ((tree, int));
+extern void cplus_decl_attributes PARAMS ((tree, tree, tree));
+extern tree constructor_name_full PARAMS ((tree));
+extern tree constructor_name PARAMS ((tree));
+extern void setup_vtbl_ptr PARAMS ((void));
+extern void mark_inline_for_output PARAMS ((tree));
+extern tree get_temp_name PARAMS ((tree, int));
+extern void finish_anon_union PARAMS ((tree));
+extern tree finish_table PARAMS ((tree, tree, tree, int));
+extern void finish_builtin_type PARAMS ((tree, const char *,
tree *, int, tree));
-extern tree coerce_new_type PROTO((tree));
-extern tree coerce_delete_type PROTO((tree));
-extern void comdat_linkage PROTO((tree));
-extern void import_export_class PROTO((tree));
-extern void import_export_vtable PROTO((tree, tree, int));
-extern void import_export_decl PROTO((tree));
-extern tree build_cleanup PROTO((tree));
-extern void finish_file PROTO((void));
-extern tree reparse_absdcl_as_expr PROTO((tree, tree));
-extern tree reparse_absdcl_as_casts PROTO((tree, tree));
-extern tree build_expr_from_tree PROTO((tree));
-extern tree reparse_decl_as_expr PROTO((tree, tree));
-extern tree finish_decl_parsing PROTO((tree));
-extern tree check_cp_case_value PROTO((tree));
-extern void set_decl_namespace PROTO((tree, tree, int));
-extern tree current_decl_namespace PROTO((void));
-extern void push_decl_namespace PROTO((tree));
-extern void pop_decl_namespace PROTO((void));
-extern void push_scope PROTO((tree));
-extern void pop_scope PROTO((tree));
-extern void do_namespace_alias PROTO((tree, tree));
-extern void do_toplevel_using_decl PROTO((tree));
-extern void do_local_using_decl PROTO((tree));
-extern tree do_class_using_decl PROTO((tree));
-extern void do_using_directive PROTO((tree));
-extern void check_default_args PROTO((tree));
-extern void mark_used PROTO((tree));
-extern tree handle_class_head PROTO((tree, tree, tree));
-extern tree lookup_arg_dependent PROTO((tree, tree, tree));
-extern void finish_static_data_member_decl PROTO((tree, tree, tree, int));
+extern tree coerce_new_type PARAMS ((tree));
+extern tree coerce_delete_type PARAMS ((tree));
+extern void comdat_linkage PARAMS ((tree));
+extern void import_export_class PARAMS ((tree));
+extern void import_export_vtable PARAMS ((tree, tree, int));
+extern void import_export_decl PARAMS ((tree));
+extern tree build_cleanup PARAMS ((tree));
+extern void finish_file PARAMS ((void));
+extern tree reparse_absdcl_as_expr PARAMS ((tree, tree));
+extern tree reparse_absdcl_as_casts PARAMS ((tree, tree));
+extern tree build_expr_from_tree PARAMS ((tree));
+extern tree reparse_decl_as_expr PARAMS ((tree, tree));
+extern tree finish_decl_parsing PARAMS ((tree));
+extern tree check_cp_case_value PARAMS ((tree));
+extern void set_decl_namespace PARAMS ((tree, tree, int));
+extern tree current_decl_namespace PARAMS ((void));
+extern void push_decl_namespace PARAMS ((tree));
+extern void pop_decl_namespace PARAMS ((void));
+extern void push_scope PARAMS ((tree));
+extern void pop_scope PARAMS ((tree));
+extern void do_namespace_alias PARAMS ((tree, tree));
+extern void do_toplevel_using_decl PARAMS ((tree));
+extern void do_local_using_decl PARAMS ((tree));
+extern tree do_class_using_decl PARAMS ((tree));
+extern void do_using_directive PARAMS ((tree));
+extern void check_default_args PARAMS ((tree));
+extern void mark_used PARAMS ((tree));
+extern tree handle_class_head PARAMS ((tree, tree, tree));
+extern tree lookup_arg_dependent PARAMS ((tree, tree, tree));
+extern void finish_static_data_member_decl PARAMS ((tree, tree, tree, int));
/* in parse.y */
-extern void cp_parse_init PROTO((void));
+extern void cp_parse_init PARAMS ((void));
/* in errfn.c */
/* The cp_* functions aren't suitable for ATTRIBUTE_PRINTF. */
-extern void cp_error PVPROTO((const char *, ...));
-extern void cp_error_at PVPROTO((const char *, ...));
-extern void cp_warning PVPROTO((const char *, ...));
-extern void cp_warning_at PVPROTO((const char *, ...));
-extern void cp_pedwarn PVPROTO((const char *, ...));
-extern void cp_pedwarn_at PVPROTO((const char *, ...));
-extern void cp_compiler_error PVPROTO((const char *, ...));
-extern void cp_sprintf PVPROTO((const char *, ...));
-extern void cp_deprecated PROTO((const char*));
+extern void cp_error PARAMS ((const char *, ...));
+extern void cp_error_at PARAMS ((const char *, ...));
+extern void cp_warning PARAMS ((const char *, ...));
+extern void cp_warning_at PARAMS ((const char *, ...));
+extern void cp_pedwarn PARAMS ((const char *, ...));
+extern void cp_pedwarn_at PARAMS ((const char *, ...));
+extern void cp_compiler_error PARAMS ((const char *, ...));
+extern void cp_sprintf PARAMS ((const char *, ...));
+extern void cp_deprecated PARAMS ((const char*));
/* in error.c */
-extern void init_error PROTO((void));
-extern const char *type_as_string PROTO((tree, enum tree_string_flags));
-extern const char *decl_as_string PROTO((tree, enum tree_string_flags));
-extern const char *expr_as_string PROTO((tree, enum tree_string_flags));
-extern const char *context_as_string PROTO((tree, enum tree_string_flags));
-extern const char *lang_decl_name PROTO((tree, int));
-extern const char *cp_file_of PROTO((tree));
-extern int cp_line_of PROTO((tree));
+extern void init_error PARAMS ((void));
+extern const char *type_as_string PARAMS ((tree, enum tree_string_flags));
+extern const char *decl_as_string PARAMS ((tree, enum tree_string_flags));
+extern const char *expr_as_string PARAMS ((tree, enum tree_string_flags));
+extern const char *context_as_string PARAMS ((tree, enum tree_string_flags));
+extern const char *lang_decl_name PARAMS ((tree, int));
+extern const char *cp_file_of PARAMS ((tree));
+extern int cp_line_of PARAMS ((tree));
/* in except.c */
-extern void init_exception_processing PROTO((void));
-extern tree expand_start_catch_block PROTO((tree));
-extern void expand_end_catch_block PROTO((tree));
-extern void expand_builtin_throw PROTO((void));
-extern tree expand_start_eh_spec PROTO((void));
-extern void expand_end_eh_spec PROTO((tree, tree));
-extern void expand_exception_blocks PROTO((void));
-extern tree build_throw PROTO((tree));
-extern void mark_all_runtime_matches PROTO((void));
+extern void init_exception_processing PARAMS ((void));
+extern tree expand_start_catch_block PARAMS ((tree));
+extern void expand_end_catch_block PARAMS ((tree));
+extern void expand_builtin_throw PARAMS ((void));
+extern tree expand_start_eh_spec PARAMS ((void));
+extern void expand_end_eh_spec PARAMS ((tree, tree));
+extern void expand_exception_blocks PARAMS ((void));
+extern tree build_throw PARAMS ((tree));
+extern void mark_all_runtime_matches PARAMS ((void));
/* in expr.c */
-extern void init_cplus_expand PROTO((void));
-extern void fixup_result_decl PROTO((tree, struct rtx_def *));
-extern int extract_init PROTO((tree, tree));
-extern void do_case PROTO((tree, tree));
-extern tree cplus_expand_constant PROTO((tree));
+extern void init_cplus_expand PARAMS ((void));
+extern void fixup_result_decl PARAMS ((tree, struct rtx_def *));
+extern int extract_init PARAMS ((tree, tree));
+extern void do_case PARAMS ((tree, tree));
+extern tree cplus_expand_constant PARAMS ((tree));
/* friend.c */
-extern int is_friend PROTO((tree, tree));
-extern void make_friend_class PROTO((tree, tree));
-extern void add_friend PROTO((tree, tree));
-extern void add_friends PROTO((tree, tree, tree));
-extern tree do_friend PROTO((tree, tree, tree, tree, tree, enum overload_flags, tree, int));
+extern int is_friend PARAMS ((tree, tree));
+extern void make_friend_class PARAMS ((tree, tree));
+extern void add_friend PARAMS ((tree, tree));
+extern void add_friends PARAMS ((tree, tree, tree));
+extern tree do_friend PARAMS ((tree, tree, tree, tree, tree, enum overload_flags, tree, int));
/* in init.c */
-extern void init_init_processing PROTO((void));
-extern tree emit_base_init PROTO((tree));
-extern void check_base_init PROTO((tree));
-extern void expand_member_init PROTO((tree, tree, tree));
-extern tree build_aggr_init PROTO((tree, tree, int));
-extern int is_aggr_typedef PROTO((tree, int));
-extern int is_aggr_type PROTO((tree, int));
-extern tree get_aggr_from_typedef PROTO((tree, int));
-extern tree get_type_value PROTO((tree));
-extern tree build_member_call PROTO((tree, tree, tree));
-extern tree build_offset_ref PROTO((tree, tree));
-extern tree resolve_offset_ref PROTO((tree));
-extern tree decl_constant_value PROTO((tree));
-extern tree build_new PROTO((tree, tree, tree, int));
-extern tree build_new_1 PROTO((tree));
-extern tree build_vec_init PROTO((tree, tree, tree, tree, int));
-extern tree build_x_delete PROTO((tree, int, tree));
-extern tree build_delete PROTO((tree, tree, tree, int, int));
-extern tree build_vbase_delete PROTO((tree, tree));
-extern tree build_vec_delete PROTO((tree, tree, tree, int));
-extern tree create_temporary_var PROTO((tree));
-extern void begin_init_stmts PROTO((tree *, tree *));
-extern tree finish_init_stmts PROTO((tree, tree));
-extern void initialize_vtbl_ptrs PROTO((tree, tree));
+extern void init_init_processing PARAMS ((void));
+extern tree emit_base_init PARAMS ((tree));
+extern void check_base_init PARAMS ((tree));
+extern void expand_member_init PARAMS ((tree, tree, tree));
+extern tree build_aggr_init PARAMS ((tree, tree, int));
+extern int is_aggr_typedef PARAMS ((tree, int));
+extern int is_aggr_type PARAMS ((tree, int));
+extern tree get_aggr_from_typedef PARAMS ((tree, int));
+extern tree get_type_value PARAMS ((tree));
+extern tree build_member_call PARAMS ((tree, tree, tree));
+extern tree build_offset_ref PARAMS ((tree, tree));
+extern tree resolve_offset_ref PARAMS ((tree));
+extern tree decl_constant_value PARAMS ((tree));
+extern tree build_new PARAMS ((tree, tree, tree, int));
+extern tree build_new_1 PARAMS ((tree));
+extern tree build_vec_init PARAMS ((tree, tree, tree, tree, int));
+extern tree build_x_delete PARAMS ((tree, int, tree));
+extern tree build_delete PARAMS ((tree, tree, tree, int, int));
+extern tree build_vbase_delete PARAMS ((tree, tree));
+extern tree build_vec_delete PARAMS ((tree, tree, tree, int));
+extern tree create_temporary_var PARAMS ((tree));
+extern void begin_init_stmts PARAMS ((tree *, tree *));
+extern tree finish_init_stmts PARAMS ((tree, tree));
+extern void initialize_vtbl_ptrs PARAMS ((tree, tree));
/* in input.c */
/* in lex.c */
-extern char *file_name_nondirectory PROTO((const char *));
-extern tree make_pointer_declarator PROTO((tree, tree));
-extern tree make_reference_declarator PROTO((tree, tree));
-extern tree make_call_declarator PROTO((tree, tree, tree, tree));
-extern void set_quals_and_spec PROTO((tree, tree, tree));
-extern const char *operator_name_string PROTO((tree));
-extern void lang_init PROTO((void));
-extern void lang_finish PROTO((void));
+extern char *file_name_nondirectory PARAMS ((const char *));
+extern tree make_pointer_declarator PARAMS ((tree, tree));
+extern tree make_reference_declarator PARAMS ((tree, tree));
+extern tree make_call_declarator PARAMS ((tree, tree, tree, tree));
+extern void set_quals_and_spec PARAMS ((tree, tree, tree));
+extern const char *operator_name_string PARAMS ((tree));
+extern void lang_init PARAMS ((void));
+extern void lang_finish PARAMS ((void));
#if 0
-extern void reinit_lang_specific PROTO((void));
+extern void reinit_lang_specific PARAMS ((void));
#endif
-extern void reinit_parse_for_function PROTO((void));
-extern void print_parse_statistics PROTO((void));
-extern void extract_interface_info PROTO((void));
-extern void do_pending_inlines PROTO((void));
-extern void process_next_inline PROTO((struct pending_inline *));
-extern struct pending_input *save_pending_input PROTO((void));
-extern void restore_pending_input PROTO((struct pending_input *));
-extern void yyungetc PROTO((int, int));
-extern void reinit_parse_for_method PROTO((int, tree));
-extern void reinit_parse_for_block PROTO((int, struct obstack *));
-extern tree cons_up_default_function PROTO((tree, tree, int));
-extern void check_for_missing_semicolon PROTO((tree));
-extern void note_got_semicolon PROTO((tree));
-extern void note_list_got_semicolon PROTO((tree));
-extern void do_pending_lang_change PROTO((void));
-extern int identifier_type PROTO((tree));
-extern void see_typename PROTO((void));
-extern tree do_identifier PROTO((tree, int, tree));
-extern tree do_scoped_id PROTO((tree, int));
-extern tree identifier_typedecl_value PROTO((tree));
-extern int real_yylex PROTO((void));
-extern int is_rid PROTO((tree));
-extern tree build_lang_decl PROTO((enum tree_code, tree, tree));
-extern void retrofit_lang_decl PROTO((tree));
-extern void copy_lang_decl PROTO((tree));
-extern tree cp_make_lang_type PROTO((enum tree_code));
-extern tree make_aggr_type PROTO((enum tree_code));
-extern void dump_time_statistics PROTO((void));
-extern void compiler_error PVPROTO((const char *, ...))
+extern void reinit_parse_for_function PARAMS ((void));
+extern void print_parse_statistics PARAMS ((void));
+extern void extract_interface_info PARAMS ((void));
+extern void do_pending_inlines PARAMS ((void));
+extern void process_next_inline PARAMS ((struct pending_inline *));
+extern struct pending_input *save_pending_input PARAMS ((void));
+extern void restore_pending_input PARAMS ((struct pending_input *));
+extern void yyungetc PARAMS ((int, int));
+extern void reinit_parse_for_method PARAMS ((int, tree));
+extern void reinit_parse_for_block PARAMS ((int, struct obstack *));
+extern tree cons_up_default_function PARAMS ((tree, tree, int));
+extern void check_for_missing_semicolon PARAMS ((tree));
+extern void note_got_semicolon PARAMS ((tree));
+extern void note_list_got_semicolon PARAMS ((tree));
+extern void do_pending_lang_change PARAMS ((void));
+extern int identifier_type PARAMS ((tree));
+extern void see_typename PARAMS ((void));
+extern tree do_identifier PARAMS ((tree, int, tree));
+extern tree do_scoped_id PARAMS ((tree, int));
+extern tree identifier_typedecl_value PARAMS ((tree));
+extern int real_yylex PARAMS ((void));
+extern int is_rid PARAMS ((tree));
+extern tree build_lang_decl PARAMS ((enum tree_code, tree, tree));
+extern void retrofit_lang_decl PARAMS ((tree));
+extern void copy_lang_decl PARAMS ((tree));
+extern tree cp_make_lang_type PARAMS ((enum tree_code));
+extern tree make_aggr_type PARAMS ((enum tree_code));
+extern void dump_time_statistics PARAMS ((void));
+extern void compiler_error PARAMS ((const char *, ...))
ATTRIBUTE_PRINTF_1;
-extern void yyerror PROTO((const char *));
-extern void clear_inline_text_obstack PROTO((void));
-extern void maybe_snarf_defarg PROTO((void));
-extern tree snarf_defarg PROTO((void));
-extern void add_defarg_fn PROTO((tree));
-extern void do_pending_defargs PROTO((void));
-extern int identifier_type PROTO((tree));
-extern void yyhook PROTO((int));
-extern int cp_type_qual_from_rid PROTO((tree));
+extern void yyerror PARAMS ((const char *));
+extern void clear_inline_text_obstack PARAMS ((void));
+extern void maybe_snarf_defarg PARAMS ((void));
+extern tree snarf_defarg PARAMS ((void));
+extern void add_defarg_fn PARAMS ((tree));
+extern void do_pending_defargs PARAMS ((void));
+extern int identifier_type PARAMS ((tree));
+extern void yyhook PARAMS ((int));
+extern int cp_type_qual_from_rid PARAMS ((tree));
/* in method.c */
-extern void init_method PROTO((void));
-extern char *build_overload_name PROTO((tree, int, int));
-extern tree build_static_name PROTO((tree, tree));
-extern tree build_decl_overload PROTO((tree, tree, int));
-extern tree build_decl_overload_real PROTO((tree, tree, tree, tree,
+extern void init_method PARAMS ((void));
+extern char *build_overload_name PARAMS ((tree, int, int));
+extern tree build_static_name PARAMS ((tree, tree));
+extern tree build_decl_overload PARAMS ((tree, tree, int));
+extern tree build_decl_overload_real PARAMS ((tree, tree, tree, tree,
tree, int));
-extern void set_mangled_name_for_decl PROTO((tree));
-extern tree build_typename_overload PROTO((tree));
-extern tree build_overload_with_type PROTO((tree, tree));
-extern tree build_destructor_name PROTO((tree));
-extern tree build_opfncall PROTO((enum tree_code, int, tree, tree, tree));
-extern tree hack_identifier PROTO((tree, tree));
-extern tree make_thunk PROTO((tree, int));
-extern void emit_thunk PROTO((tree));
-extern void synthesize_method PROTO((tree));
-extern tree get_id_2 PROTO((const char *, tree));
+extern void set_mangled_name_for_decl PARAMS ((tree));
+extern tree build_typename_overload PARAMS ((tree));
+extern tree build_overload_with_type PARAMS ((tree, tree));
+extern tree build_destructor_name PARAMS ((tree));
+extern tree build_opfncall PARAMS ((enum tree_code, int, tree, tree, tree));
+extern tree hack_identifier PARAMS ((tree, tree));
+extern tree make_thunk PARAMS ((tree, int));
+extern void emit_thunk PARAMS ((tree));
+extern void synthesize_method PARAMS ((tree));
+extern tree get_id_2 PARAMS ((const char *, tree));
/* In optimize.c */
-extern void optimize_function PROTO((tree));
-extern int calls_setjmp_p PROTO((tree));
+extern void optimize_function PARAMS ((tree));
+extern int calls_setjmp_p PARAMS ((tree));
/* in pt.c */
-extern void init_pt PROTO ((void));
-extern void check_template_shadow PROTO ((tree));
-extern tree innermost_args PROTO ((tree));
-extern tree tsubst PROTO ((tree, tree, int, tree));
-extern tree tsubst_expr PROTO ((tree, tree, int, tree));
-extern tree tsubst_copy PROTO ((tree, tree, int, tree));
-extern void maybe_begin_member_template_processing PROTO((tree));
-extern void maybe_end_member_template_processing PROTO((void));
-extern tree finish_member_template_decl PROTO((tree));
-extern void begin_template_parm_list PROTO((void));
-extern void begin_specialization PROTO((void));
-extern void reset_specialization PROTO((void));
-extern void end_specialization PROTO((void));
-extern void begin_explicit_instantiation PROTO((void));
-extern void end_explicit_instantiation PROTO((void));
-extern tree check_explicit_specialization PROTO((tree, tree, int, int));
-extern tree process_template_parm PROTO((tree, tree));
-extern tree end_template_parm_list PROTO((tree));
-extern void end_template_decl PROTO((void));
-extern tree current_template_args PROTO((void));
-extern tree push_template_decl PROTO((tree));
-extern tree push_template_decl_real PROTO((tree, int));
-extern void redeclare_class_template PROTO((tree, tree));
-extern tree lookup_template_class PROTO((tree, tree, tree, tree, int));
-extern tree lookup_template_function PROTO((tree, tree));
-extern int uses_template_parms PROTO((tree));
-extern tree instantiate_class_template PROTO((tree));
-extern tree instantiate_template PROTO((tree, tree));
-extern void overload_template_name PROTO((tree));
-extern int fn_type_unification PROTO((tree, tree, tree, tree, tree, unification_kind_t));
-struct tinst_level *tinst_for_decl PROTO((void));
-extern void mark_decl_instantiated PROTO((tree, int));
-extern int more_specialized PROTO((tree, tree, tree));
-extern void mark_class_instantiated PROTO((tree, int));
-extern void do_decl_instantiation PROTO((tree, tree, tree));
-extern void do_type_instantiation PROTO((tree, tree));
-extern tree instantiate_decl PROTO((tree));
-extern tree get_bindings PROTO((tree, tree, tree));
-extern void add_tree PROTO((tree));
-extern void add_maybe_template PROTO((tree, tree));
-extern void pop_tinst_level PROTO((void));
-extern int more_specialized_class PROTO((tree, tree));
-extern int is_member_template PROTO((tree));
-extern int template_parms_equal PROTO((tree, tree));
-extern int comp_template_parms PROTO((tree, tree));
-extern int template_class_depth PROTO((tree));
-extern int is_specialization_of PROTO((tree, tree));
-extern int comp_template_args PROTO((tree, tree));
-extern void maybe_process_partial_specialization PROTO((tree));
-extern void maybe_check_template_type PROTO((tree));
-extern tree most_specialized_instantiation PROTO((tree, tree));
-extern void print_candidates PROTO((tree));
-extern int instantiate_pending_templates PROTO((void));
-extern tree tsubst_default_argument PROTO((tree, tree, tree));
-extern tree most_general_template PROTO((tree));
+extern void init_pt PARAMS ((void));
+extern void check_template_shadow PARAMS ((tree));
+extern tree innermost_args PARAMS ((tree));
+extern tree tsubst PARAMS ((tree, tree, int, tree));
+extern tree tsubst_expr PARAMS ((tree, tree, int, tree));
+extern tree tsubst_copy PARAMS ((tree, tree, int, tree));
+extern void maybe_begin_member_template_processing PARAMS ((tree));
+extern void maybe_end_member_template_processing PARAMS ((void));
+extern tree finish_member_template_decl PARAMS ((tree));
+extern void begin_template_parm_list PARAMS ((void));
+extern void begin_specialization PARAMS ((void));
+extern void reset_specialization PARAMS ((void));
+extern void end_specialization PARAMS ((void));
+extern void begin_explicit_instantiation PARAMS ((void));
+extern void end_explicit_instantiation PARAMS ((void));
+extern tree check_explicit_specialization PARAMS ((tree, tree, int, int));
+extern tree process_template_parm PARAMS ((tree, tree));
+extern tree end_template_parm_list PARAMS ((tree));
+extern void end_template_decl PARAMS ((void));
+extern tree current_template_args PARAMS ((void));
+extern tree push_template_decl PARAMS ((tree));
+extern tree push_template_decl_real PARAMS ((tree, int));
+extern void redeclare_class_template PARAMS ((tree, tree));
+extern tree lookup_template_class PARAMS ((tree, tree, tree, tree, int));
+extern tree lookup_template_function PARAMS ((tree, tree));
+extern int uses_template_parms PARAMS ((tree));
+extern tree instantiate_class_template PARAMS ((tree));
+extern tree instantiate_template PARAMS ((tree, tree));
+extern void overload_template_name PARAMS ((tree));
+extern int fn_type_unification PARAMS ((tree, tree, tree, tree, tree, unification_kind_t));
+struct tinst_level *tinst_for_decl PARAMS ((void));
+extern void mark_decl_instantiated PARAMS ((tree, int));
+extern int more_specialized PARAMS ((tree, tree, tree));
+extern void mark_class_instantiated PARAMS ((tree, int));
+extern void do_decl_instantiation PARAMS ((tree, tree, tree));
+extern void do_type_instantiation PARAMS ((tree, tree));
+extern tree instantiate_decl PARAMS ((tree));
+extern tree get_bindings PARAMS ((tree, tree, tree));
+extern void add_tree PARAMS ((tree));
+extern void add_maybe_template PARAMS ((tree, tree));
+extern void pop_tinst_level PARAMS ((void));
+extern int more_specialized_class PARAMS ((tree, tree));
+extern int is_member_template PARAMS ((tree));
+extern int template_parms_equal PARAMS ((tree, tree));
+extern int comp_template_parms PARAMS ((tree, tree));
+extern int template_class_depth PARAMS ((tree));
+extern int is_specialization_of PARAMS ((tree, tree));
+extern int comp_template_args PARAMS ((tree, tree));
+extern void maybe_process_partial_specialization PARAMS ((tree));
+extern void maybe_check_template_type PARAMS ((tree));
+extern tree most_specialized_instantiation PARAMS ((tree, tree));
+extern void print_candidates PARAMS ((tree));
+extern int instantiate_pending_templates PARAMS ((void));
+extern tree tsubst_default_argument PARAMS ((tree, tree, tree));
+extern tree most_general_template PARAMS ((tree));
extern int processing_template_parmlist;
/* in repo.c */
-extern void repo_template_used PROTO((tree));
-extern void repo_template_instantiated PROTO((tree, int));
-extern void init_repo PROTO((const char *));
-extern void finish_repo PROTO((void));
+extern void repo_template_used PARAMS ((tree));
+extern void repo_template_instantiated PARAMS ((tree, int));
+extern void init_repo PARAMS ((const char *));
+extern void finish_repo PARAMS ((void));
/* in rtti.c */
-extern void init_rtti_processing PROTO((void));
-extern tree build_typeid PROTO((tree));
-extern tree get_tinfo_decl PROTO((tree));
-extern tree get_typeid PROTO((tree));
-extern tree get_typeid_1 PROTO((tree));
-extern tree build_dynamic_cast PROTO((tree, tree));
-extern void synthesize_tinfo_fn PROTO((tree));
+extern void init_rtti_processing PARAMS ((void));
+extern tree build_typeid PARAMS ((tree));
+extern tree get_tinfo_decl PARAMS ((tree));
+extern tree get_typeid PARAMS ((tree));
+extern tree get_typeid_1 PARAMS ((tree));
+extern tree build_dynamic_cast PARAMS ((tree, tree));
+extern void synthesize_tinfo_fn PARAMS ((tree));
/* in search.c */
-extern int types_overlap_p PROTO((tree, tree));
-extern tree get_vbase PROTO((tree, tree));
-extern tree get_binfo PROTO((tree, tree, int));
-extern int get_base_distance PROTO((tree, tree, int, tree *));
-extern tree get_dynamic_cast_base_type PROTO((tree, tree));
-extern int accessible_p PROTO((tree, tree));
-extern tree lookup_field PROTO((tree, tree, int, int));
-extern int lookup_fnfields_1 PROTO((tree, tree));
-extern tree lookup_fnfields PROTO((tree, tree, int));
-extern tree lookup_member PROTO((tree, tree, int, int));
-extern tree lookup_nested_tag PROTO((tree, tree));
-extern tree get_matching_virtual PROTO((tree, tree, int));
-extern void get_pure_virtuals PROTO((tree));
-extern tree init_vbase_pointers PROTO((tree, tree));
-extern void expand_indirect_vtbls_init PROTO((tree, tree));
-extern void clear_search_slots PROTO((tree));
-extern void get_vbase_types PROTO((tree));
-extern void maybe_suppress_debug_info PROTO((tree));
-extern void note_debug_info_needed PROTO((tree));
-extern void push_class_decls PROTO((tree));
-extern void pop_class_decls PROTO((void));
-extern void unuse_fields PROTO((tree));
-extern void print_search_statistics PROTO((void));
-extern void init_search_processing PROTO((void));
-extern void reinit_search_statistics PROTO((void));
-extern tree current_scope PROTO((void));
-extern int at_function_scope_p PROTO((void));
-extern tree lookup_conversions PROTO((tree));
-extern tree binfo_for_vtable PROTO((tree));
-extern int binfo_from_vbase PROTO((tree));
-extern tree dfs_walk PROTO((tree,
+extern int types_overlap_p PARAMS ((tree, tree));
+extern tree get_vbase PARAMS ((tree, tree));
+extern tree get_binfo PARAMS ((tree, tree, int));
+extern int get_base_distance PARAMS ((tree, tree, int, tree *));
+extern tree get_dynamic_cast_base_type PARAMS ((tree, tree));
+extern int accessible_p PARAMS ((tree, tree));
+extern tree lookup_field PARAMS ((tree, tree, int, int));
+extern int lookup_fnfields_1 PARAMS ((tree, tree));
+extern tree lookup_fnfields PARAMS ((tree, tree, int));
+extern tree lookup_member PARAMS ((tree, tree, int, int));
+extern tree lookup_nested_tag PARAMS ((tree, tree));
+extern tree get_matching_virtual PARAMS ((tree, tree, int));
+extern void get_pure_virtuals PARAMS ((tree));
+extern tree init_vbase_pointers PARAMS ((tree, tree));
+extern void expand_indirect_vtbls_init PARAMS ((tree, tree));
+extern void clear_search_slots PARAMS ((tree));
+extern void get_vbase_types PARAMS ((tree));
+extern void maybe_suppress_debug_info PARAMS ((tree));
+extern void note_debug_info_needed PARAMS ((tree));
+extern void push_class_decls PARAMS ((tree));
+extern void pop_class_decls PARAMS ((void));
+extern void unuse_fields PARAMS ((tree));
+extern void print_search_statistics PARAMS ((void));
+extern void init_search_processing PARAMS ((void));
+extern void reinit_search_statistics PARAMS ((void));
+extern tree current_scope PARAMS ((void));
+extern int at_function_scope_p PARAMS ((void));
+extern tree lookup_conversions PARAMS ((tree));
+extern tree binfo_for_vtable PARAMS ((tree));
+extern int binfo_from_vbase PARAMS ((tree));
+extern tree dfs_walk PARAMS ((tree,
tree (*)(tree, void *),
tree (*) (tree, void *),
void *));
-extern tree dfs_walk_real PROTO ((tree,
+extern tree dfs_walk_real PARAMS ((tree,
tree (*) (tree, void *),
tree (*) (tree, void *),
tree (*) (tree, void *),
void *));
-extern tree dfs_unmark PROTO((tree, void *));
-extern tree dfs_vbase_unmark PROTO((tree, void *));
-extern tree dfs_vtable_path_unmark PROTO((tree, void *));
-extern tree markedp PROTO((tree, void *));
-extern tree unmarkedp PROTO((tree, void *));
-extern tree dfs_skip_nonprimary_vbases_unmarkedp PROTO((tree, void *));
-extern tree dfs_skip_nonprimary_vbases_markedp PROTO((tree, void *));
-extern tree dfs_unmarked_real_bases_queue_p PROTO((tree, void *));
-extern tree dfs_marked_real_bases_queue_p PROTO((tree, void *));
+extern tree dfs_unmark PARAMS ((tree, void *));
+extern tree dfs_vbase_unmark PARAMS ((tree, void *));
+extern tree dfs_vtable_path_unmark PARAMS ((tree, void *));
+extern tree markedp PARAMS ((tree, void *));
+extern tree unmarkedp PARAMS ((tree, void *));
+extern tree dfs_skip_nonprimary_vbases_unmarkedp PARAMS ((tree, void *));
+extern tree dfs_skip_nonprimary_vbases_markedp PARAMS ((tree, void *));
+extern tree dfs_unmarked_real_bases_queue_p PARAMS ((tree, void *));
+extern tree dfs_marked_real_bases_queue_p PARAMS ((tree, void *));
extern tree dfs_vtable_path_unmarked_real_bases_queue_p
- PROTO((tree, void *));
+ PARAMS ((tree, void *));
extern tree dfs_vtable_path_marked_real_bases_queue_p
- PROTO((tree, void *));
-extern tree dfs_skip_vbases PROTO((tree, void *));
-extern void mark_primary_bases PROTO((tree));
-extern tree convert_pointer_to_vbase PROTO((tree, tree));
-extern tree find_vbase_instance PROTO((tree, tree));
+ PARAMS ((tree, void *));
+extern tree dfs_skip_vbases PARAMS ((tree, void *));
+extern void mark_primary_bases PARAMS ((tree));
+extern tree convert_pointer_to_vbase PARAMS ((tree, tree));
+extern tree find_vbase_instance PARAMS ((tree, tree));
/* in semantics.c */
-extern void finish_expr_stmt PROTO((tree));
-extern tree begin_if_stmt PROTO((void));
-extern void finish_if_stmt_cond PROTO((tree, tree));
-extern tree finish_then_clause PROTO((tree));
-extern void begin_else_clause PROTO((void));
-extern void finish_else_clause PROTO((tree));
-extern void finish_if_stmt PROTO((void));
-extern tree begin_while_stmt PROTO((void));
-extern void finish_while_stmt_cond PROTO((tree, tree));
-extern void finish_while_stmt PROTO((tree));
-extern tree begin_do_stmt PROTO((void));
-extern void finish_do_body PROTO((tree));
-extern void finish_do_stmt PROTO((tree, tree));
-extern void finish_return_stmt PROTO((tree));
-extern tree begin_for_stmt PROTO((void));
-extern void finish_for_init_stmt PROTO((tree));
-extern void finish_for_cond PROTO((tree, tree));
-extern void finish_for_expr PROTO((tree, tree));
-extern void finish_for_stmt PROTO((tree, tree));
-extern void finish_break_stmt PROTO((void));
-extern void finish_continue_stmt PROTO((void));
-extern tree begin_switch_stmt PROTO((void));
-extern void finish_switch_cond PROTO((tree, tree));
-extern void finish_switch_stmt PROTO((tree, tree));
-extern void finish_case_label PROTO((tree, tree));
-extern void finish_goto_stmt PROTO((tree));
-extern tree begin_try_block PROTO((void));
-extern void finish_try_block PROTO((tree));
-extern void finish_handler_sequence PROTO((tree));
-extern tree begin_function_try_block PROTO((void));
-extern void finish_function_try_block PROTO((tree));
-extern void finish_function_handler_sequence PROTO((tree));
-extern void finish_cleanup_try_block PROTO((tree));
-extern tree begin_handler PROTO((void));
-extern tree finish_handler_parms PROTO((tree, tree));
-extern void begin_catch_block PROTO((tree));
-extern void finish_handler PROTO((tree, tree));
-extern void finish_cleanup PROTO((tree, tree));
-extern tree begin_compound_stmt PROTO((int));
-extern tree finish_compound_stmt PROTO((int, tree));
-extern void finish_asm_stmt PROTO((tree, tree, tree, tree, tree));
-extern void finish_label_stmt PROTO((tree));
-extern void finish_label_decl PROTO((tree));
-extern void finish_subobject PROTO((tree));
-extern tree finish_parenthesized_expr PROTO((tree));
-extern tree begin_stmt_expr PROTO((void));
-extern tree finish_stmt_expr PROTO((tree));
-extern tree finish_call_expr PROTO((tree, tree, int));
-extern tree finish_increment_expr PROTO((tree, enum tree_code));
-extern tree finish_this_expr PROTO((void));
-extern tree finish_object_call_expr PROTO((tree, tree, tree));
-extern tree finish_qualified_object_call_expr PROTO((tree, tree, tree));
-extern tree finish_pseudo_destructor_call_expr PROTO((tree, tree, tree));
-extern tree finish_qualified_call_expr PROTO ((tree, tree));
-extern tree finish_label_address_expr PROTO((tree));
-extern tree finish_unary_op_expr PROTO((enum tree_code, tree));
-extern tree finish_id_expr PROTO((tree));
-extern int begin_function_definition PROTO((tree, tree));
-extern tree begin_constructor_declarator PROTO((tree, tree));
-extern tree finish_declarator PROTO((tree, tree, tree, tree, int));
-extern void finish_translation_unit PROTO((void));
-extern tree finish_template_type_parm PROTO((tree, tree));
-extern tree finish_template_template_parm PROTO((tree, tree));
-extern tree finish_parmlist PROTO((tree, int));
-extern tree begin_class_definition PROTO((tree));
-extern tree finish_class_definition PROTO((tree, tree, int, int));
-extern void finish_default_args PROTO((void));
-extern void begin_inline_definitions PROTO((void));
-extern void finish_inline_definitions PROTO((void));
-extern tree finish_member_class_template PROTO((tree));
-extern void finish_template_decl PROTO((tree));
-extern tree finish_template_type PROTO((tree, tree, int));
-extern void enter_scope_of PROTO((tree));
-extern tree finish_base_specifier PROTO((tree, tree));
-extern void finish_member_declaration PROTO((tree));
-extern void check_multiple_declarators PROTO((void));
-extern tree finish_typeof PROTO((tree));
-extern void add_decl_stmt PROTO((tree));
-extern void finish_decl_cleanup PROTO((tree, tree));
-extern void finish_named_return_value PROTO((tree, tree));
-extern tree expand_stmt PROTO((tree));
-extern void expand_body PROTO((tree));
-extern void begin_stmt_tree PROTO((tree *));
-extern void finish_stmt_tree PROTO((tree *));
-extern void prep_stmt PROTO((tree));
-extern tree add_scope_stmt PROTO((int, int));
-extern void do_pushlevel PROTO((void));
-extern tree do_poplevel PROTO((void));
+extern void finish_expr_stmt PARAMS ((tree));
+extern tree begin_if_stmt PARAMS ((void));
+extern void finish_if_stmt_cond PARAMS ((tree, tree));
+extern tree finish_then_clause PARAMS ((tree));
+extern void begin_else_clause PARAMS ((void));
+extern void finish_else_clause PARAMS ((tree));
+extern void finish_if_stmt PARAMS ((void));
+extern tree begin_while_stmt PARAMS ((void));
+extern void finish_while_stmt_cond PARAMS ((tree, tree));
+extern void finish_while_stmt PARAMS ((tree));
+extern tree begin_do_stmt PARAMS ((void));
+extern void finish_do_body PARAMS ((tree));
+extern void finish_do_stmt PARAMS ((tree, tree));
+extern void finish_return_stmt PARAMS ((tree));
+extern tree begin_for_stmt PARAMS ((void));
+extern void finish_for_init_stmt PARAMS ((tree));
+extern void finish_for_cond PARAMS ((tree, tree));
+extern void finish_for_expr PARAMS ((tree, tree));
+extern void finish_for_stmt PARAMS ((tree, tree));
+extern void finish_break_stmt PARAMS ((void));
+extern void finish_continue_stmt PARAMS ((void));
+extern tree begin_switch_stmt PARAMS ((void));
+extern void finish_switch_cond PARAMS ((tree, tree));
+extern void finish_switch_stmt PARAMS ((tree, tree));
+extern void finish_case_label PARAMS ((tree, tree));
+extern void finish_goto_stmt PARAMS ((tree));
+extern tree begin_try_block PARAMS ((void));
+extern void finish_try_block PARAMS ((tree));
+extern void finish_handler_sequence PARAMS ((tree));
+extern tree begin_function_try_block PARAMS ((void));
+extern void finish_function_try_block PARAMS ((tree));
+extern void finish_function_handler_sequence PARAMS ((tree));
+extern void finish_cleanup_try_block PARAMS ((tree));
+extern tree begin_handler PARAMS ((void));
+extern tree finish_handler_parms PARAMS ((tree, tree));
+extern void begin_catch_block PARAMS ((tree));
+extern void finish_handler PARAMS ((tree, tree));
+extern void finish_cleanup PARAMS ((tree, tree));
+extern tree begin_compound_stmt PARAMS ((int));
+extern tree finish_compound_stmt PARAMS ((int, tree));
+extern void finish_asm_stmt PARAMS ((tree, tree, tree, tree, tree));
+extern void finish_label_stmt PARAMS ((tree));
+extern void finish_label_decl PARAMS ((tree));
+extern void finish_subobject PARAMS ((tree));
+extern tree finish_parenthesized_expr PARAMS ((tree));
+extern tree begin_stmt_expr PARAMS ((void));
+extern tree finish_stmt_expr PARAMS ((tree));
+extern tree finish_call_expr PARAMS ((tree, tree, int));
+extern tree finish_increment_expr PARAMS ((tree, enum tree_code));
+extern tree finish_this_expr PARAMS ((void));
+extern tree finish_object_call_expr PARAMS ((tree, tree, tree));
+extern tree finish_qualified_object_call_expr PARAMS ((tree, tree, tree));
+extern tree finish_pseudo_destructor_call_expr PARAMS ((tree, tree, tree));
+extern tree finish_qualified_call_expr PARAMS ((tree, tree));
+extern tree finish_label_address_expr PARAMS ((tree));
+extern tree finish_unary_op_expr PARAMS ((enum tree_code, tree));
+extern tree finish_id_expr PARAMS ((tree));
+extern int begin_function_definition PARAMS ((tree, tree));
+extern tree begin_constructor_declarator PARAMS ((tree, tree));
+extern tree finish_declarator PARAMS ((tree, tree, tree, tree, int));
+extern void finish_translation_unit PARAMS ((void));
+extern tree finish_template_type_parm PARAMS ((tree, tree));
+extern tree finish_template_template_parm PARAMS ((tree, tree));
+extern tree finish_parmlist PARAMS ((tree, int));
+extern tree begin_class_definition PARAMS ((tree));
+extern tree finish_class_definition PARAMS ((tree, tree, int, int));
+extern void finish_default_args PARAMS ((void));
+extern void begin_inline_definitions PARAMS ((void));
+extern void finish_inline_definitions PARAMS ((void));
+extern tree finish_member_class_template PARAMS ((tree));
+extern void finish_template_decl PARAMS ((tree));
+extern tree finish_template_type PARAMS ((tree, tree, int));
+extern void enter_scope_of PARAMS ((tree));
+extern tree finish_base_specifier PARAMS ((tree, tree));
+extern void finish_member_declaration PARAMS ((tree));
+extern void check_multiple_declarators PARAMS ((void));
+extern tree finish_typeof PARAMS ((tree));
+extern void add_decl_stmt PARAMS ((tree));
+extern void finish_decl_cleanup PARAMS ((tree, tree));
+extern void finish_named_return_value PARAMS ((tree, tree));
+extern tree expand_stmt PARAMS ((tree));
+extern void expand_body PARAMS ((tree));
+extern void begin_stmt_tree PARAMS ((tree *));
+extern void finish_stmt_tree PARAMS ((tree *));
+extern void prep_stmt PARAMS ((tree));
+extern tree add_scope_stmt PARAMS ((int, int));
+extern void do_pushlevel PARAMS ((void));
+extern tree do_poplevel PARAMS ((void));
/* Non-zero if we are presently building a statement tree, rather
than expanding each statement as we encounter it. */
#define building_stmt_tree() (last_tree != NULL_TREE)
/* in spew.c */
-extern void init_spew PROTO((void));
-extern int peekyylex PROTO((void));
-extern int yylex PROTO((void));
-extern tree arbitrate_lookup PROTO((tree, tree, tree));
+extern void init_spew PARAMS ((void));
+extern int peekyylex PARAMS ((void));
+extern int yylex PARAMS ((void));
+extern tree arbitrate_lookup PARAMS ((tree, tree, tree));
/* in tree.c */
-extern void init_tree PROTO((void));
-extern int pod_type_p PROTO((tree));
-extern void unshare_base_binfos PROTO((tree));
-extern int member_p PROTO((tree));
-extern cp_lvalue_kind real_lvalue_p PROTO((tree));
-extern tree build_min PVPROTO((enum tree_code, tree, ...));
-extern tree build_min_nt PVPROTO((enum tree_code, ...));
-extern int lvalue_p PROTO((tree));
-extern int lvalue_or_else PROTO((tree, const char *));
-extern tree build_cplus_new PROTO((tree, tree));
-extern tree get_target_expr PROTO((tree));
-extern tree break_out_cleanups PROTO((tree));
-extern tree break_out_calls PROTO((tree));
-extern tree build_cplus_method_type PROTO((tree, tree, tree));
-extern tree build_cplus_staticfn_type PROTO((tree, tree, tree));
-extern tree build_cplus_array_type PROTO((tree, tree));
-extern tree hash_tree_cons PROTO((tree, tree, tree));
-extern tree hash_tree_chain PROTO((tree, tree));
-extern tree hash_chainon PROTO((tree, tree));
-extern tree make_binfo PROTO((tree, tree, tree, tree));
-extern tree binfo_value PROTO((tree, tree));
-extern tree reverse_path PROTO((tree));
-extern int count_functions PROTO((tree));
-extern int is_overloaded_fn PROTO((tree));
-extern tree get_first_fn PROTO((tree));
-extern int bound_pmf_p PROTO((tree));
-extern tree ovl_cons PROTO((tree, tree));
-extern int ovl_member PROTO((tree, tree));
-extern tree build_overload PROTO((tree, tree));
-extern tree fnaddr_from_vtable_entry PROTO((tree));
-extern tree function_arg_chain PROTO((tree));
-extern int promotes_to_aggr_type PROTO((tree, enum tree_code));
-extern int is_aggr_type_2 PROTO((tree, tree));
-extern const char *lang_printable_name PROTO((tree, int));
-extern tree build_exception_variant PROTO((tree, tree));
-extern tree copy_template_template_parm PROTO((tree));
-extern void print_lang_statistics PROTO((void));
-extern tree array_type_nelts_total PROTO((tree));
-extern tree array_type_nelts_top PROTO((tree));
-extern tree break_out_target_exprs PROTO((tree));
-extern tree get_type_decl PROTO((tree));
-extern tree vec_binfo_member PROTO((tree, tree));
-extern tree hack_decl_function_context PROTO((tree));
-extern tree decl_namespace_context PROTO((tree));
-extern tree lvalue_type PROTO((tree));
-extern tree error_type PROTO((tree));
-extern tree build_ptr_wrapper PROTO((void *));
-extern tree build_expr_ptr_wrapper PROTO((void *));
-extern tree build_int_wrapper PROTO((int));
-extern tree build_srcloc_here PROTO((void));
-extern int varargs_function_p PROTO((tree));
-extern int really_overloaded_fn PROTO((tree));
-extern int cp_tree_equal PROTO((tree, tree));
-extern int can_free PROTO((struct obstack *, tree));
-extern tree no_linkage_check PROTO((tree));
-extern void debug_binfo PROTO((tree));
-extern tree build_dummy_object PROTO((tree));
-extern tree maybe_dummy_object PROTO((tree, tree *));
-extern int is_dummy_object PROTO((tree));
-typedef tree (*walk_tree_fn) PROTO((tree *, int *, void *));
-extern tree walk_tree PROTO((tree *, walk_tree_fn, void *));
-extern tree copy_tree_r PROTO((tree *, int *, void *));
-extern int cp_valid_lang_attribute PROTO((tree, tree, tree, tree));
-extern tree make_ptrmem_cst PROTO((tree, tree));
-extern tree cp_build_qualified_type_real PROTO((tree, int, int));
-extern void remap_save_expr PROTO((tree *, splay_tree, tree, int *));
+extern void init_tree PARAMS ((void));
+extern int pod_type_p PARAMS ((tree));
+extern void unshare_base_binfos PARAMS ((tree));
+extern int member_p PARAMS ((tree));
+extern cp_lvalue_kind real_lvalue_p PARAMS ((tree));
+extern tree build_min PARAMS ((enum tree_code, tree, ...));
+extern tree build_min_nt PARAMS ((enum tree_code, ...));
+extern int lvalue_p PARAMS ((tree));
+extern int lvalue_or_else PARAMS ((tree, const char *));
+extern tree build_cplus_new PARAMS ((tree, tree));
+extern tree get_target_expr PARAMS ((tree));
+extern tree break_out_cleanups PARAMS ((tree));
+extern tree break_out_calls PARAMS ((tree));
+extern tree build_cplus_method_type PARAMS ((tree, tree, tree));
+extern tree build_cplus_staticfn_type PARAMS ((tree, tree, tree));
+extern tree build_cplus_array_type PARAMS ((tree, tree));
+extern tree hash_tree_cons PARAMS ((tree, tree, tree));
+extern tree hash_tree_chain PARAMS ((tree, tree));
+extern tree hash_chainon PARAMS ((tree, tree));
+extern tree make_binfo PARAMS ((tree, tree, tree, tree));
+extern tree binfo_value PARAMS ((tree, tree));
+extern tree reverse_path PARAMS ((tree));
+extern int count_functions PARAMS ((tree));
+extern int is_overloaded_fn PARAMS ((tree));
+extern tree get_first_fn PARAMS ((tree));
+extern int bound_pmf_p PARAMS ((tree));
+extern tree ovl_cons PARAMS ((tree, tree));
+extern int ovl_member PARAMS ((tree, tree));
+extern tree build_overload PARAMS ((tree, tree));
+extern tree fnaddr_from_vtable_entry PARAMS ((tree));
+extern tree function_arg_chain PARAMS ((tree));
+extern int promotes_to_aggr_type PARAMS ((tree, enum tree_code));
+extern int is_aggr_type_2 PARAMS ((tree, tree));
+extern const char *lang_printable_name PARAMS ((tree, int));
+extern tree build_exception_variant PARAMS ((tree, tree));
+extern tree copy_template_template_parm PARAMS ((tree));
+extern void print_lang_statistics PARAMS ((void));
+extern tree array_type_nelts_total PARAMS ((tree));
+extern tree array_type_nelts_top PARAMS ((tree));
+extern tree break_out_target_exprs PARAMS ((tree));
+extern tree get_type_decl PARAMS ((tree));
+extern tree vec_binfo_member PARAMS ((tree, tree));
+extern tree hack_decl_function_context PARAMS ((tree));
+extern tree decl_namespace_context PARAMS ((tree));
+extern tree lvalue_type PARAMS ((tree));
+extern tree error_type PARAMS ((tree));
+extern tree build_ptr_wrapper PARAMS ((void *));
+extern tree build_expr_ptr_wrapper PARAMS ((void *));
+extern tree build_int_wrapper PARAMS ((int));
+extern tree build_srcloc_here PARAMS ((void));
+extern int varargs_function_p PARAMS ((tree));
+extern int really_overloaded_fn PARAMS ((tree));
+extern int cp_tree_equal PARAMS ((tree, tree));
+extern int can_free PARAMS ((struct obstack *, tree));
+extern tree no_linkage_check PARAMS ((tree));
+extern void debug_binfo PARAMS ((tree));
+extern tree build_dummy_object PARAMS ((tree));
+extern tree maybe_dummy_object PARAMS ((tree, tree *));
+extern int is_dummy_object PARAMS ((tree));
+typedef tree (*walk_tree_fn) PARAMS ((tree *, int *, void *));
+extern tree walk_tree PARAMS ((tree *, walk_tree_fn, void *));
+extern tree copy_tree_r PARAMS ((tree *, int *, void *));
+extern int cp_valid_lang_attribute PARAMS ((tree, tree, tree, tree));
+extern tree make_ptrmem_cst PARAMS ((tree, tree));
+extern tree cp_build_qualified_type_real PARAMS ((tree, int, int));
+extern void remap_save_expr PARAMS ((tree *, splay_tree, tree, int *));
#define cp_build_qualified_type(TYPE, QUALS) \
cp_build_qualified_type_real ((TYPE), (QUALS), /*complain=*/1)
-extern tree build_shared_int_cst PROTO((int));
+extern tree build_shared_int_cst PARAMS ((int));
/* in typeck.c */
-extern int string_conv_p PROTO((tree, tree, int));
-extern tree condition_conversion PROTO((tree));
-extern tree target_type PROTO((tree));
-extern tree require_complete_type PROTO((tree));
-extern tree complete_type PROTO((tree));
-extern tree complete_type_or_else PROTO((tree, tree));
-extern int type_unknown_p PROTO((tree));
-extern int fntype_p PROTO((tree));
-extern tree commonparms PROTO((tree, tree));
-extern tree original_type PROTO((tree));
-extern tree common_type PROTO((tree, tree));
-extern int comp_except_specs PROTO((tree, tree, int));
-extern int comptypes PROTO((tree, tree, int));
-extern int comp_target_types PROTO((tree, tree, int));
-extern int compparms PROTO((tree, tree));
-extern int comp_target_types PROTO((tree, tree, int));
-extern int comp_cv_qualification PROTO((tree, tree));
-extern int comp_cv_qual_signature PROTO((tree, tree));
-extern tree unsigned_type PROTO((tree));
-extern tree signed_type PROTO((tree));
-extern tree signed_or_unsigned_type PROTO((int, tree));
-extern tree expr_sizeof PROTO((tree));
-extern tree c_sizeof PROTO((tree));
-extern tree c_sizeof_nowarn PROTO((tree));
-extern tree c_alignof PROTO((tree));
-extern tree inline_conversion PROTO((tree));
-extern tree decay_conversion PROTO((tree));
-extern tree default_conversion PROTO((tree));
-extern tree build_object_ref PROTO((tree, tree, tree));
-extern tree build_component_ref_1 PROTO((tree, tree, int));
-extern tree build_component_ref PROTO((tree, tree, tree, int));
-extern tree build_x_component_ref PROTO((tree, tree, tree, int));
-extern tree build_x_indirect_ref PROTO((tree, const char *));
-extern tree build_indirect_ref PROTO((tree, const char *));
-extern tree build_array_ref PROTO((tree, tree));
-extern tree build_x_function_call PROTO((tree, tree, tree));
-extern tree get_member_function_from_ptrfunc PROTO((tree *, tree));
-extern tree build_function_call_real PROTO((tree, tree, int, int));
-extern tree build_function_call PROTO((tree, tree));
-extern tree build_function_call_maybe PROTO((tree, tree));
-extern tree convert_arguments PROTO((tree, tree, tree, int));
-extern tree build_x_binary_op PROTO((enum tree_code, tree, tree));
-extern tree build_binary_op PROTO((enum tree_code, tree, tree));
-extern tree build_binary_op_nodefault PROTO((enum tree_code, tree, tree, enum tree_code));
-extern tree build_x_unary_op PROTO((enum tree_code, tree));
-extern tree build_unary_op PROTO((enum tree_code, tree, int));
-extern tree unary_complex_lvalue PROTO((enum tree_code, tree));
-extern int mark_addressable PROTO((tree));
-extern tree build_x_conditional_expr PROTO((tree, tree, tree));
-extern tree build_conditional_expr PROTO((tree, tree, tree));
-extern tree build_x_compound_expr PROTO((tree));
-extern tree build_compound_expr PROTO((tree));
-extern tree build_static_cast PROTO((tree, tree));
-extern tree build_reinterpret_cast PROTO((tree, tree));
-extern tree build_const_cast PROTO((tree, tree));
-extern tree build_c_cast PROTO((tree, tree));
-extern tree build_x_modify_expr PROTO((tree, enum tree_code, tree));
-extern tree build_modify_expr PROTO((tree, enum tree_code, tree));
-extern tree convert_for_initialization PROTO((tree, tree, tree, int, const char *, tree, int));
-extern void c_expand_asm_operands PROTO((tree, tree, tree, tree, int, char *, int));
-extern void c_expand_return PROTO((tree));
-extern tree c_expand_start_case PROTO((tree));
-extern int comp_ptr_ttypes PROTO((tree, tree));
-extern int ptr_reasonably_similar PROTO((tree, tree));
-extern tree build_ptrmemfunc PROTO((tree, tree, int));
-extern tree strip_array_types PROTO((tree));
-extern int cp_type_quals PROTO((tree));
-extern int cp_has_mutable_p PROTO((tree));
-extern int at_least_as_qualified_p PROTO((tree, tree));
-extern int more_qualified_p PROTO((tree, tree));
-extern tree build_ptrmemfunc1 PROTO((tree, tree, tree, tree, tree));
-extern void expand_ptrmemfunc_cst PROTO((tree, tree *, tree *, tree *, tree *));
-extern tree delta2_from_ptrmemfunc PROTO((tree));
-extern tree pfn_from_ptrmemfunc PROTO((tree));
-extern tree type_after_usual_arithmetic_conversions PROTO((tree, tree));
-extern tree composite_pointer_type PROTO((tree, tree, tree, tree,
+extern int string_conv_p PARAMS ((tree, tree, int));
+extern tree condition_conversion PARAMS ((tree));
+extern tree target_type PARAMS ((tree));
+extern tree require_complete_type PARAMS ((tree));
+extern tree complete_type PARAMS ((tree));
+extern tree complete_type_or_else PARAMS ((tree, tree));
+extern int type_unknown_p PARAMS ((tree));
+extern int fntype_p PARAMS ((tree));
+extern tree commonparms PARAMS ((tree, tree));
+extern tree original_type PARAMS ((tree));
+extern tree common_type PARAMS ((tree, tree));
+extern int comp_except_specs PARAMS ((tree, tree, int));
+extern int comptypes PARAMS ((tree, tree, int));
+extern int comp_target_types PARAMS ((tree, tree, int));
+extern int compparms PARAMS ((tree, tree));
+extern int comp_target_types PARAMS ((tree, tree, int));
+extern int comp_cv_qualification PARAMS ((tree, tree));
+extern int comp_cv_qual_signature PARAMS ((tree, tree));
+extern tree unsigned_type PARAMS ((tree));
+extern tree signed_type PARAMS ((tree));
+extern tree signed_or_unsigned_type PARAMS ((int, tree));
+extern tree expr_sizeof PARAMS ((tree));
+extern tree c_sizeof PARAMS ((tree));
+extern tree c_sizeof_nowarn PARAMS ((tree));
+extern tree c_alignof PARAMS ((tree));
+extern tree inline_conversion PARAMS ((tree));
+extern tree decay_conversion PARAMS ((tree));
+extern tree default_conversion PARAMS ((tree));
+extern tree build_object_ref PARAMS ((tree, tree, tree));
+extern tree build_component_ref_1 PARAMS ((tree, tree, int));
+extern tree build_component_ref PARAMS ((tree, tree, tree, int));
+extern tree build_x_component_ref PARAMS ((tree, tree, tree, int));
+extern tree build_x_indirect_ref PARAMS ((tree, const char *));
+extern tree build_indirect_ref PARAMS ((tree, const char *));
+extern tree build_array_ref PARAMS ((tree, tree));
+extern tree build_x_function_call PARAMS ((tree, tree, tree));
+extern tree get_member_function_from_ptrfunc PARAMS ((tree *, tree));
+extern tree build_function_call_real PARAMS ((tree, tree, int, int));
+extern tree build_function_call PARAMS ((tree, tree));
+extern tree build_function_call_maybe PARAMS ((tree, tree));
+extern tree convert_arguments PARAMS ((tree, tree, tree, int));
+extern tree build_x_binary_op PARAMS ((enum tree_code, tree, tree));
+extern tree build_binary_op PARAMS ((enum tree_code, tree, tree));
+extern tree build_binary_op_nodefault PARAMS ((enum tree_code, tree, tree, enum tree_code));
+extern tree build_x_unary_op PARAMS ((enum tree_code, tree));
+extern tree build_unary_op PARAMS ((enum tree_code, tree, int));
+extern tree unary_complex_lvalue PARAMS ((enum tree_code, tree));
+extern int mark_addressable PARAMS ((tree));
+extern tree build_x_conditional_expr PARAMS ((tree, tree, tree));
+extern tree build_conditional_expr PARAMS ((tree, tree, tree));
+extern tree build_x_compound_expr PARAMS ((tree));
+extern tree build_compound_expr PARAMS ((tree));
+extern tree build_static_cast PARAMS ((tree, tree));
+extern tree build_reinterpret_cast PARAMS ((tree, tree));
+extern tree build_const_cast PARAMS ((tree, tree));
+extern tree build_c_cast PARAMS ((tree, tree));
+extern tree build_x_modify_expr PARAMS ((tree, enum tree_code, tree));
+extern tree build_modify_expr PARAMS ((tree, enum tree_code, tree));
+extern tree convert_for_initialization PARAMS ((tree, tree, tree, int, const char *, tree, int));
+extern void c_expand_asm_operands PARAMS ((tree, tree, tree, tree, int, char *, int));
+extern void c_expand_return PARAMS ((tree));
+extern tree c_expand_start_case PARAMS ((tree));
+extern int comp_ptr_ttypes PARAMS ((tree, tree));
+extern int ptr_reasonably_similar PARAMS ((tree, tree));
+extern tree build_ptrmemfunc PARAMS ((tree, tree, int));
+extern tree strip_array_types PARAMS ((tree));
+extern int cp_type_quals PARAMS ((tree));
+extern int cp_has_mutable_p PARAMS ((tree));
+extern int at_least_as_qualified_p PARAMS ((tree, tree));
+extern int more_qualified_p PARAMS ((tree, tree));
+extern tree build_ptrmemfunc1 PARAMS ((tree, tree, tree, tree, tree));
+extern void expand_ptrmemfunc_cst PARAMS ((tree, tree *, tree *, tree *, tree *));
+extern tree delta2_from_ptrmemfunc PARAMS ((tree));
+extern tree pfn_from_ptrmemfunc PARAMS ((tree));
+extern tree type_after_usual_arithmetic_conversions PARAMS ((tree, tree));
+extern tree composite_pointer_type PARAMS ((tree, tree, tree, tree,
const char*));
-extern tree check_return_expr PROTO((tree));
+extern tree check_return_expr PARAMS ((tree));
/* in typeck2.c */
-extern tree error_not_base_type PROTO((tree, tree));
-extern tree binfo_or_else PROTO((tree, tree));
-extern void readonly_error PROTO((tree, const char *, int));
-extern int abstract_virtuals_error PROTO((tree, tree));
-extern void incomplete_type_error PROTO((tree, tree));
-extern void my_friendly_abort PROTO((int))
+extern tree error_not_base_type PARAMS ((tree, tree));
+extern tree binfo_or_else PARAMS ((tree, tree));
+extern void readonly_error PARAMS ((tree, const char *, int));
+extern int abstract_virtuals_error PARAMS ((tree, tree));
+extern void incomplete_type_error PARAMS ((tree, tree));
+extern void my_friendly_abort PARAMS ((int))
ATTRIBUTE_NORETURN;
-extern void my_friendly_assert PROTO((int, int));
-extern tree store_init_value PROTO((tree, tree));
-extern tree digest_init PROTO((tree, tree, tree *));
-extern tree build_scoped_ref PROTO((tree, tree));
-extern tree build_x_arrow PROTO((tree));
-extern tree build_m_component_ref PROTO((tree, tree));
-extern tree build_functional_cast PROTO((tree, tree));
-extern char *enum_name_string PROTO((tree, tree));
-extern void report_case_error PROTO((int, tree, tree, tree));
-extern void check_for_new_type PROTO((const char *, flagged_type_tree));
-extern tree add_exception_specifier PROTO((tree, tree, int));
+extern void my_friendly_assert PARAMS ((int, int));
+extern tree store_init_value PARAMS ((tree, tree));
+extern tree digest_init PARAMS ((tree, tree, tree *));
+extern tree build_scoped_ref PARAMS ((tree, tree));
+extern tree build_x_arrow PARAMS ((tree));
+extern tree build_m_component_ref PARAMS ((tree, tree));
+extern tree build_functional_cast PARAMS ((tree, tree));
+extern char *enum_name_string PARAMS ((tree, tree));
+extern void report_case_error PARAMS ((int, tree, tree, tree));
+extern void check_for_new_type PARAMS ((const char *, flagged_type_tree));
+extern tree add_exception_specifier PARAMS ((tree, tree, int));
/* in xref.c */
-extern void GNU_xref_begin PROTO((const char *));
-extern void GNU_xref_end PROTO((int));
-extern void GNU_xref_file PROTO((const char *));
-extern void GNU_xref_start_scope PROTO((HOST_WIDE_INT));
-extern void GNU_xref_end_scope PROTO((HOST_WIDE_INT, HOST_WIDE_INT, int, int));
-extern void GNU_xref_ref PROTO((tree, const char *));
-extern void GNU_xref_decl PROTO((tree, tree));
-extern void GNU_xref_call PROTO((tree, const char *));
-extern void GNU_xref_function PROTO((tree, tree));
-extern void GNU_xref_assign PROTO((tree));
-extern void GNU_xref_hier PROTO((tree, tree, int, int, int));
-extern void GNU_xref_member PROTO((tree, tree));
+extern void GNU_xref_begin PARAMS ((const char *));
+extern void GNU_xref_end PARAMS ((int));
+extern void GNU_xref_file PARAMS ((const char *));
+extern void GNU_xref_start_scope PARAMS ((HOST_WIDE_INT));
+extern void GNU_xref_end_scope PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT, int, int));
+extern void GNU_xref_ref PARAMS ((tree, const char *));
+extern void GNU_xref_decl PARAMS ((tree, tree));
+extern void GNU_xref_call PARAMS ((tree, const char *));
+extern void GNU_xref_function PARAMS ((tree, tree));
+extern void GNU_xref_assign PARAMS ((tree));
+extern void GNU_xref_hier PARAMS ((tree, tree, int, int, int));
+extern void GNU_xref_member PARAMS ((tree, tree));
/* in dump.c */
-extern void dump_node_to_file PROTO ((tree, const char *));
+extern void dump_node_to_file PARAMS ((tree, const char *));
/* -- end of C++ */
diff --git a/gcc/cp/cvt.c b/gcc/cp/cvt.c
index bcc467a0b7d..22c3e3c5c35 100644
--- a/gcc/cp/cvt.c
+++ b/gcc/cp/cvt.c
@@ -34,9 +34,9 @@ Boston, MA 02111-1307, USA. */
#include "toplev.h"
#include "decl.h"
-static tree cp_convert_to_pointer PROTO((tree, tree));
-static tree convert_to_pointer_force PROTO((tree, tree));
-static tree build_up_reference PROTO((tree, tree, int));
+static tree cp_convert_to_pointer PARAMS ((tree, tree));
+static tree convert_to_pointer_force PARAMS ((tree, tree));
+static tree build_up_reference PARAMS ((tree, tree, int));
/* Change of width--truncation and extension of integers or reals--
is represented with NOP_EXPR. Proper functioning of many things
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index ed4a07183a2..72de97cb904 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -56,7 +56,7 @@ extern tree static_ctors, static_dtors;
extern tree global_namespace;
-extern int (*valid_lang_attribute) PROTO ((tree, tree, tree, tree));
+extern int (*valid_lang_attribute) PARAMS ((tree, tree, tree, tree));
/* Use garbage collection. */
@@ -99,91 +99,91 @@ int ggc_p = 1;
#define WCHAR_TYPE "int"
#endif
-static tree grokparms PROTO((tree, int));
-static const char *redeclaration_error_message PROTO((tree, tree));
+static tree grokparms PARAMS ((tree, int));
+static const char *redeclaration_error_message PARAMS ((tree, tree));
-static void push_binding_level PROTO((struct binding_level *, int,
+static void push_binding_level PARAMS ((struct binding_level *, int,
int));
-static void pop_binding_level PROTO((void));
-static void suspend_binding_level PROTO((void));
-static void resume_binding_level PROTO((struct binding_level *));
-static struct binding_level *make_binding_level PROTO((void));
-static void declare_namespace_level PROTO((void));
-static void signal_catch PROTO((int)) ATTRIBUTE_NORETURN;
-static void storedecls PROTO((tree));
-static void require_complete_types_for_parms PROTO((tree));
-static void push_overloaded_decl_1 PROTO((tree));
-static int ambi_op_p PROTO((tree));
-static int unary_op_p PROTO((tree));
-static tree store_bindings PROTO((tree, tree));
-static tree lookup_tag_reverse PROTO((tree, tree));
-static tree obscure_complex_init PROTO((tree, tree));
-static tree maybe_build_cleanup_1 PROTO((tree, tree));
-static tree lookup_name_real PROTO((tree, int, int, int));
-static void warn_extern_redeclared_static PROTO((tree, tree));
-static void grok_reference_init PROTO((tree, tree, tree));
-static tree grokfndecl PROTO((tree, tree, tree, tree, int,
+static void pop_binding_level PARAMS ((void));
+static void suspend_binding_level PARAMS ((void));
+static void resume_binding_level PARAMS ((struct binding_level *));
+static struct binding_level *make_binding_level PARAMS ((void));
+static void declare_namespace_level PARAMS ((void));
+static void signal_catch PARAMS ((int)) ATTRIBUTE_NORETURN;
+static void storedecls PARAMS ((tree));
+static void require_complete_types_for_parms PARAMS ((tree));
+static void push_overloaded_decl_1 PARAMS ((tree));
+static int ambi_op_p PARAMS ((tree));
+static int unary_op_p PARAMS ((tree));
+static tree store_bindings PARAMS ((tree, tree));
+static tree lookup_tag_reverse PARAMS ((tree, tree));
+static tree obscure_complex_init PARAMS ((tree, tree));
+static tree maybe_build_cleanup_1 PARAMS ((tree, tree));
+static tree lookup_name_real PARAMS ((tree, int, int, int));
+static void warn_extern_redeclared_static PARAMS ((tree, tree));
+static void grok_reference_init PARAMS ((tree, tree, tree));
+static tree grokfndecl PARAMS ((tree, tree, tree, tree, int,
enum overload_flags, tree,
tree, int, int, int, int, int, int, tree));
-static tree grokvardecl PROTO((tree, tree, RID_BIT_TYPE *, int, int, tree));
-static tree lookup_tag PROTO((enum tree_code, tree,
+static tree grokvardecl PARAMS ((tree, tree, RID_BIT_TYPE *, int, int, tree));
+static tree lookup_tag PARAMS ((enum tree_code, tree,
struct binding_level *, int));
static void set_identifier_type_value_with_scope
- PROTO((tree, tree, struct binding_level *));
-static void record_builtin_type PROTO((enum rid, const char *, tree));
-static void record_unknown_type PROTO((tree, const char *));
-static int member_function_or_else PROTO((tree, tree, enum overload_flags));
-static void bad_specifiers PROTO((tree, const char *, int, int, int, int,
+ PARAMS ((tree, tree, struct binding_level *));
+static void record_builtin_type PARAMS ((enum rid, const char *, tree));
+static void record_unknown_type PARAMS ((tree, const char *));
+static int member_function_or_else PARAMS ((tree, tree, enum overload_flags));
+static void bad_specifiers PARAMS ((tree, const char *, int, int, int, int,
int));
-static void lang_print_error_function PROTO((const char *));
-static tree maybe_process_template_type_declaration PROTO((tree, int, struct binding_level*));
-static void check_for_uninitialized_const_var PROTO((tree));
-static unsigned long typename_hash PROTO((hash_table_key));
-static boolean typename_compare PROTO((hash_table_key, hash_table_key));
-static void push_binding PROTO((tree, tree, struct binding_level*));
-static int add_binding PROTO((tree, tree));
-static void pop_binding PROTO((tree, tree));
-static tree local_variable_p_walkfn PROTO((tree *, int *, void *));
-static tree find_binding PROTO((tree, tree));
-static tree select_decl PROTO((tree, int));
-static int lookup_flags PROTO((int, int));
-static tree qualify_lookup PROTO((tree, int));
-static tree record_builtin_java_type PROTO((const char *, int));
-static const char *tag_name PROTO((enum tag_types code));
-static void find_class_binding_level PROTO((void));
-static struct binding_level *innermost_nonclass_level PROTO((void));
-static void warn_about_implicit_typename_lookup PROTO((tree, tree));
-static int walk_namespaces_r PROTO((tree, walk_namespaces_fn, void *));
-static int walk_globals_r PROTO((tree, void *));
-static void add_decl_to_level PROTO((tree, struct binding_level *));
-static tree make_label_decl PROTO((tree, int));
-static void pop_label PROTO((tree));
-static void pop_labels PROTO((tree));
-static void maybe_deduce_size_from_array_init PROTO((tree, tree));
-static void layout_var_decl PROTO((tree));
-static void maybe_commonize_var PROTO((tree));
-static tree check_initializer PROTO((tree, tree));
-static void make_rtl_for_nonlocal_decl PROTO((tree, tree, const char *));
-static void push_cp_function_context PROTO((struct function *));
-static void pop_cp_function_context PROTO((struct function *));
-static void mark_binding_level PROTO((void *));
-static void mark_cp_function_context PROTO((struct function *));
-static void mark_saved_scope PROTO((void *));
-static void mark_lang_function PROTO((struct language_function *));
-static void mark_stmt_tree PROTO((struct stmt_tree *));
-static void save_function_data PROTO((tree));
-static void check_function_type PROTO((tree));
-static void destroy_local_var PROTO((tree));
-static void finish_constructor_body PROTO((void));
-static void finish_destructor_body PROTO((void));
-static tree create_array_type_for_decl PROTO((tree, tree, tree));
-static tree get_atexit_node PROTO((void));
-static tree get_dso_handle_node PROTO((void));
-static tree start_cleanup_fn PROTO((void));
-static void end_cleanup_fn PROTO((void));
+static void lang_print_error_function PARAMS ((const char *));
+static tree maybe_process_template_type_declaration PARAMS ((tree, int, struct binding_level*));
+static void check_for_uninitialized_const_var PARAMS ((tree));
+static unsigned long typename_hash PARAMS ((hash_table_key));
+static boolean typename_compare PARAMS ((hash_table_key, hash_table_key));
+static void push_binding PARAMS ((tree, tree, struct binding_level*));
+static int add_binding PARAMS ((tree, tree));
+static void pop_binding PARAMS ((tree, tree));
+static tree local_variable_p_walkfn PARAMS ((tree *, int *, void *));
+static tree find_binding PARAMS ((tree, tree));
+static tree select_decl PARAMS ((tree, int));
+static int lookup_flags PARAMS ((int, int));
+static tree qualify_lookup PARAMS ((tree, int));
+static tree record_builtin_java_type PARAMS ((const char *, int));
+static const char *tag_name PARAMS ((enum tag_types code));
+static void find_class_binding_level PARAMS ((void));
+static struct binding_level *innermost_nonclass_level PARAMS ((void));
+static void warn_about_implicit_typename_lookup PARAMS ((tree, tree));
+static int walk_namespaces_r PARAMS ((tree, walk_namespaces_fn, void *));
+static int walk_globals_r PARAMS ((tree, void *));
+static void add_decl_to_level PARAMS ((tree, struct binding_level *));
+static tree make_label_decl PARAMS ((tree, int));
+static void pop_label PARAMS ((tree));
+static void pop_labels PARAMS ((tree));
+static void maybe_deduce_size_from_array_init PARAMS ((tree, tree));
+static void layout_var_decl PARAMS ((tree));
+static void maybe_commonize_var PARAMS ((tree));
+static tree check_initializer PARAMS ((tree, tree));
+static void make_rtl_for_nonlocal_decl PARAMS ((tree, tree, const char *));
+static void push_cp_function_context PARAMS ((struct function *));
+static void pop_cp_function_context PARAMS ((struct function *));
+static void mark_binding_level PARAMS ((void *));
+static void mark_cp_function_context PARAMS ((struct function *));
+static void mark_saved_scope PARAMS ((void *));
+static void mark_lang_function PARAMS ((struct language_function *));
+static void mark_stmt_tree PARAMS ((struct stmt_tree *));
+static void save_function_data PARAMS ((tree));
+static void check_function_type PARAMS ((tree));
+static void destroy_local_var PARAMS ((tree));
+static void finish_constructor_body PARAMS ((void));
+static void finish_destructor_body PARAMS ((void));
+static tree create_array_type_for_decl PARAMS ((tree, tree, tree));
+static tree get_atexit_node PARAMS ((void));
+static tree get_dso_handle_node PARAMS ((void));
+static tree start_cleanup_fn PARAMS ((void));
+static void end_cleanup_fn PARAMS ((void));
#if defined (DEBUG_CP_BINDING_LEVELS)
-static void indent PROTO((void));
+static void indent PARAMS ((void));
#endif
/* Erroneous argument lists can use this *IFF* they do not modify it. */
@@ -536,7 +536,7 @@ indent ()
}
#endif /* defined(DEBUG_CP_BINDING_LEVELS) */
-static tree pushdecl_with_scope PROTO((tree, struct binding_level *));
+static tree pushdecl_with_scope PARAMS ((tree, struct binding_level *));
static void
push_binding_level (newlevel, tag_transparent, keep)
@@ -6404,7 +6404,7 @@ tree
define_function (name, type, pfn, library_name)
const char *name;
tree type;
- void (*pfn) PROTO((tree));
+ void (*pfn) PARAMS ((tree));
const char *library_name;
{
tree decl = build_lang_decl (FUNCTION_DECL, get_identifier (name), type);
@@ -6439,7 +6439,7 @@ builtin_function (name, type, code, class, libname)
enum built_in_class class;
const char *libname;
{
- tree decl = define_function (name, type, (void (*) PROTO((tree)))pushdecl,
+ tree decl = define_function (name, type, (void (*) PARAMS ((tree)))pushdecl,
libname);
DECL_BUILT_IN_CLASS (decl) = class;
DECL_FUNCTION_CODE (decl) = code;
diff --git a/gcc/cp/decl.h b/gcc/cp/decl.h
index d6c376c39bf..c5417d1ea48 100644
--- a/gcc/cp/decl.h
+++ b/gcc/cp/decl.h
@@ -1,5 +1,5 @@
/* Variables and structures for declaration processing.
- Copyright (C) 1993 Free Software Foundation, Inc.
+ Copyright (C) 1993, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@@ -31,7 +31,7 @@ enum decl_context
};
/* We need this in here to get the decl_context definition. */
-extern tree grokdeclarator PROTO((tree, tree, enum decl_context, int, tree));
+extern tree grokdeclarator PARAMS ((tree, tree, enum decl_context, int, tree));
/* Parsing a function declarator leaves a list of parameter names
or a chain or parameter decls here. */
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index 56283c88fbe..619696380f3 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -60,36 +60,36 @@ typedef struct priority_info_s {
int destructions_p;
} *priority_info;
-static tree get_sentry PROTO((tree));
-static void mark_vtable_entries PROTO((tree));
-static void grok_function_init PROTO((tree, tree));
-static int finish_vtable_vardecl PROTO((tree *, void *));
-static int prune_vtable_vardecl PROTO((tree *, void *));
-static int is_namespace_ancestor PROTO((tree, tree));
-static void add_using_namespace PROTO((tree, tree, int));
-static tree ambiguous_decl PROTO((tree, tree, tree,int));
-static tree build_anon_union_vars PROTO((tree, tree*, int, int));
-static int acceptable_java_type PROTO((tree));
-static void output_vtable_inherit PROTO((tree));
-static tree start_objects PROTO((int, int));
-static void finish_objects PROTO((int, int, tree));
-static tree merge_functions PROTO((tree, tree));
-static tree decl_namespace PROTO((tree));
-static tree validate_nonmember_using_decl PROTO((tree, tree *, tree *));
-static void do_nonmember_using_decl PROTO((tree, tree, tree, tree,
+static tree get_sentry PARAMS ((tree));
+static void mark_vtable_entries PARAMS ((tree));
+static void grok_function_init PARAMS ((tree, tree));
+static int finish_vtable_vardecl PARAMS ((tree *, void *));
+static int prune_vtable_vardecl PARAMS ((tree *, void *));
+static int is_namespace_ancestor PARAMS ((tree, tree));
+static void add_using_namespace PARAMS ((tree, tree, int));
+static tree ambiguous_decl PARAMS ((tree, tree, tree,int));
+static tree build_anon_union_vars PARAMS ((tree, tree*, int, int));
+static int acceptable_java_type PARAMS ((tree));
+static void output_vtable_inherit PARAMS ((tree));
+static tree start_objects PARAMS ((int, int));
+static void finish_objects PARAMS ((int, int, tree));
+static tree merge_functions PARAMS ((tree, tree));
+static tree decl_namespace PARAMS ((tree));
+static tree validate_nonmember_using_decl PARAMS ((tree, tree *, tree *));
+static void do_nonmember_using_decl PARAMS ((tree, tree, tree, tree,
tree *, tree *));
-static tree start_static_storage_duration_function PROTO((void));
-static void finish_static_storage_duration_function PROTO((tree));
-static priority_info get_priority_info PROTO((int));
-static void do_static_initialization PROTO((tree, tree));
-static void do_static_destruction PROTO((tree));
-static tree start_static_initialization_or_destruction PROTO((tree, int));
-static void finish_static_initialization_or_destruction PROTO((tree));
-static void generate_ctor_or_dtor_function PROTO((int, int));
+static tree start_static_storage_duration_function PARAMS ((void));
+static void finish_static_storage_duration_function PARAMS ((tree));
+static priority_info get_priority_info PARAMS ((int));
+static void do_static_initialization PARAMS ((tree, tree));
+static void do_static_destruction PARAMS ((tree));
+static tree start_static_initialization_or_destruction PARAMS ((tree, int));
+static void finish_static_initialization_or_destruction PARAMS ((tree));
+static void generate_ctor_or_dtor_function PARAMS ((int, int));
static int generate_ctor_and_dtor_functions_for_priority
- PROTO((splay_tree_node, void *));
-static tree prune_vars_needing_no_initialization PROTO((tree));
-static void write_out_vars PROTO((tree));
+ PARAMS ((splay_tree_node, void *));
+static tree prune_vars_needing_no_initialization PARAMS ((tree));
+static void write_out_vars PARAMS ((tree));
extern int current_class_depth;
@@ -489,7 +489,7 @@ int flag_permissive;
/* If this variable is defined to a non-NULL value, it will be called
after the file has been completely parsed. */
-void (*back_end_hook) PROTO((tree));
+void (*back_end_hook) PARAMS ((tree));
/* Table of language-dependent -f options.
STRING is the option name. VARIABLE is the address of the variable.
@@ -4527,13 +4527,13 @@ struct arg_lookup
tree functions;
};
-static int arg_assoc PROTO((struct arg_lookup*, tree));
-static int arg_assoc_args PROTO((struct arg_lookup*, tree));
-static int arg_assoc_type PROTO((struct arg_lookup*, tree));
-static int add_function PROTO((struct arg_lookup *, tree));
-static int arg_assoc_namespace PROTO((struct arg_lookup *, tree));
-static int arg_assoc_class PROTO((struct arg_lookup *, tree));
-static int arg_assoc_template_arg PROTO((struct arg_lookup*, tree));
+static int arg_assoc PARAMS ((struct arg_lookup*, tree));
+static int arg_assoc_args PARAMS ((struct arg_lookup*, tree));
+static int arg_assoc_type PARAMS ((struct arg_lookup*, tree));
+static int add_function PARAMS ((struct arg_lookup *, tree));
+static int arg_assoc_namespace PARAMS ((struct arg_lookup *, tree));
+static int arg_assoc_class PARAMS ((struct arg_lookup *, tree));
+static int arg_assoc_template_arg PARAMS ((struct arg_lookup*, tree));
/* Add a function to the lookup structure.
Returns 1 on error. */
diff --git a/gcc/cp/dump.c b/gcc/cp/dump.c
index 379ad831407..34444bb8a63 100644
--- a/gcc/cp/dump.c
+++ b/gcc/cp/dump.c
@@ -71,19 +71,19 @@ typedef struct dump_info
splay_tree nodes;
} *dump_info_p;
-static unsigned int queue PROTO ((dump_info_p, tree, int));
-static void dump_index PROTO ((dump_info_p, unsigned int));
-static void queue_and_dump_index PROTO ((dump_info_p, const char *, tree, int));
-static void queue_and_dump_type PROTO ((dump_info_p, tree));
-static void dequeue_and_dump PROTO ((dump_info_p));
-static void dump_new_line PROTO ((dump_info_p));
-static void dump_maybe_newline PROTO ((dump_info_p));
-static void dump_int PROTO ((dump_info_p, const char *, int));
-static void dump_string PROTO ((dump_info_p, const char *));
-static void dump_string_field PROTO ((dump_info_p, const char *, const char *));
-static void dump_node PROTO ((tree, FILE *));
-static void dump_stmt PROTO ((dump_info_p, tree));
-static void dump_next_stmt PROTO ((dump_info_p, tree));
+static unsigned int queue PARAMS ((dump_info_p, tree, int));
+static void dump_index PARAMS ((dump_info_p, unsigned int));
+static void queue_and_dump_index PARAMS ((dump_info_p, const char *, tree, int));
+static void queue_and_dump_type PARAMS ((dump_info_p, tree));
+static void dequeue_and_dump PARAMS ((dump_info_p));
+static void dump_new_line PARAMS ((dump_info_p));
+static void dump_maybe_newline PARAMS ((dump_info_p));
+static void dump_int PARAMS ((dump_info_p, const char *, int));
+static void dump_string PARAMS ((dump_info_p, const char *));
+static void dump_string_field PARAMS ((dump_info_p, const char *, const char *));
+static void dump_node PARAMS ((tree, FILE *));
+static void dump_stmt PARAMS ((dump_info_p, tree));
+static void dump_next_stmt PARAMS ((dump_info_p, tree));
/* Add T to the end of the queue of nodes to dump. Returns the index
assigned to T. */
diff --git a/gcc/cp/errfn.c b/gcc/cp/errfn.c
index cc9f39bead1..ff2fb31e3e5 100644
--- a/gcc/cp/errfn.c
+++ b/gcc/cp/errfn.c
@@ -1,5 +1,6 @@
/* Provide a call-back mechanism for handling error output.
- Copyright (C) 1993, 94-98, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1993, 94, 95, 96, 97, 98, 99, 2000
+ Free Software Foundation, Inc.
Contributed by Jason Merrill (jason@cygnus.com)
This file is part of GNU CC.
@@ -30,7 +31,7 @@ Boston, MA 02111-1307, USA. */
with all memory management; the functions in this file will not free
the char*s returned. See error.c for an example use of this code. */
-typedef const char *cp_printer PROTO((tree, int));
+typedef const char *cp_printer PARAMS ((tree, int));
extern cp_printer * cp_printers[256];
/* Whether or not we should try to be quiet for errors and warnings; this is
@@ -40,7 +41,7 @@ int cp_silent = 0;
typedef void errorfn (); /* deliberately vague */
-static void cp_thing PROTO ((errorfn *, int, const char *, va_list));
+static void cp_thing PARAMS ((errorfn *, int, const char *, va_list));
#define STRDUP(f) (ap = (char *) alloca (strlen (f) +1), strcpy (ap, (f)), ap)
@@ -190,7 +191,7 @@ cp_thing (errfn, atarg1, format, ap)
}
void
-cp_error VPROTO((const char *format, ...))
+cp_error VPARAMS ((const char *format, ...))
{
#ifndef ANSI_PROTOTYPES
char *format;
@@ -209,7 +210,7 @@ cp_error VPROTO((const char *format, ...))
}
void
-cp_warning VPROTO((const char *format, ...))
+cp_warning VPARAMS ((const char *format, ...))
{
#ifndef ANSI_PROTOTYPES
char *format;
@@ -228,7 +229,7 @@ cp_warning VPROTO((const char *format, ...))
}
void
-cp_pedwarn VPROTO((const char *format, ...))
+cp_pedwarn VPARAMS ((const char *format, ...))
{
#ifndef ANSI_PROTOTYPES
char *format;
@@ -247,7 +248,7 @@ cp_pedwarn VPROTO((const char *format, ...))
}
void
-cp_compiler_error VPROTO((const char *format, ...))
+cp_compiler_error VPARAMS ((const char *format, ...))
{
#ifndef ANSI_PROTOTYPES
char *format;
@@ -277,7 +278,7 @@ cp_deprecated (msg)
}
void
-cp_sprintf VPROTO((const char *format, ...))
+cp_sprintf VPARAMS ((const char *format, ...))
{
#ifndef ANSI_PROTOTYPES
char *format;
@@ -295,7 +296,7 @@ cp_sprintf VPROTO((const char *format, ...))
}
void
-cp_error_at VPROTO((const char *format, ...))
+cp_error_at VPARAMS ((const char *format, ...))
{
#ifndef ANSI_PROTOTYPES
char *format;
@@ -314,7 +315,7 @@ cp_error_at VPROTO((const char *format, ...))
}
void
-cp_warning_at VPROTO((const char *format, ...))
+cp_warning_at VPARAMS ((const char *format, ...))
{
#ifndef ANSI_PROTOTYPES
char *format;
@@ -333,7 +334,7 @@ cp_warning_at VPROTO((const char *format, ...))
}
void
-cp_pedwarn_at VPROTO((const char *format, ...))
+cp_pedwarn_at VPARAMS ((const char *format, ...))
{
#ifndef ANSI_PROTOTYPES
char *format;
diff --git a/gcc/cp/error.c b/gcc/cp/error.c
index f76b4da772c..d0196f58f7d 100644
--- a/gcc/cp/error.c
+++ b/gcc/cp/error.c
@@ -1,6 +1,7 @@
/* Call-backs for C++ error reporting.
This code is non-reentrant.
- Copyright (C) 1993, 94-97, 1998, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1993, 94, 95, 96, 97, 98, 99, 2000
+ Free Software Foundation, Inc.
This file is part of GNU CC.
@@ -57,44 +58,44 @@ static char *scratch_firstobj;
enum pad { none, before, after };
-static const char *args_to_string PROTO((tree, int));
-static const char *assop_to_string PROTO((enum tree_code, int));
-static const char *code_to_string PROTO((enum tree_code, int));
-static const char *cv_to_string PROTO((tree, int));
-static const char *decl_to_string PROTO((tree, int));
-static const char *expr_to_string PROTO((tree, int));
-static const char *fndecl_to_string PROTO((tree, int));
-static const char *language_to_string PROTO((enum languages, int));
-static const char *op_to_string PROTO((enum tree_code, int));
-static const char *parm_to_string PROTO((int, int));
-static const char *type_to_string PROTO((tree, int));
-
-static void dump_type PROTO((tree, enum tree_string_flags));
-static void dump_simple_decl PROTO((tree, tree, enum tree_string_flags));
-static void dump_decl PROTO((tree, enum tree_string_flags));
-static void dump_template_decl PROTO((tree, enum tree_string_flags));
-static void dump_function_decl PROTO((tree, enum tree_string_flags));
-static void dump_expr PROTO((tree, enum tree_string_flags));
-static void dump_unary_op PROTO((const char *, tree, enum tree_string_flags));
-static void dump_binary_op PROTO((const char *, tree, enum tree_string_flags));
-static void dump_aggr_type PROTO((tree, enum tree_string_flags));
-static enum pad dump_type_prefix PROTO((tree, enum tree_string_flags));
-static void dump_type_suffix PROTO((tree, enum tree_string_flags));
-static void dump_function_name PROTO((tree, enum tree_string_flags));
-static void dump_expr_list PROTO((tree, enum tree_string_flags));
-static void dump_global_iord PROTO((tree));
-static enum pad dump_qualifiers PROTO((tree, enum pad));
-static void dump_char PROTO((int));
-static void dump_parameters PROTO((tree, enum tree_string_flags));
-static void dump_exception_spec PROTO((tree, enum tree_string_flags));
-static const char *aggr_variety PROTO((tree));
-static tree ident_fndecl PROTO((tree));
-static void dump_template_argument PROTO((tree, enum tree_string_flags));
-static void dump_template_argument_list PROTO((tree, enum tree_string_flags));
-static void dump_template_parameter PROTO((tree, enum tree_string_flags));
-static void dump_template_bindings PROTO((tree, tree));
-static void dump_scope PROTO((tree, enum tree_string_flags));
-static void dump_template_parms PROTO((tree, int, enum tree_string_flags));
+static const char *args_to_string PARAMS ((tree, int));
+static const char *assop_to_string PARAMS ((enum tree_code, int));
+static const char *code_to_string PARAMS ((enum tree_code, int));
+static const char *cv_to_string PARAMS ((tree, int));
+static const char *decl_to_string PARAMS ((tree, int));
+static const char *expr_to_string PARAMS ((tree, int));
+static const char *fndecl_to_string PARAMS ((tree, int));
+static const char *language_to_string PARAMS ((enum languages, int));
+static const char *op_to_string PARAMS ((enum tree_code, int));
+static const char *parm_to_string PARAMS ((int, int));
+static const char *type_to_string PARAMS ((tree, int));
+
+static void dump_type PARAMS ((tree, enum tree_string_flags));
+static void dump_simple_decl PARAMS ((tree, tree, enum tree_string_flags));
+static void dump_decl PARAMS ((tree, enum tree_string_flags));
+static void dump_template_decl PARAMS ((tree, enum tree_string_flags));
+static void dump_function_decl PARAMS ((tree, enum tree_string_flags));
+static void dump_expr PARAMS ((tree, enum tree_string_flags));
+static void dump_unary_op PARAMS ((const char *, tree, enum tree_string_flags));
+static void dump_binary_op PARAMS ((const char *, tree, enum tree_string_flags));
+static void dump_aggr_type PARAMS ((tree, enum tree_string_flags));
+static enum pad dump_type_prefix PARAMS ((tree, enum tree_string_flags));
+static void dump_type_suffix PARAMS ((tree, enum tree_string_flags));
+static void dump_function_name PARAMS ((tree, enum tree_string_flags));
+static void dump_expr_list PARAMS ((tree, enum tree_string_flags));
+static void dump_global_iord PARAMS ((tree));
+static enum pad dump_qualifiers PARAMS ((tree, enum pad));
+static void dump_char PARAMS ((int));
+static void dump_parameters PARAMS ((tree, enum tree_string_flags));
+static void dump_exception_spec PARAMS ((tree, enum tree_string_flags));
+static const char *aggr_variety PARAMS ((tree));
+static tree ident_fndecl PARAMS ((tree));
+static void dump_template_argument PARAMS ((tree, enum tree_string_flags));
+static void dump_template_argument_list PARAMS ((tree, enum tree_string_flags));
+static void dump_template_parameter PARAMS ((tree, enum tree_string_flags));
+static void dump_template_bindings PARAMS ((tree, tree));
+static void dump_scope PARAMS ((tree, enum tree_string_flags));
+static void dump_template_parms PARAMS ((tree, int, enum tree_string_flags));
#define A args_to_string
#define C code_to_string
diff --git a/gcc/cp/except.c b/gcc/cp/except.c
index 363c4bff247..3a9f5b08aa0 100644
--- a/gcc/cp/except.c
+++ b/gcc/cp/except.c
@@ -1,5 +1,6 @@
/* Handle exceptional things in C++.
- Copyright (C) 1989, 92-97, 1998, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1989, 92, 93, 94, 95, 96, 97, 98, 99, 2000
+ Free Software Foundation, Inc.
Contributed by Michael Tiemann <tiemann@cygnus.com>
Rewritten by Mike Stump <mrs@cygnus.com>, based upon an
initial re-implementation courtesy Tad Hunt.
@@ -36,24 +37,24 @@ Boston, MA 02111-1307, USA. */
#include "toplev.h"
#include "eh-common.h"
-static void push_eh_cleanup PROTO((void));
-static tree build_eh_type_type PROTO((tree));
-static tree call_eh_info PROTO((void));
-static void push_eh_info PROTO((void));
-static tree get_eh_info PROTO((void));
-static tree get_eh_value PROTO((void));
+static void push_eh_cleanup PARAMS ((void));
+static tree build_eh_type_type PARAMS ((tree));
+static tree call_eh_info PARAMS ((void));
+static void push_eh_info PARAMS ((void));
+static tree get_eh_info PARAMS ((void));
+static tree get_eh_value PARAMS ((void));
#if 0
-static tree get_eh_type PROTO((void));
-static tree get_eh_caught PROTO((void));
-static tree get_eh_handlers PROTO((void));
+static tree get_eh_type PARAMS ((void));
+static tree get_eh_caught PARAMS ((void));
+static tree get_eh_handlers PARAMS ((void));
#endif
-static tree do_pop_exception PROTO((void));
-static tree build_eh_type_type_ref PROTO((tree));
-static tree build_terminate_handler PROTO((void));
-static tree alloc_eh_object PROTO((tree));
-static int complete_ptr_ref_or_void_ptr_p PROTO((tree, tree));
-static void initialize_handler_parm PROTO((tree));
-static tree expand_throw PROTO((tree));
+static tree do_pop_exception PARAMS ((void));
+static tree build_eh_type_type_ref PARAMS ((tree));
+static tree build_terminate_handler PARAMS ((void));
+static tree alloc_eh_object PARAMS ((tree));
+static int complete_ptr_ref_or_void_ptr_p PARAMS ((tree, tree));
+static void initialize_handler_parm PARAMS ((tree));
+static tree expand_throw PARAMS ((tree));
#if 0
/* This is the startup, and finish stuff per exception table. */
diff --git a/gcc/cp/expr.c b/gcc/cp/expr.c
index 32838f4af8f..1fcecff39aa 100644
--- a/gcc/cp/expr.c
+++ b/gcc/cp/expr.c
@@ -32,10 +32,10 @@ Boston, MA 02111-1307, USA. */
#include "tm_p.h"
#if 0
-static tree extract_aggr_init PROTO((tree, tree));
-static tree extract_scalar_init PROTO((tree, tree));
+static tree extract_aggr_init PARAMS ((tree, tree));
+static tree extract_scalar_init PARAMS ((tree, tree));
#endif
-static rtx cplus_expand_expr PROTO((tree, rtx, enum machine_mode,
+static rtx cplus_expand_expr PARAMS ((tree, rtx, enum machine_mode,
enum expand_modifier));
/* Hook used by output_constant to expand language-specific
diff --git a/gcc/cp/init.c b/gcc/cp/init.c
index 7d7c084aca9..ffc67f7fbde 100644
--- a/gcc/cp/init.c
+++ b/gcc/cp/init.c
@@ -33,22 +33,22 @@ Boston, MA 02111-1307, USA. */
#include "toplev.h"
#include "ggc.h"
-static void expand_aggr_vbase_init_1 PROTO((tree, tree, tree, tree));
-static void construct_virtual_bases PROTO((tree, tree, tree, tree, tree));
-static void expand_aggr_init_1 PROTO((tree, tree, tree, tree, int));
-static void expand_default_init PROTO((tree, tree, tree, tree, int));
-static tree build_vec_delete_1 PROTO((tree, tree, tree, tree, int));
-static void perform_member_init PROTO((tree, tree, tree, int));
-static void sort_base_init PROTO((tree, tree *, tree *));
-static tree build_builtin_delete_call PROTO((tree));
-static int member_init_ok_or_else PROTO((tree, tree, const char *));
-static void expand_virtual_init PROTO((tree, tree));
-static tree sort_member_init PROTO((tree));
-static tree initializing_context PROTO((tree));
-static tree build_java_class_ref PROTO((tree));
-static void expand_cleanup_for_base PROTO((tree, tree));
-static tree get_temp_regvar PROTO((tree, tree));
-static tree dfs_initialize_vtbl_ptrs PROTO((tree, void *));
+static void expand_aggr_vbase_init_1 PARAMS ((tree, tree, tree, tree));
+static void construct_virtual_bases PARAMS ((tree, tree, tree, tree, tree));
+static void expand_aggr_init_1 PARAMS ((tree, tree, tree, tree, int));
+static void expand_default_init PARAMS ((tree, tree, tree, tree, int));
+static tree build_vec_delete_1 PARAMS ((tree, tree, tree, tree, int));
+static void perform_member_init PARAMS ((tree, tree, tree, int));
+static void sort_base_init PARAMS ((tree, tree *, tree *));
+static tree build_builtin_delete_call PARAMS ((tree));
+static int member_init_ok_or_else PARAMS ((tree, tree, const char *));
+static void expand_virtual_init PARAMS ((tree, tree));
+static tree sort_member_init PARAMS ((tree));
+static tree initializing_context PARAMS ((tree));
+static tree build_java_class_ref PARAMS ((tree));
+static void expand_cleanup_for_base PARAMS ((tree, tree));
+static tree get_temp_regvar PARAMS ((tree, tree));
+static tree dfs_initialize_vtbl_ptrs PARAMS ((tree, void *));
/* Set up local variable for this file. MUST BE CALLED AFTER
INIT_DECL_PROCESSING. */
diff --git a/gcc/cp/input.c b/gcc/cp/input.c
index f8ab714aa83..c82fc8f417d 100644
--- a/gcc/cp/input.c
+++ b/gcc/cp/input.c
@@ -1,5 +1,6 @@
/* Input handling for G++.
- Copyright (C) 1992, 93-98, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99, 2000
+ Free Software Foundation, Inc.
Written by Ken Raeburn (raeburn@cygnus.com) while at Watchmaker Computing.
Enhanced by Michael Tiemann (tiemann@cygnus.com) to better support USE_CPPLIB
@@ -69,15 +70,15 @@ extern unsigned char *yy_cur, *yy_lim;
extern int yy_get_token ();
#endif
-extern void feed_input PROTO((char *, int, char *, int));
-extern void put_input PROTO((int));
-extern void put_back PROTO((int));
-extern int getch PROTO((void));
-extern int input_redirected PROTO((void));
+extern void feed_input PARAMS ((char *, int, char *, int));
+extern void put_input PARAMS ((int));
+extern void put_back PARAMS ((int));
+extern int getch PARAMS ((void));
+extern int input_redirected PARAMS ((void));
-static inline struct input_source * allocate_input PROTO((void));
-static inline void free_input PROTO((struct input_source *));
-static inline void end_input PROTO((void));
+static inline struct input_source * allocate_input PARAMS ((void));
+static inline void free_input PARAMS ((struct input_source *));
+static inline void end_input PARAMS ((void));
static inline struct input_source *
allocate_input ()
diff --git a/gcc/cp/lex.c b/gcc/cp/lex.c
index 918d05b6e4f..6bea2874206 100644
--- a/gcc/cp/lex.c
+++ b/gcc/cp/lex.c
@@ -48,47 +48,47 @@ Boston, MA 02111-1307, USA. */
#define obstack_chunk_alloc xmalloc
#define obstack_chunk_free free
-extern void yyprint PROTO((FILE *, int, YYSTYPE));
-
-static tree get_time_identifier PROTO((const char *));
-static int check_newline PROTO((void));
-static int whitespace_cr PROTO((int));
-static int skip_white_space PROTO((int));
-static void finish_defarg PROTO((void));
-static int my_get_run_time PROTO((void));
-static int interface_strcmp PROTO((const char *));
-static int readescape PROTO((int *));
-static char *extend_token_buffer PROTO((const char *));
-static void consume_string PROTO((struct obstack *, int));
-static void feed_defarg PROTO((tree, tree));
-static void store_pending_inline PROTO((tree, struct pending_inline *));
-static void reinit_parse_for_expr PROTO((struct obstack *));
-static int *init_cpp_parse PROTO((void));
-static void cp_pragma_interface PROTO((char *));
-static void cp_pragma_implementation PROTO ((char *));
-static int handle_cp_pragma PROTO((const char *));
+extern void yyprint PARAMS ((FILE *, int, YYSTYPE));
+
+static tree get_time_identifier PARAMS ((const char *));
+static int check_newline PARAMS ((void));
+static int whitespace_cr PARAMS ((int));
+static int skip_white_space PARAMS ((int));
+static void finish_defarg PARAMS ((void));
+static int my_get_run_time PARAMS ((void));
+static int interface_strcmp PARAMS ((const char *));
+static int readescape PARAMS ((int *));
+static char *extend_token_buffer PARAMS ((const char *));
+static void consume_string PARAMS ((struct obstack *, int));
+static void feed_defarg PARAMS ((tree, tree));
+static void store_pending_inline PARAMS ((tree, struct pending_inline *));
+static void reinit_parse_for_expr PARAMS ((struct obstack *));
+static int *init_cpp_parse PARAMS ((void));
+static void cp_pragma_interface PARAMS ((char *));
+static void cp_pragma_implementation PARAMS ((char *));
+static int handle_cp_pragma PARAMS ((const char *));
#ifdef HANDLE_GENERIC_PRAGMAS
-static int handle_generic_pragma PROTO((int));
+static int handle_generic_pragma PARAMS ((int));
#endif
#ifdef GATHER_STATISTICS
#ifdef REDUCE_LENGTH
-static int reduce_cmp PROTO((int *, int *));
-static int token_cmp PROTO((int *, int *));
+static int reduce_cmp PARAMS ((int *, int *));
+static int token_cmp PARAMS ((int *, int *));
#endif
#endif
-static void begin_definition_of_inclass_inline PROTO((struct pending_inline*));
-static void parse_float PROTO((PTR));
-static int is_global PROTO((tree));
-static void init_filename_times PROTO((void));
-static void extend_token_buffer_to PROTO((int));
+static void begin_definition_of_inclass_inline PARAMS ((struct pending_inline*));
+static void parse_float PARAMS ((PTR));
+static int is_global PARAMS ((tree));
+static void init_filename_times PARAMS ((void));
+static void extend_token_buffer_to PARAMS ((int));
#ifdef HANDLE_PRAGMA
-static int pragma_getc PROTO((void));
-static void pragma_ungetc PROTO((int));
+static int pragma_getc PARAMS ((void));
+static void pragma_ungetc PARAMS ((int));
#endif
-static int read_line_number PROTO((int *));
-static int token_getch PROTO ((void));
-static void token_put_back PROTO ((int));
-static void mark_impl_file_chain PROTO ((void *));
+static int read_line_number PARAMS ((int *));
+static int token_getch PARAMS ((void));
+static void token_put_back PARAMS ((int));
+static void mark_impl_file_chain PARAMS ((void *));
/* Given a file name X, return the nondirectory portion.
Keep in mind that X can be computed more than once. */
@@ -4851,7 +4851,7 @@ dump_time_statistics ()
}
void
-compiler_error VPROTO ((const char *msg, ...))
+compiler_error VPARAMS ((const char *msg, ...))
{
#ifndef ANSI_PROTOTYPES
const char *msg;
diff --git a/gcc/cp/lex.h b/gcc/cp/lex.h
index 337e55aa7ca..d2c9352fa9a 100644
--- a/gcc/cp/lex.h
+++ b/gcc/cp/lex.h
@@ -1,5 +1,5 @@
/* Define constants and variables for communication with parse.y.
- Copyright (C) 1987, 92-97, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1987, 92-97, 1998, 2000 Free Software Foundation, Inc.
Hacked by Michael Tiemann (tiemann@cygnus.com)
and by Brendan Kehoe (brendan@cygnus.com).
@@ -130,6 +130,6 @@ extern tree got_object;
Positive is push count, negative is pop count. */
extern int pending_lang_change;
-extern int yylex PROTO((void));
+extern int yylex PARAMS ((void));
extern struct lang_decl *free_lang_decl_chain;
diff --git a/gcc/cp/method.c b/gcc/cp/method.c
index 4d9988541af..b43cc60f469 100644
--- a/gcc/cp/method.c
+++ b/gcc/cp/method.c
@@ -65,39 +65,39 @@ struct pending_inline *pending_inlines;
static struct obstack scratch_obstack;
static char *scratch_firstobj;
-static void icat PROTO((HOST_WIDE_INT));
-static void dicat PROTO((HOST_WIDE_INT, HOST_WIDE_INT));
-static int old_backref_index PROTO((tree));
-static int flush_repeats PROTO((int, tree));
-static void build_overload_identifier PROTO((tree));
-static void build_overload_nested_name PROTO((tree));
-static void mangle_expression PROTO((tree));
-static void build_overload_int PROTO((tree, mangling_flags));
-static void build_overload_identifier PROTO((tree));
-static void build_qualified_name PROTO((tree));
-static void build_overload_value PROTO((tree, tree, mangling_flags));
-static void issue_nrepeats PROTO((int, tree));
-static char *build_mangled_name PROTO((tree,int,int));
-static void process_modifiers PROTO((tree));
-static void process_overload_item PROTO((tree,int));
-static void do_build_assign_ref PROTO((tree));
-static void do_build_copy_constructor PROTO((tree));
-static void build_template_template_parm_names PROTO((tree));
-static void build_template_parm_names PROTO((tree, tree));
-static void build_underscore_int PROTO((int));
-static void start_squangling PROTO((void));
-static void end_squangling PROTO((void));
-static int check_ktype PROTO((tree, int));
-static int issue_ktype PROTO((tree));
-static void build_overload_scope_ref PROTO((tree));
-static void build_mangled_template_parm_index PROTO((const char *, tree));
+static void icat PARAMS ((HOST_WIDE_INT));
+static void dicat PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT));
+static int old_backref_index PARAMS ((tree));
+static int flush_repeats PARAMS ((int, tree));
+static void build_overload_identifier PARAMS ((tree));
+static void build_overload_nested_name PARAMS ((tree));
+static void mangle_expression PARAMS ((tree));
+static void build_overload_int PARAMS ((tree, mangling_flags));
+static void build_overload_identifier PARAMS ((tree));
+static void build_qualified_name PARAMS ((tree));
+static void build_overload_value PARAMS ((tree, tree, mangling_flags));
+static void issue_nrepeats PARAMS ((int, tree));
+static char *build_mangled_name PARAMS ((tree,int,int));
+static void process_modifiers PARAMS ((tree));
+static void process_overload_item PARAMS ((tree,int));
+static void do_build_assign_ref PARAMS ((tree));
+static void do_build_copy_constructor PARAMS ((tree));
+static void build_template_template_parm_names PARAMS ((tree));
+static void build_template_parm_names PARAMS ((tree, tree));
+static void build_underscore_int PARAMS ((int));
+static void start_squangling PARAMS ((void));
+static void end_squangling PARAMS ((void));
+static int check_ktype PARAMS ((tree, int));
+static int issue_ktype PARAMS ((tree));
+static void build_overload_scope_ref PARAMS ((tree));
+static void build_mangled_template_parm_index PARAMS ((const char *, tree));
#if HOST_BITS_PER_WIDE_INT >= 64
-static void build_mangled_C9x_name PROTO((int));
+static void build_mangled_C9x_name PARAMS ((int));
#endif
-static int is_back_referenceable_type PROTO((tree));
-static int check_btype PROTO((tree));
-static void build_mangled_name_for_type PROTO((tree));
-static void build_mangled_name_for_type_with_Gcode PROTO((tree, int));
+static int is_back_referenceable_type PARAMS ((tree));
+static int check_btype PARAMS ((tree));
+static void build_mangled_name_for_type PARAMS ((tree));
+static void build_mangled_name_for_type_with_Gcode PARAMS ((tree, int));
# define OB_INIT() (scratch_firstobj ? (obstack_free (&scratch_obstack, scratch_firstobj), 0) : 0)
# define OB_PUTC(C) (obstack_1grow (&scratch_obstack, (C)))
diff --git a/gcc/cp/optimize.c b/gcc/cp/optimize.c
index f529e9d70a6..d97749d2634 100644
--- a/gcc/cp/optimize.c
+++ b/gcc/cp/optimize.c
@@ -65,17 +65,17 @@ typedef struct inline_data
/* Prototypes. */
-static tree initialize_inlined_parameters PROTO((inline_data *, tree, tree));
-static tree declare_return_variable PROTO((inline_data *, tree *));
-static tree copy_body_r PROTO((tree *, int *, void *));
-static tree copy_body PROTO((inline_data *));
-static tree expand_call_inline PROTO((tree *, int *, void *));
-static void expand_calls_inline PROTO((tree *, inline_data *));
-static int inlinable_function_p PROTO((tree, inline_data *));
-static tree remap_decl PROTO((tree, inline_data *));
-static void remap_block PROTO((tree, tree, inline_data *));
-static void copy_scope_stmt PROTO((tree *, int *, inline_data *));
-static tree calls_setjmp_r PROTO((tree *, int *, void *));
+static tree initialize_inlined_parameters PARAMS ((inline_data *, tree, tree));
+static tree declare_return_variable PARAMS ((inline_data *, tree *));
+static tree copy_body_r PARAMS ((tree *, int *, void *));
+static tree copy_body PARAMS ((inline_data *));
+static tree expand_call_inline PARAMS ((tree *, int *, void *));
+static void expand_calls_inline PARAMS ((tree *, inline_data *));
+static int inlinable_function_p PARAMS ((tree, inline_data *));
+static tree remap_decl PARAMS ((tree, inline_data *));
+static void remap_block PARAMS ((tree, tree, inline_data *));
+static void copy_scope_stmt PARAMS ((tree *, int *, inline_data *));
+static tree calls_setjmp_r PARAMS ((tree *, int *, void *));
/* Remap DECL during the copying of the BLOCK tree for the function.
DATA is really an `inline_data *'. */
diff --git a/gcc/cp/parse.c b/gcc/cp/parse.c
index 840b04cc76c..1d3f44a706d 100644
--- a/gcc/cp/parse.c
+++ b/gcc/cp/parse.c
@@ -127,8 +127,8 @@ extern int end_of_file;
error message if the user supplies an empty conditional expression. */
static const char *cond_stmt_keyword;
-static tree empty_parms PROTO((void));
-static void parse_decl PROTO((tree, tree, tree, int, tree *));
+static tree empty_parms PARAMS ((void));
+static void parse_decl PARAMS ((tree, tree, tree, int, tree *));
/* Nonzero if we have an `extern "C"' acting as an extern specifier. */
int have_extern_spec;
@@ -180,8 +180,8 @@ static tree current_enum_type;
/* Tell yyparse how to print a token's value, if yydebug is set. */
#define YYPRINT(FILE,YYCHAR,YYLVAL) yyprint(FILE,YYCHAR,YYLVAL)
-extern void yyprint PROTO((FILE *, int, YYSTYPE));
-extern tree combine_strings PROTO((tree));
+extern void yyprint PARAMS ((FILE *, int, YYSTYPE));
+extern tree combine_strings PARAMS ((tree));
static void
parse_decl (declarator, specs_attrs, attributes, initialized, decl)
diff --git a/gcc/cp/parse.y b/gcc/cp/parse.y
index 7a236e02b67..7aacbdd03ec 100644
--- a/gcc/cp/parse.y
+++ b/gcc/cp/parse.y
@@ -62,8 +62,8 @@ extern int end_of_file;
error message if the user supplies an empty conditional expression. */
static const char *cond_stmt_keyword;
-static tree empty_parms PROTO((void));
-static void parse_decl PROTO((tree, tree, tree, int, tree *));
+static tree empty_parms PARAMS ((void));
+static void parse_decl PARAMS ((tree, tree, tree, int, tree *));
/* Nonzero if we have an `extern "C"' acting as an extern specifier. */
int have_extern_spec;
@@ -311,8 +311,8 @@ static tree current_enum_type;
/* Tell yyparse how to print a token's value, if yydebug is set. */
#define YYPRINT(FILE,YYCHAR,YYLVAL) yyprint(FILE,YYCHAR,YYLVAL)
-extern void yyprint PROTO((FILE *, int, YYSTYPE));
-extern tree combine_strings PROTO((tree));
+extern void yyprint PARAMS ((FILE *, int, YYSTYPE));
+extern tree combine_strings PARAMS ((tree));
static void
parse_decl (declarator, specs_attrs, attributes, initialized, decl)
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index 701ec9bb097..b0b3289869f 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -45,7 +45,7 @@ Boston, MA 02111-1307, USA. */
/* The type of functions taking a tree, and some additional data, and
returning an int. */
-typedef int (*tree_fn_t) PROTO((tree, void*));
+typedef int (*tree_fn_t) PARAMS ((tree, void*));
extern struct obstack permanent_obstack;
@@ -87,77 +87,77 @@ static size_t inline_parm_levels_used;
#define GTB_IGNORE_TYPE 2 /* We don't need to try to unify the current
type with the desired type. */
-static int resolve_overloaded_unification PROTO((tree, tree, tree, tree,
+static int resolve_overloaded_unification PARAMS ((tree, tree, tree, tree,
unification_kind_t, int));
-static int try_one_overload PROTO((tree, tree, tree, tree, tree,
+static int try_one_overload PARAMS ((tree, tree, tree, tree, tree,
unification_kind_t, int));
-static int unify PROTO((tree, tree, tree, tree, int));
-static void add_pending_template PROTO((tree));
-static int push_tinst_level PROTO((tree));
-static tree classtype_mangled_name PROTO((tree));
-static char *mangle_class_name_for_template PROTO((char *, tree, tree));
-static tree tsubst_expr_values PROTO((tree, tree));
-static int list_eq PROTO((tree, tree));
-static tree get_class_bindings PROTO((tree, tree, tree));
-static tree coerce_template_parms PROTO((tree, tree, tree, int, int));
-static void tsubst_enum PROTO((tree, tree, tree));
-static tree add_to_template_args PROTO((tree, tree));
-static tree add_outermost_template_args PROTO((tree, tree));
-static void maybe_adjust_types_for_deduction PROTO((unification_kind_t, tree*,
+static int unify PARAMS ((tree, tree, tree, tree, int));
+static void add_pending_template PARAMS ((tree));
+static int push_tinst_level PARAMS ((tree));
+static tree classtype_mangled_name PARAMS ((tree));
+static char *mangle_class_name_for_template PARAMS ((char *, tree, tree));
+static tree tsubst_expr_values PARAMS ((tree, tree));
+static int list_eq PARAMS ((tree, tree));
+static tree get_class_bindings PARAMS ((tree, tree, tree));
+static tree coerce_template_parms PARAMS ((tree, tree, tree, int, int));
+static void tsubst_enum PARAMS ((tree, tree, tree));
+static tree add_to_template_args PARAMS ((tree, tree));
+static tree add_outermost_template_args PARAMS ((tree, tree));
+static void maybe_adjust_types_for_deduction PARAMS ((unification_kind_t, tree*,
tree*));
-static int type_unification_real PROTO((tree, tree, tree, tree,
+static int type_unification_real PARAMS ((tree, tree, tree, tree,
int, unification_kind_t, int));
-static void note_template_header PROTO((int));
-static tree maybe_fold_nontype_arg PROTO((tree));
-static tree convert_nontype_argument PROTO((tree, tree));
-static tree convert_template_argument PROTO ((tree, tree, tree, int,
+static void note_template_header PARAMS ((int));
+static tree maybe_fold_nontype_arg PARAMS ((tree));
+static tree convert_nontype_argument PARAMS ((tree, tree));
+static tree convert_template_argument PARAMS ((tree, tree, tree, int,
int , tree));
-static tree get_bindings_overload PROTO((tree, tree, tree));
-static int for_each_template_parm PROTO((tree, tree_fn_t, void*));
-static tree build_template_parm_index PROTO((int, int, int, tree, tree));
-static int inline_needs_template_parms PROTO((tree));
-static void push_inline_template_parms_recursive PROTO((tree, int));
-static tree retrieve_specialization PROTO((tree, tree));
-static tree retrieve_local_specialization PROTO((tree, tree));
-static tree register_specialization PROTO((tree, tree, tree));
-static tree register_local_specialization PROTO((tree, tree, tree));
-static int unregister_specialization PROTO((tree, tree));
-static tree reduce_template_parm_level PROTO((tree, tree, int));
-static tree build_template_decl PROTO((tree, tree));
-static int mark_template_parm PROTO((tree, void *));
-static tree tsubst_friend_function PROTO((tree, tree));
-static tree tsubst_friend_class PROTO((tree, tree));
-static tree get_bindings_real PROTO((tree, tree, tree, int));
-static int template_decl_level PROTO((tree));
-static tree maybe_get_template_decl_from_type_decl PROTO((tree));
-static int check_cv_quals_for_unify PROTO((int, tree, tree));
-static tree tsubst_template_arg_vector PROTO((tree, tree, int));
-static tree tsubst_template_parms PROTO((tree, tree, int));
-static void regenerate_decl_from_template PROTO((tree, tree));
-static tree most_specialized PROTO((tree, tree, tree));
-static tree most_specialized_class PROTO((tree, tree));
-static void set_mangled_name_for_template_decl PROTO((tree));
-static int template_class_depth_real PROTO((tree, int));
-static tree tsubst_aggr_type PROTO((tree, tree, int, tree, int));
-static tree tsubst_decl PROTO((tree, tree, tree, tree));
-static tree tsubst_arg_types PROTO((tree, tree, int, tree));
-static tree tsubst_function_type PROTO((tree, tree, int, tree));
-static void check_specialization_scope PROTO((void));
-static tree process_partial_specialization PROTO((tree));
-static void set_current_access_from_decl PROTO((tree));
-static void check_default_tmpl_args PROTO((tree, tree, int, int));
-static tree tsubst_call_declarator_parms PROTO((tree, tree, int, tree));
-static tree get_template_base_recursive PROTO((tree, tree,
+static tree get_bindings_overload PARAMS ((tree, tree, tree));
+static int for_each_template_parm PARAMS ((tree, tree_fn_t, void*));
+static tree build_template_parm_index PARAMS ((int, int, int, tree, tree));
+static int inline_needs_template_parms PARAMS ((tree));
+static void push_inline_template_parms_recursive PARAMS ((tree, int));
+static tree retrieve_specialization PARAMS ((tree, tree));
+static tree retrieve_local_specialization PARAMS ((tree, tree));
+static tree register_specialization PARAMS ((tree, tree, tree));
+static tree register_local_specialization PARAMS ((tree, tree, tree));
+static int unregister_specialization PARAMS ((tree, tree));
+static tree reduce_template_parm_level PARAMS ((tree, tree, int));
+static tree build_template_decl PARAMS ((tree, tree));
+static int mark_template_parm PARAMS ((tree, void *));
+static tree tsubst_friend_function PARAMS ((tree, tree));
+static tree tsubst_friend_class PARAMS ((tree, tree));
+static tree get_bindings_real PARAMS ((tree, tree, tree, int));
+static int template_decl_level PARAMS ((tree));
+static tree maybe_get_template_decl_from_type_decl PARAMS ((tree));
+static int check_cv_quals_for_unify PARAMS ((int, tree, tree));
+static tree tsubst_template_arg_vector PARAMS ((tree, tree, int));
+static tree tsubst_template_parms PARAMS ((tree, tree, int));
+static void regenerate_decl_from_template PARAMS ((tree, tree));
+static tree most_specialized PARAMS ((tree, tree, tree));
+static tree most_specialized_class PARAMS ((tree, tree));
+static void set_mangled_name_for_template_decl PARAMS ((tree));
+static int template_class_depth_real PARAMS ((tree, int));
+static tree tsubst_aggr_type PARAMS ((tree, tree, int, tree, int));
+static tree tsubst_decl PARAMS ((tree, tree, tree, tree));
+static tree tsubst_arg_types PARAMS ((tree, tree, int, tree));
+static tree tsubst_function_type PARAMS ((tree, tree, int, tree));
+static void check_specialization_scope PARAMS ((void));
+static tree process_partial_specialization PARAMS ((tree));
+static void set_current_access_from_decl PARAMS ((tree));
+static void check_default_tmpl_args PARAMS ((tree, tree, int, int));
+static tree tsubst_call_declarator_parms PARAMS ((tree, tree, int, tree));
+static tree get_template_base_recursive PARAMS ((tree, tree,
tree, tree, tree, int));
-static tree get_template_base PROTO((tree, tree, tree, tree));
-static tree try_class_unification PROTO((tree, tree, tree, tree));
-static int coerce_template_template_parms PROTO((tree, tree, int,
+static tree get_template_base PARAMS ((tree, tree, tree, tree));
+static tree try_class_unification PARAMS ((tree, tree, tree, tree));
+static int coerce_template_template_parms PARAMS ((tree, tree, int,
tree, tree));
-static tree determine_specialization PROTO((tree, tree, tree *, int));
-static int template_args_equal PROTO((tree, tree));
-static void print_template_context PROTO((int));
-static void tsubst_default_arguments PROTO((tree));
-static tree for_each_template_parm_r PROTO((tree *, int *, void *));
+static tree determine_specialization PARAMS ((tree, tree, tree *, int));
+static int template_args_equal PARAMS ((tree, tree));
+static void print_template_context PARAMS ((int));
+static void tsubst_default_arguments PARAMS ((tree));
+static tree for_each_template_parm_r PARAMS ((tree *, int *, void *));
/* Called once to initialize pt.c. */
diff --git a/gcc/cp/repo.c b/gcc/cp/repo.c
index 92597aa58f5..7812823d19a 100644
--- a/gcc/cp/repo.c
+++ b/gcc/cp/repo.c
@@ -1,5 +1,5 @@
/* Code to maintain a C++ template repository.
- Copyright (C) 1995, 96-97, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1995, 96-97, 1998, 2000 Free Software Foundation, Inc.
Contributed by Jason Merrill (jason@cygnus.com)
This file is part of GNU CC.
@@ -34,12 +34,12 @@ Boston, MA 02111-1307, USA. */
#include "toplev.h"
#include "ggc.h"
-static tree repo_get_id PROTO((tree));
-static char *extract_string PROTO((char **));
-static char *get_base_filename PROTO((const char *));
-static void open_repo_file PROTO((const char *));
-static char *afgets PROTO((FILE *));
-static void reopen_repo_file_for_write PROTO((void));
+static tree repo_get_id PARAMS ((tree));
+static char *extract_string PARAMS ((char **));
+static char *get_base_filename PARAMS ((const char *));
+static void open_repo_file PARAMS ((const char *));
+static char *afgets PARAMS ((FILE *));
+static void reopen_repo_file_for_write PARAMS ((void));
static tree pending_repo;
static tree original_repo;
diff --git a/gcc/cp/rtti.c b/gcc/cp/rtti.c
index 2341a229d26..e962b6a75fe 100644
--- a/gcc/cp/rtti.c
+++ b/gcc/cp/rtti.c
@@ -35,23 +35,23 @@ Boston, MA 02111-1307, USA. */
extern struct obstack permanent_obstack;
-static tree build_runtime_decl PROTO((const char *, tree));
-static tree build_headof_sub PROTO((tree));
-static tree build_headof PROTO((tree));
-static tree get_tinfo_var PROTO((tree));
-static tree ifnonnull PROTO((tree, tree));
-static tree tinfo_name PROTO((tree));
-static tree get_base_offset PROTO((tree, tree));
-static tree build_dynamic_cast_1 PROTO((tree, tree));
-static void expand_si_desc PROTO((tree, tree));
-static void expand_class_desc PROTO((tree, tree));
-static void expand_attr_desc PROTO((tree, tree));
-static void expand_ptr_desc PROTO((tree, tree));
-static void expand_generic_desc PROTO((tree, tree, const char *));
-static tree throw_bad_cast PROTO((void));
-static tree throw_bad_typeid PROTO((void));
-static tree get_tinfo_decl_dynamic PROTO((tree));
-static tree tinfo_from_decl PROTO((tree));
+static tree build_runtime_decl PARAMS ((const char *, tree));
+static tree build_headof_sub PARAMS ((tree));
+static tree build_headof PARAMS ((tree));
+static tree get_tinfo_var PARAMS ((tree));
+static tree ifnonnull PARAMS ((tree, tree));
+static tree tinfo_name PARAMS ((tree));
+static tree get_base_offset PARAMS ((tree, tree));
+static tree build_dynamic_cast_1 PARAMS ((tree, tree));
+static void expand_si_desc PARAMS ((tree, tree));
+static void expand_class_desc PARAMS ((tree, tree));
+static void expand_attr_desc PARAMS ((tree, tree));
+static void expand_ptr_desc PARAMS ((tree, tree));
+static void expand_generic_desc PARAMS ((tree, tree, const char *));
+static tree throw_bad_cast PARAMS ((void));
+static tree throw_bad_typeid PARAMS ((void));
+static tree get_tinfo_decl_dynamic PARAMS ((tree));
+static tree tinfo_from_decl PARAMS ((tree));
void
init_rtti_processing ()
diff --git a/gcc/cp/search.c b/gcc/cp/search.c
index 390c9747551..a2931424544 100644
--- a/gcc/cp/search.c
+++ b/gcc/cp/search.c
@@ -75,78 +75,78 @@ pop_stack_level (stack)
#define search_level stack_level
static struct search_level *search_stack;
-static tree next_baselink PROTO((tree));
-static tree get_vbase_1 PROTO((tree, tree, unsigned int *));
-static tree lookup_field_1 PROTO((tree, tree));
-static tree convert_pointer_to_single_level PROTO((tree, tree));
-static int lookup_fnfields_here PROTO((tree, tree));
-static int is_subobject_of_p PROTO((tree, tree));
-static int hides PROTO((tree, tree));
-static tree virtual_context PROTO((tree, tree, tree));
-static tree dfs_check_overlap PROTO((tree, void *));
-static tree dfs_no_overlap_yet PROTO((tree, void *));
+static tree next_baselink PARAMS ((tree));
+static tree get_vbase_1 PARAMS ((tree, tree, unsigned int *));
+static tree lookup_field_1 PARAMS ((tree, tree));
+static tree convert_pointer_to_single_level PARAMS ((tree, tree));
+static int lookup_fnfields_here PARAMS ((tree, tree));
+static int is_subobject_of_p PARAMS ((tree, tree));
+static int hides PARAMS ((tree, tree));
+static tree virtual_context PARAMS ((tree, tree, tree));
+static tree dfs_check_overlap PARAMS ((tree, void *));
+static tree dfs_no_overlap_yet PARAMS ((tree, void *));
static int get_base_distance_recursive
- PROTO((tree, int, int, int, int *, tree *, tree,
+ PARAMS ((tree, int, int, int, int *, tree *, tree,
int, int *, int, int));
-static int dynamic_cast_base_recurse PROTO((tree, tree, int, tree *));
+static int dynamic_cast_base_recurse PARAMS ((tree, tree, int, tree *));
static void expand_upcast_fixups
- PROTO((tree, tree, tree, tree, tree, tree, tree *));
+ PARAMS ((tree, tree, tree, tree, tree, tree, tree *));
static void fixup_virtual_upcast_offsets
- PROTO((tree, tree, int, int, tree, tree, tree, tree,
+ PARAMS ((tree, tree, int, int, tree, tree, tree, tree,
tree *));
-static tree marked_vtable_pathp PROTO((tree, void *));
-static tree unmarked_vtable_pathp PROTO((tree, void *));
-static tree marked_new_vtablep PROTO((tree, void *));
-static tree unmarked_new_vtablep PROTO((tree, void *));
-static tree marked_pushdecls_p PROTO((tree, void *));
-static tree unmarked_pushdecls_p PROTO((tree, void *));
+static tree marked_vtable_pathp PARAMS ((tree, void *));
+static tree unmarked_vtable_pathp PARAMS ((tree, void *));
+static tree marked_new_vtablep PARAMS ((tree, void *));
+static tree unmarked_new_vtablep PARAMS ((tree, void *));
+static tree marked_pushdecls_p PARAMS ((tree, void *));
+static tree unmarked_pushdecls_p PARAMS ((tree, void *));
#if 0
-static tree dfs_debug_unmarkedp PROTO((tree, void *));
-static tree dfs_debug_mark PROTO((tree, void *));
+static tree dfs_debug_unmarkedp PARAMS ((tree, void *));
+static tree dfs_debug_mark PARAMS ((tree, void *));
#endif
-static tree dfs_find_vbases PROTO((tree, void *));
-static tree dfs_clear_vbase_slots PROTO((tree, void *));
-static tree dfs_init_vbase_pointers PROTO((tree, void *));
-static tree dfs_get_vbase_types PROTO((tree, void *));
-static tree dfs_push_type_decls PROTO((tree, void *));
-static tree dfs_push_decls PROTO((tree, void *));
-static tree dfs_unuse_fields PROTO((tree, void *));
-static tree add_conversions PROTO((tree, void *));
-static tree get_virtuals_named_this PROTO((tree, tree));
-static tree get_virtual_destructor PROTO((tree, void *));
-static tree tree_has_any_destructor_p PROTO((tree, void *));
-static int covariant_return_p PROTO((tree, tree));
-static int check_final_overrider PROTO((tree, tree));
+static tree dfs_find_vbases PARAMS ((tree, void *));
+static tree dfs_clear_vbase_slots PARAMS ((tree, void *));
+static tree dfs_init_vbase_pointers PARAMS ((tree, void *));
+static tree dfs_get_vbase_types PARAMS ((tree, void *));
+static tree dfs_push_type_decls PARAMS ((tree, void *));
+static tree dfs_push_decls PARAMS ((tree, void *));
+static tree dfs_unuse_fields PARAMS ((tree, void *));
+static tree add_conversions PARAMS ((tree, void *));
+static tree get_virtuals_named_this PARAMS ((tree, tree));
+static tree get_virtual_destructor PARAMS ((tree, void *));
+static tree tree_has_any_destructor_p PARAMS ((tree, void *));
+static int covariant_return_p PARAMS ((tree, tree));
+static int check_final_overrider PARAMS ((tree, tree));
static struct search_level *push_search_level
- PROTO((struct stack_level *, struct obstack *));
+ PARAMS ((struct stack_level *, struct obstack *));
static struct search_level *pop_search_level
- PROTO((struct stack_level *));
+ PARAMS ((struct stack_level *));
static tree bfs_walk
- PROTO((tree, tree (*) (tree, void *), tree (*) (tree, void *),
+ PARAMS ((tree, tree (*) (tree, void *), tree (*) (tree, void *),
void *));
-static tree lookup_field_queue_p PROTO((tree, void *));
-static tree lookup_field_r PROTO((tree, void *));
-static tree get_virtuals_named_this_r PROTO ((tree, void *));
-static tree context_for_name_lookup PROTO ((tree));
-static tree canonical_binfo PROTO ((tree));
-static tree shared_marked_p PROTO ((tree, void *));
-static tree shared_unmarked_p PROTO ((tree, void *));
-static int dependent_base_p PROTO ((tree));
-static tree dfs_accessible_queue_p PROTO ((tree, void *));
-static tree dfs_accessible_p PROTO ((tree, void *));
-static tree dfs_access_in_type PROTO ((tree, void *));
-static tree access_in_type PROTO ((tree, tree));
-static tree dfs_canonical_queue PROTO ((tree, void *));
-static tree dfs_assert_unmarked_p PROTO ((tree, void *));
-static void assert_canonical_unmarked PROTO ((tree));
-static int protected_accessible_p PROTO ((tree, tree, tree, tree));
-static int friend_accessible_p PROTO ((tree, tree, tree, tree));
-static void setup_class_bindings PROTO ((tree, int));
-static int template_self_reference_p PROTO ((tree, tree));
-static void fixup_all_virtual_upcast_offsets PROTO ((tree, tree));
-static tree dfs_mark_primary_bases PROTO((tree, void *));
-static tree get_shared_vbase_if_not_primary PROTO((tree, void *));
-static tree dfs_find_vbase_instance PROTO((tree, void *));
+static tree lookup_field_queue_p PARAMS ((tree, void *));
+static tree lookup_field_r PARAMS ((tree, void *));
+static tree get_virtuals_named_this_r PARAMS ((tree, void *));
+static tree context_for_name_lookup PARAMS ((tree));
+static tree canonical_binfo PARAMS ((tree));
+static tree shared_marked_p PARAMS ((tree, void *));
+static tree shared_unmarked_p PARAMS ((tree, void *));
+static int dependent_base_p PARAMS ((tree));
+static tree dfs_accessible_queue_p PARAMS ((tree, void *));
+static tree dfs_accessible_p PARAMS ((tree, void *));
+static tree dfs_access_in_type PARAMS ((tree, void *));
+static tree access_in_type PARAMS ((tree, tree));
+static tree dfs_canonical_queue PARAMS ((tree, void *));
+static tree dfs_assert_unmarked_p PARAMS ((tree, void *));
+static void assert_canonical_unmarked PARAMS ((tree));
+static int protected_accessible_p PARAMS ((tree, tree, tree, tree));
+static int friend_accessible_p PARAMS ((tree, tree, tree, tree));
+static void setup_class_bindings PARAMS ((tree, int));
+static int template_self_reference_p PARAMS ((tree, tree));
+static void fixup_all_virtual_upcast_offsets PARAMS ((tree, tree));
+static tree dfs_mark_primary_bases PARAMS ((tree, void *));
+static tree get_shared_vbase_if_not_primary PARAMS ((tree, void *));
+static tree dfs_find_vbase_instance PARAMS ((tree, void *));
/* Allocate a level of searching. */
@@ -1707,8 +1707,8 @@ lookup_fnfields_1 (type, name)
static tree
bfs_walk (binfo, fn, qfn, data)
tree binfo;
- tree (*fn) PROTO((tree, void *));
- tree (*qfn) PROTO((tree, void *));
+ tree (*fn) PARAMS ((tree, void *));
+ tree (*qfn) PARAMS ((tree, void *));
void *data;
{
size_t head;
@@ -1773,9 +1773,9 @@ bfs_walk (binfo, fn, qfn, data)
tree
dfs_walk_real (binfo, prefn, postfn, qfn, data)
tree binfo;
- tree (*prefn) PROTO((tree, void *));
- tree (*postfn) PROTO((tree, void *));
- tree (*qfn) PROTO((tree, void *));
+ tree (*prefn) PARAMS ((tree, void *));
+ tree (*postfn) PARAMS ((tree, void *));
+ tree (*qfn) PARAMS ((tree, void *));
void *data;
{
int i;
@@ -1822,8 +1822,8 @@ dfs_walk_real (binfo, prefn, postfn, qfn, data)
tree
dfs_walk (binfo, fn, qfn, data)
tree binfo;
- tree (*fn) PROTO((tree, void *));
- tree (*qfn) PROTO((tree, void *));
+ tree (*fn) PARAMS ((tree, void *));
+ tree (*qfn) PARAMS ((tree, void *));
void *data;
{
return dfs_walk_real (binfo, 0, fn, qfn, data);
diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c
index 41928ba21ab..d85a710f25a 100644
--- a/gcc/cp/semantics.c
+++ b/gcc/cp/semantics.c
@@ -45,9 +45,9 @@
parsing into this file; that will make implementing the new parser
much easier since it will be able to make use of these routines. */
-static tree expand_cond PROTO((tree));
-static tree maybe_convert_cond PROTO((tree));
-static tree simplify_aggr_init_exprs_r PROTO((tree *, int *, void *));
+static tree expand_cond PARAMS ((tree));
+static tree maybe_convert_cond PARAMS ((tree));
+static tree simplify_aggr_init_exprs_r PARAMS ((tree *, int *, void *));
/* Record the fact that STMT was the last statement added to the
statement tree. */
diff --git a/gcc/cp/spew.c b/gcc/cp/spew.c
index 76f2253814d..8d95be650bd 100644
--- a/gcc/cp/spew.c
+++ b/gcc/cp/spew.c
@@ -1,5 +1,5 @@
/* Type Analyzer for GNU C++.
- Copyright (C) 1987, 89, 92-97, 1998, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1987, 89, 92-97, 98, 99, 2000 Free Software Foundation, Inc.
Hacked... nay, bludgeoned... by Mark Eichin (eichin@cygnus.com)
This file is part of GNU CC.
@@ -46,15 +46,15 @@ struct token {
YYSTYPE yylval;
};
-static int do_aggr PROTO((void));
-static void scan_tokens PROTO((unsigned int));
+static int do_aggr PARAMS ((void));
+static void scan_tokens PARAMS ((unsigned int));
#ifdef SPEW_DEBUG
-static int num_tokens PROTO((void));
-static struct token *nth_token PROTO((int));
-static void add_token PROTO((struct token *));
-static void consume_token PROTO((void));
-static int debug_yychar PROTO((int));
+static int num_tokens PARAMS ((void));
+static struct token *nth_token PARAMS ((int));
+static void add_token PARAMS ((struct token *));
+static void consume_token PARAMS ((void));
+static int debug_yychar PARAMS ((int));
#endif
/* From lex.c: */
diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c
index 4a47ba8bf96..392ea547f2c 100644
--- a/gcc/cp/tree.c
+++ b/gcc/cp/tree.c
@@ -31,21 +31,21 @@ Boston, MA 02111-1307, USA. */
#include "insn-config.h"
#include "integrate.h"
-static tree bot_manip PROTO((tree *, int *, void *));
-static tree bot_replace PROTO((tree *, int *, void *));
-static tree build_cplus_array_type_1 PROTO((tree, tree));
-static void list_hash_add PROTO((int, tree));
-static int list_hash PROTO((tree, tree, tree));
-static tree list_hash_lookup PROTO((int, tree, tree, tree));
-static cp_lvalue_kind lvalue_p_1 PROTO((tree, int));
-static tree no_linkage_helper PROTO((tree *, int *, void *));
-static tree build_srcloc PROTO((char *, int));
-static void mark_list_hash PROTO ((void *));
-static int statement_code_p PROTO((enum tree_code));
-static tree mark_local_for_remap_r PROTO((tree *, int *, void *));
-static tree cp_unsave_r PROTO ((tree *, int *, void *));
-static void cp_unsave PROTO((tree *));
-static tree build_target_expr PROTO((tree, tree));
+static tree bot_manip PARAMS ((tree *, int *, void *));
+static tree bot_replace PARAMS ((tree *, int *, void *));
+static tree build_cplus_array_type_1 PARAMS ((tree, tree));
+static void list_hash_add PARAMS ((int, tree));
+static int list_hash PARAMS ((tree, tree, tree));
+static tree list_hash_lookup PARAMS ((int, tree, tree, tree));
+static cp_lvalue_kind lvalue_p_1 PARAMS ((tree, int));
+static tree no_linkage_helper PARAMS ((tree *, int *, void *));
+static tree build_srcloc PARAMS ((char *, int));
+static void mark_list_hash PARAMS ((void *));
+static int statement_code_p PARAMS ((enum tree_code));
+static tree mark_local_for_remap_r PARAMS ((tree *, int *, void *));
+static tree cp_unsave_r PARAMS ((tree *, int *, void *));
+static void cp_unsave PARAMS ((tree *));
+static tree build_target_expr PARAMS ((tree, tree));
/* If REF is an lvalue, returns the kind of lvalue that REF is.
Otherwise, returns clk_none. If TREAT_CLASS_RVALUES_AS_LVALUES is
@@ -1630,7 +1630,7 @@ break_out_target_exprs (t)
current line number. */
tree
-build_min_nt VPROTO((enum tree_code code, ...))
+build_min_nt VPARAMS ((enum tree_code code, ...))
{
#ifndef ANSI_PROTOTYPES
enum tree_code code;
@@ -1664,7 +1664,7 @@ build_min_nt VPROTO((enum tree_code code, ...))
line-number. */
tree
-build_min VPROTO((enum tree_code code, tree tt, ...))
+build_min VPARAMS ((enum tree_code code, tree tt, ...))
{
#ifndef ANSI_PROTOTYPES
enum tree_code code;
diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c
index 04feacfa31b..c9c10854fb5 100644
--- a/gcc/cp/typeck.c
+++ b/gcc/cp/typeck.c
@@ -41,31 +41,31 @@ Boston, MA 02111-1307, USA. */
#include "toplev.h"
#include "defaults.h"
-static tree convert_for_assignment PROTO((tree, tree, const char *, tree,
+static tree convert_for_assignment PARAMS ((tree, tree, const char *, tree,
int));
-static tree pointer_int_sum PROTO((enum tree_code, tree, tree));
-static tree rationalize_conditional_expr PROTO((enum tree_code, tree));
-static int comp_target_parms PROTO((tree, tree, int));
-static int comp_ptr_ttypes_real PROTO((tree, tree, int));
-static int comp_ptr_ttypes_const PROTO((tree, tree));
-static int comp_ptr_ttypes_reinterpret PROTO((tree, tree));
-static int comp_except_types PROTO((tree, tree, int));
-static int comp_array_types PROTO((int (*) (tree, tree, int), tree,
+static tree pointer_int_sum PARAMS ((enum tree_code, tree, tree));
+static tree rationalize_conditional_expr PARAMS ((enum tree_code, tree));
+static int comp_target_parms PARAMS ((tree, tree, int));
+static int comp_ptr_ttypes_real PARAMS ((tree, tree, int));
+static int comp_ptr_ttypes_const PARAMS ((tree, tree));
+static int comp_ptr_ttypes_reinterpret PARAMS ((tree, tree));
+static int comp_except_types PARAMS ((tree, tree, int));
+static int comp_array_types PARAMS ((int (*) (tree, tree, int), tree,
tree, int));
-static tree common_base_type PROTO((tree, tree));
+static tree common_base_type PARAMS ((tree, tree));
#if 0
-static tree convert_sequence PROTO((tree, tree));
+static tree convert_sequence PARAMS ((tree, tree));
#endif
-static tree lookup_anon_field PROTO((tree, tree));
-static tree pointer_diff PROTO((tree, tree, tree));
-static tree build_component_addr PROTO((tree, tree));
-static tree qualify_type PROTO((tree, tree));
-static tree get_delta_difference PROTO((tree, tree, int));
-static int comp_cv_target_types PROTO((tree, tree, int));
-static void casts_away_constness_r PROTO((tree *, tree *));
-static int casts_away_constness PROTO ((tree, tree));
-static void maybe_warn_about_returning_address_of_local PROTO ((tree));
-static tree strip_all_pointer_quals PROTO ((tree));
+static tree lookup_anon_field PARAMS ((tree, tree));
+static tree pointer_diff PARAMS ((tree, tree, tree));
+static tree build_component_addr PARAMS ((tree, tree));
+static tree qualify_type PARAMS ((tree, tree));
+static tree get_delta_difference PARAMS ((tree, tree, int));
+static int comp_cv_target_types PARAMS ((tree, tree, int));
+static void casts_away_constness_r PARAMS ((tree *, tree *));
+static int casts_away_constness PARAMS ((tree, tree));
+static void maybe_warn_about_returning_address_of_local PARAMS ((tree));
+static tree strip_all_pointer_quals PARAMS ((tree));
/* Return the target type of TYPE, which means return T for:
T*, T&, T[], T (...), and otherwise, just T. */
@@ -857,7 +857,7 @@ comp_except_specs (t1, t2, exact)
static int
comp_array_types (cmp, t1, t2, strict)
- register int (*cmp) PROTO((tree, tree, int));
+ register int (*cmp) PARAMS ((tree, tree, int));
tree t1, t2;
int strict;
{
diff --git a/gcc/cp/typeck2.c b/gcc/cp/typeck2.c
index ced32f8192f..f49398b84a4 100644
--- a/gcc/cp/typeck2.c
+++ b/gcc/cp/typeck2.c
@@ -1,6 +1,6 @@
/* Report error messages, build initializers, and perform
some front-end optimizations for C++ compiler.
- Copyright (C) 1987, 88, 89, 92-98, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1987, 88, 89, 92-98, 99, 2000 Free Software Foundation, Inc.
Hacked by Michael Tiemann (tiemann@cygnus.com)
This file is part of GNU CC.
@@ -38,8 +38,8 @@ Boston, MA 02111-1307, USA. */
#include "toplev.h"
#include "output.h"
-static tree process_init_constructor PROTO((tree, tree, tree *));
-static void ack PVPROTO ((const char *, ...)) ATTRIBUTE_PRINTF_1;
+static tree process_init_constructor PARAMS ((tree, tree, tree *));
+static void ack PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1;
/* Print an error message stemming from an attempt to use
BASETYPE as a base class for TYPE. */
@@ -83,7 +83,7 @@ readonly_error (arg, string, soft)
int soft;
{
const char *fmt;
- void (*fn) PVPROTO ((const char *, ...));
+ void (*fn) PARAMS ((const char *, ...));
if (soft)
fn = cp_pedwarn;
@@ -248,7 +248,7 @@ retry:
/* Like error(), but don't call report_error_function(). */
static void
-ack VPROTO ((const char *msg, ...))
+ack VPARAMS ((const char *msg, ...))
{
#ifndef ANSI_PROTOTYPES
const char *msg;
diff --git a/gcc/cp/xref.c b/gcc/cp/xref.c
index 94b757b5c8f..22a4ab859f3 100644
--- a/gcc/cp/xref.c
+++ b/gcc/cp/xref.c
@@ -1,5 +1,5 @@
/* Code for handling XREF output from GNU C++.
- Copyright (C) 1992, 93-97, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1992, 93-97, 1998, 2000 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com)
This file is part of GNU CC.
@@ -117,15 +117,15 @@ static tree last_fndecl = NULL;
/* Forward definitions */
/* */
/************************************************************************/
-static void gen_assign PROTO((XREF_FILE, tree));
-static XREF_FILE find_file PROTO((const char *));
-static const char * filename PROTO((XREF_FILE));
-static const char * fctname PROTO((tree));
-static const char * declname PROTO((tree));
-static void simplify_type PROTO((char *));
-static const char * fixname PROTO((const char *, char *));
-static void open_xref_file PROTO((const char *));
-static const char * classname PROTO((tree));
+static void gen_assign PARAMS ((XREF_FILE, tree));
+static XREF_FILE find_file PARAMS ((const char *));
+static const char * filename PARAMS ((XREF_FILE));
+static const char * fctname PARAMS ((tree));
+static const char * declname PARAMS ((tree));
+static void simplify_type PARAMS ((char *));
+static const char * fixname PARAMS ((const char *, char *));
+static void open_xref_file PARAMS ((const char *));
+static const char * classname PARAMS ((tree));
/* Start cross referencing. FILE is the name of the file we xref. */
OpenPOWER on IntegriCloud