diff options
-rw-r--r-- | gcc/ChangeLog | 11 | ||||
-rw-r--r-- | gcc/toplev.c | 62 | ||||
-rw-r--r-- | gcc/toplev.h | 90 | ||||
-rw-r--r-- | gcc/tree.c | 32 | ||||
-rw-r--r-- | gcc/tree.h | 758 | ||||
-rw-r--r-- | gcc/unroll.c | 30 | ||||
-rw-r--r-- | gcc/varasm.c | 54 | ||||
-rw-r--r-- | gcc/varray.c | 2 | ||||
-rw-r--r-- | gcc/varray.h | 6 |
9 files changed, 528 insertions, 517 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 35869ba..949f05a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,16 @@ 2000-01-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> + * toplev.c: PROTO -> PARAMS. + * toplev.h: Likewise. + * tree.c: Likewise. + * tree.h: Likewise. + * unroll.c: Likewise. + * varasm.c: Likewise. + * varray.c: Likewise. + * varray.h: Likewise. + +2000-01-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> + * reload.c: PROTO -> PARAMS. * reload.h: Likewise. * reload1.c: Likewise. diff --git a/gcc/toplev.c b/gcc/toplev.c index 9c4a184..7fac2af 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -149,35 +149,35 @@ extern char *version_string; extern int size_directive_output; extern tree last_assemble_variable_decl; -static void set_target_switch PROTO((const char *)); -static const char *decl_name PROTO((tree, int)); +static void set_target_switch PARAMS ((const char *)); +static const char *decl_name PARAMS ((tree, int)); -extern void set_fatal_function PROTO((void (*)(const char *, va_list))); -static void float_signal PROTO((int)) ATTRIBUTE_NORETURN; -static void pipe_closed PROTO((int)) ATTRIBUTE_NORETURN; +extern void set_fatal_function PARAMS ((void (*)(const char *, va_list))); +static void float_signal PARAMS ((int)) ATTRIBUTE_NORETURN; +static void pipe_closed PARAMS ((int)) ATTRIBUTE_NORETURN; #ifdef ASM_IDENTIFY_LANGUAGE /* This might or might not be used in ASM_IDENTIFY_LANGUAGE. */ -static void output_lang_identify PROTO((FILE *)) ATTRIBUTE_UNUSED; +static void output_lang_identify PARAMS ((FILE *)) ATTRIBUTE_UNUSED; #endif -static void open_dump_file PROTO((const char *, const char *)); -static void close_dump_file PROTO((void (*) (FILE *, rtx), rtx)); -static void dump_rtl PROTO((const char *, tree, void (*) (FILE *, rtx), rtx)); -static void clean_dump_file PROTO((const char *)); -static void compile_file PROTO((char *)); -static void display_help PROTO ((void)); -static void mark_file_stack PROTO ((void *)); - -static void decode_d_option PROTO ((const char *)); -static int decode_f_option PROTO ((const char *)); -static int decode_W_option PROTO ((const char *)); -static int decode_g_option PROTO ((const char *)); -static unsigned independent_decode_option PROTO ((int, char **, unsigned)); - -static void print_version PROTO((FILE *, const char *)); -static int print_single_switch PROTO((FILE *, int, int, const char *, +static void open_dump_file PARAMS ((const char *, const char *)); +static void close_dump_file PARAMS ((void (*) (FILE *, rtx), rtx)); +static void dump_rtl PARAMS ((const char *, tree, void (*) (FILE *, rtx), rtx)); +static void clean_dump_file PARAMS ((const char *)); +static void compile_file PARAMS ((char *)); +static void display_help PARAMS ((void)); +static void mark_file_stack PARAMS ((void *)); + +static void decode_d_option PARAMS ((const char *)); +static int decode_f_option PARAMS ((const char *)); +static int decode_W_option PARAMS ((const char *)); +static int decode_g_option PARAMS ((const char *)); +static unsigned independent_decode_option PARAMS ((int, char **, unsigned)); + +static void print_version PARAMS ((FILE *, const char *)); +static int print_single_switch PARAMS ((FILE *, int, int, const char *, const char *, const char *, const char *, const char *)); -static void print_switch_values PROTO((FILE *, int, int, const char *, +static void print_switch_values PARAMS ((FILE *, int, int, const char *, const char *, const char *)); /* Length of line when printing switch values. */ @@ -315,22 +315,22 @@ int sorrycount = 0; 2: and any other information that might be interesting, such as function parameter types in C++. */ -const char *(*decl_printable_name) PROTO ((tree, int)); +const char *(*decl_printable_name) PARAMS ((tree, int)); /* Pointer to function to compute rtl for a language-specific tree code. */ typedef rtx (*lang_expand_expr_t) - PROTO ((union tree_node *, rtx, enum machine_mode, + PARAMS ((union tree_node *, rtx, enum machine_mode, enum expand_modifier modifier)); lang_expand_expr_t lang_expand_expr = 0; -tree (*lang_expand_constant) PROTO((tree)) = 0; +tree (*lang_expand_constant) PARAMS ((tree)) = 0; /* Pointer to function to finish handling an incomplete decl at the end of compilation. */ -void (*incomplete_decl_finalize_hook) PROTO((tree)) = 0; +void (*incomplete_decl_finalize_hook) PARAMS ((tree)) = 0; /* Nonzero if generating code to do profiling. */ @@ -1557,7 +1557,7 @@ set_float_handler (handler) int do_float_handler (fn, data) - void (*fn) PROTO ((PTR)); + void (*fn) PARAMS ((PTR)); PTR data; { jmp_buf buf; @@ -1742,7 +1742,7 @@ open_dump_file (suffix, function_name) /* Routine to close a dump file. */ static void close_dump_file (func, insns) - void (*func) PROTO ((FILE *, rtx)); + void (*func) PARAMS ((FILE *, rtx)); rtx insns; { TIMEVAR @@ -1765,7 +1765,7 @@ static void dump_rtl (suffix, decl, func, insns) const char *suffix; tree decl; - void (*func) PROTO ((FILE *, rtx)); + void (*func) PARAMS ((FILE *, rtx)); rtx insns; { open_dump_file (suffix, decl_printable_name (decl, 2)); @@ -4486,7 +4486,7 @@ independent_decode_option (argc, argv, strings_processed) Exit code is 35 if can't open files, 34 if fatal error, 33 if had nonfatal errors, else success. */ -extern int main PROTO ((int, char **)); +extern int main PARAMS ((int, char **)); int main (argc, argv) diff --git a/gcc/toplev.h b/gcc/toplev.h index 11c72ae..7145dd2 100644 --- a/gcc/toplev.h +++ b/gcc/toplev.h @@ -26,26 +26,26 @@ union tree_node; struct rtx_def; #endif -extern int read_integral_parameter PROTO ((const char *, const char *, +extern int read_integral_parameter PARAMS ((const char *, const char *, const int)); -extern int count_error PROTO ((int)); -extern void strip_off_ending PROTO ((char *, int)); -extern void print_time PROTO ((const char *, int)); -extern void debug_start_source_file PROTO ((char *)); -extern void debug_end_source_file PROTO ((unsigned)); -extern void debug_define PROTO ((unsigned, char *)); -extern void debug_undef PROTO ((unsigned, char *)); -extern void fatal PVPROTO ((const char *, ...)) +extern int count_error PARAMS ((int)); +extern void strip_off_ending PARAMS ((char *, int)); +extern void print_time PARAMS ((const char *, int)); +extern void debug_start_source_file PARAMS ((char *)); +extern void debug_end_source_file PARAMS ((unsigned)); +extern void debug_define PARAMS ((unsigned, char *)); +extern void debug_undef PARAMS ((unsigned, char *)); +extern void fatal PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN; -extern void fatal_io_error PROTO ((const char *)) +extern void fatal_io_error PARAMS ((const char *)) ATTRIBUTE_NORETURN; -extern void pfatal_with_name PROTO ((const char *)) +extern void pfatal_with_name PARAMS ((const char *)) ATTRIBUTE_NORETURN; -extern void _fatal_insn_not_found PROTO ((struct rtx_def *, +extern void _fatal_insn_not_found PARAMS ((struct rtx_def *, const char *, int, const char *)) ATTRIBUTE_NORETURN; -extern void _fatal_insn PROTO ((const char *, +extern void _fatal_insn PARAMS ((const char *, struct rtx_def *, const char *, int, const char *)) @@ -62,73 +62,73 @@ extern void _fatal_insn PROTO ((const char *, #define fatal_insn_not_found(insn) \ _fatal_insn_not_found (insn, __FILE__, __LINE__, 0) #endif -extern void warning PVPROTO ((const char *, ...)) +extern void warning PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1; -extern void error PVPROTO ((const char *, ...)) +extern void error PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1; -extern void pedwarn PVPROTO ((const char *, ...)) +extern void pedwarn PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1; -extern void pedwarn_with_file_and_line PVPROTO ((const char *, int, +extern void pedwarn_with_file_and_line PARAMS ((const char *, int, const char *, ...)) ATTRIBUTE_PRINTF_3; -extern void warning_with_file_and_line PVPROTO ((const char *, int, +extern void warning_with_file_and_line PARAMS ((const char *, int, const char *, ...)) ATTRIBUTE_PRINTF_3; -extern void error_with_file_and_line PVPROTO ((const char *, int, +extern void error_with_file_and_line PARAMS ((const char *, int, const char *, ...)) ATTRIBUTE_PRINTF_3; -extern void sorry PVPROTO ((const char *, ...)) +extern void sorry PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1; -extern void really_sorry PVPROTO((const char *, ...)) +extern void really_sorry PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN; -extern void default_print_error_function PROTO ((const char *)); -extern void report_error_function PROTO ((const char *)); +extern void default_print_error_function PARAMS ((const char *)); +extern void report_error_function PARAMS ((const char *)); -extern void rest_of_decl_compilation PROTO ((union tree_node *, +extern void rest_of_decl_compilation PARAMS ((union tree_node *, const char *, int, int)); -extern void rest_of_type_compilation PROTO ((union tree_node *, int)); -extern void rest_of_compilation PROTO ((union tree_node *)); +extern void rest_of_type_compilation PARAMS ((union tree_node *, int)); +extern void rest_of_compilation PARAMS ((union tree_node *)); /* The *_with_decl functions aren't suitable for ATTRIBUTE_PRINTF. */ -extern void pedwarn_with_decl PVPROTO ((union tree_node *, +extern void pedwarn_with_decl PARAMS ((union tree_node *, const char *, ...)); -extern void warning_with_decl PVPROTO ((union tree_node *, +extern void warning_with_decl PARAMS ((union tree_node *, const char *, ...)); -extern void error_with_decl PVPROTO ((union tree_node *, +extern void error_with_decl PARAMS ((union tree_node *, const char *, ...)); -extern void announce_function PROTO ((union tree_node *)); +extern void announce_function PARAMS ((union tree_node *)); -extern void error_for_asm PVPROTO((struct rtx_def *, +extern void error_for_asm PARAMS ((struct rtx_def *, const char *, ...)) ATTRIBUTE_PRINTF_2; -extern void warning_for_asm PVPROTO((struct rtx_def *, +extern void warning_for_asm PARAMS ((struct rtx_def *, const char *, ...)) ATTRIBUTE_PRINTF_2; #if defined (_JBLEN) || defined (setjmp) -extern void set_float_handler PROTO((jmp_buf)); -extern int push_float_handler PROTO((jmp_buf, jmp_buf)); -extern void pop_float_handler PROTO((int, jmp_buf)); +extern void set_float_handler PARAMS ((jmp_buf)); +extern int push_float_handler PARAMS ((jmp_buf, jmp_buf)); +extern void pop_float_handler PARAMS ((int, jmp_buf)); #endif -extern int do_float_handler PROTO((void (*) (PTR), PTR)); +extern int do_float_handler PARAMS ((void (*) (PTR), PTR)); #ifdef BUFSIZ -extern void output_quoted_string PROTO ((FILE *, const char *)); -extern void output_file_directive PROTO ((FILE *, const char *)); +extern void output_quoted_string PARAMS ((FILE *, const char *)); +extern void output_file_directive PARAMS ((FILE *, const char *)); #endif -extern void do_abort PROTO ((void)) ATTRIBUTE_NORETURN; -extern void botch PROTO ((const char *)) +extern void do_abort PARAMS ((void)) ATTRIBUTE_NORETURN; +extern void botch PARAMS ((const char *)) ATTRIBUTE_NORETURN; #ifdef BUFSIZ -extern void fnotice PROTO ((FILE *, const char *, ...)) +extern void fnotice PARAMS ((FILE *, const char *, ...)) ATTRIBUTE_PRINTF_2; #endif -extern int wrapup_global_declarations PROTO ((union tree_node **, int)); -extern void check_global_declarations PROTO ((union tree_node **, int)); -extern void note_deferral_of_defined_inline_function PROTO ((union tree_node *)); -extern void set_message_length PROTO ((int)); +extern int wrapup_global_declarations PARAMS ((union tree_node **, int)); +extern void check_global_declarations PARAMS ((union tree_node **, int)); +extern void note_deferral_of_defined_inline_function PARAMS ((union tree_node *)); +extern void set_message_length PARAMS ((int)); extern int errorcount; extern int warningcount; extern int sorrycount; @@ -46,9 +46,9 @@ Boston, MA 02111-1307, USA. */ #define obstack_chunk_alloc xmalloc #define obstack_chunk_free free /* obstack.[ch] explicitly declined to prototype this. */ -extern int _obstack_allocated_p PROTO ((struct obstack *h, PTR obj)); +extern int _obstack_allocated_p PARAMS ((struct obstack *h, PTR obj)); -static void unsave_expr_now_r PROTO ((tree)); +static void unsave_expr_now_r PARAMS ((tree)); /* Tree nodes of permanent duration are allocated in this obstack. They are the identifier nodes, and everything outside of @@ -245,7 +245,7 @@ static int next_type_uid = 1; /* The language-specific function for alias analysis. If NULL, the language does not do any special alias analysis. */ -int (*lang_get_alias_set) PROTO((tree)); +int (*lang_get_alias_set) PARAMS ((tree)); /* Here is how primitive or already-canonicalized types' hash codes are made. */ @@ -271,19 +271,19 @@ struct type_hash #define TYPE_HASH_SIZE 59 struct type_hash *type_hash_table[TYPE_HASH_SIZE]; -static void build_real_from_int_cst_1 PROTO((PTR)); -static void set_type_quals PROTO((tree, int)); -static void append_random_chars PROTO((char *)); -static void mark_type_hash PROTO ((void *)); -static void fix_sizetype PROTO ((tree)); +static void build_real_from_int_cst_1 PARAMS ((PTR)); +static void set_type_quals PARAMS ((tree, int)); +static void append_random_chars PARAMS ((char *)); +static void mark_type_hash PARAMS ((void *)); +static void fix_sizetype PARAMS ((tree)); /* If non-null, these are language-specific helper functions for unsave_expr_now. If present, LANG_UNSAVE is called before its argument (an UNSAVE_EXPR) is to be unsaved, and all other processing in unsave_expr_now is aborted. LANG_UNSAVE_EXPR_NOW is called from unsave_expr_1 for language-specific tree codes. */ -void (*lang_unsave) PROTO((tree *)); -void (*lang_unsave_expr_now) PROTO((tree)); +void (*lang_unsave) PARAMS ((tree *)); +void (*lang_unsave_expr_now) PARAMS ((tree)); /* The string used as a placeholder instead of a source file name for built-in tree nodes. The variable, which is dynamically allocated, @@ -348,8 +348,8 @@ gcc_obstack_init (obstack) #define OBSTACK_CHUNK_FREE free #endif _obstack_begin (obstack, OBSTACK_CHUNK_SIZE, 0, - (void *(*) PROTO ((long))) OBSTACK_CHUNK_ALLOC, - (void (*) PROTO ((void *))) OBSTACK_CHUNK_FREE); + (void *(*) PARAMS ((long))) OBSTACK_CHUNK_ALLOC, + (void (*) PARAMS ((void *))) OBSTACK_CHUNK_FREE); } /* Save all variables describing the current status into the structure @@ -1117,7 +1117,7 @@ make_node (code) /* A front-end can reset this to an appropriate function if types need special handling. */ -tree (*make_lang_type_fn) PROTO((enum tree_code)) = make_node; +tree (*make_lang_type_fn) PARAMS ((enum tree_code)) = make_node; /* Return a new type (with the indicated CODE), doing whatever language-specific processing is required. */ @@ -3035,7 +3035,7 @@ stabilize_reference_1 (e) Constants, decls, types and misc nodes cannot be. */ tree -build VPROTO((enum tree_code code, tree tt, ...)) +build VPARAMS ((enum tree_code code, tree tt, ...)) { #ifndef ANSI_PROTOTYPES enum tree_code code; @@ -3202,7 +3202,7 @@ build1 (code, type, node) or even garbage if their values do not matter. */ tree -build_nt VPROTO((enum tree_code code, ...)) +build_nt VPARAMS ((enum tree_code code, ...)) { #ifndef ANSI_PROTOTYPES enum tree_code code; @@ -3232,7 +3232,7 @@ build_nt VPROTO((enum tree_code code, ...)) on the temp_decl_obstack, regardless. */ tree -build_parse_node VPROTO((enum tree_code code, ...)) +build_parse_node VPARAMS ((enum tree_code code, ...)) { #ifndef ANSI_PROTOTYPES enum tree_code code; @@ -353,10 +353,10 @@ struct tree_common __LINE__, __PRETTY_FUNCTION__); \ __t; }) -extern void tree_check_failed PROTO((const tree, enum tree_code, +extern void tree_check_failed PARAMS ((const tree, enum tree_code, const char *, int, const char *)) ATTRIBUTE_NORETURN; -extern void tree_class_check_failed PROTO((const tree, char, +extern void tree_class_check_failed PARAMS ((const tree, char, const char *, int, const char *)) ATTRIBUTE_NORETURN; @@ -1568,104 +1568,104 @@ extern tree global_trees[TI_MAX]; #define exact_log2(N) exact_log2_wide ((unsigned HOST_WIDE_INT) (N)) #define floor_log2(N) floor_log2_wide ((unsigned HOST_WIDE_INT) (N)) #endif -extern int exact_log2_wide PROTO((unsigned HOST_WIDE_INT)); -extern int floor_log2_wide PROTO((unsigned HOST_WIDE_INT)); +extern int exact_log2_wide PARAMS ((unsigned HOST_WIDE_INT)); +extern int floor_log2_wide PARAMS ((unsigned HOST_WIDE_INT)); -extern char *oballoc PROTO((int)); -extern char *permalloc PROTO((int)); -extern char *savealloc PROTO((int)); -extern char *expralloc PROTO((int)); +extern char *oballoc PARAMS ((int)); +extern char *permalloc PARAMS ((int)); +extern char *savealloc PARAMS ((int)); +extern char *expralloc PARAMS ((int)); /* Lowest level primitive for allocating a node. The TREE_CODE is the only argument. Contents are initialized to zero except for a few of the common fields. */ -extern tree make_node PROTO((enum tree_code)); -extern tree make_lang_type PROTO((enum tree_code)); -extern tree (*make_lang_type_fn) PROTO((enum tree_code)); +extern tree make_node PARAMS ((enum tree_code)); +extern tree make_lang_type PARAMS ((enum tree_code)); +extern tree (*make_lang_type_fn) PARAMS ((enum tree_code)); /* Make a copy of a node, with all the same contents except for TREE_PERMANENT. (The copy is permanent iff nodes being made now are permanent.) */ -extern tree copy_node PROTO((tree)); +extern tree copy_node PARAMS ((tree)); /* Make a copy of a chain of TREE_LIST nodes. */ -extern tree copy_list PROTO((tree)); +extern tree copy_list PARAMS ((tree)); /* Make a TREE_VEC. */ -extern tree make_tree_vec PROTO((int)); +extern tree make_tree_vec PARAMS ((int)); /* Return the (unique) IDENTIFIER_NODE node for a given name. The name is supplied as a char *. */ -extern tree get_identifier PROTO((const char *)); +extern tree get_identifier PARAMS ((const char *)); /* If an identifier with the name TEXT (a null-terminated string) has previously been referred to, return that node; otherwise return NULL_TREE. */ -extern tree maybe_get_identifier PROTO((const char *)); +extern tree maybe_get_identifier PARAMS ((const char *)); /* Construct various types of nodes. */ #define build_int_2(LO,HI) \ build_int_2_wide ((HOST_WIDE_INT) (LO), (HOST_WIDE_INT) (HI)) -extern tree build PVPROTO((enum tree_code, tree, ...)); -extern tree build_nt PVPROTO((enum tree_code, ...)); -extern tree build_parse_node PVPROTO((enum tree_code, ...)); - -extern tree build_int_2_wide PROTO((HOST_WIDE_INT, HOST_WIDE_INT)); -extern tree build_real PROTO((tree, REAL_VALUE_TYPE)); -extern tree build_real_from_int_cst PROTO((tree, tree)); -extern tree build_complex PROTO((tree, tree, tree)); -extern tree build_string PROTO((int, const char *)); -extern tree build1 PROTO((enum tree_code, tree, tree)); -extern tree build_tree_list PROTO((tree, tree)); -extern tree build_decl_list PROTO((tree, tree)); -extern tree build_expr_list PROTO((tree, tree)); -extern tree build_decl PROTO((enum tree_code, tree, tree)); -extern tree build_block PROTO((tree, tree, tree, tree, tree)); -extern tree build_expr_wfl PROTO((tree, const char *, int, int)); +extern tree build PARAMS ((enum tree_code, tree, ...)); +extern tree build_nt PARAMS ((enum tree_code, ...)); +extern tree build_parse_node PARAMS ((enum tree_code, ...)); + +extern tree build_int_2_wide PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT)); +extern tree build_real PARAMS ((tree, REAL_VALUE_TYPE)); +extern tree build_real_from_int_cst PARAMS ((tree, tree)); +extern tree build_complex PARAMS ((tree, tree, tree)); +extern tree build_string PARAMS ((int, const char *)); +extern tree build1 PARAMS ((enum tree_code, tree, tree)); +extern tree build_tree_list PARAMS ((tree, tree)); +extern tree build_decl_list PARAMS ((tree, tree)); +extern tree build_expr_list PARAMS ((tree, tree)); +extern tree build_decl PARAMS ((enum tree_code, tree, tree)); +extern tree build_block PARAMS ((tree, tree, tree, tree, tree)); +extern tree build_expr_wfl PARAMS ((tree, const char *, int, int)); /* Construct various nodes representing data types. */ -extern tree make_signed_type PROTO((int)); -extern tree make_unsigned_type PROTO((int)); -extern void set_sizetype PROTO((tree)); -extern tree signed_or_unsigned_type PROTO((int, tree)); -extern void fixup_unsigned_type PROTO((tree)); -extern tree build_pointer_type PROTO((tree)); -extern tree build_reference_type PROTO((tree)); -extern tree build_index_type PROTO((tree)); -extern tree build_index_2_type PROTO((tree, tree)); -extern tree build_array_type PROTO((tree, tree)); -extern tree build_function_type PROTO((tree, tree)); -extern tree build_method_type PROTO((tree, tree)); -extern tree build_offset_type PROTO((tree, tree)); -extern tree build_complex_type PROTO((tree)); -extern tree array_type_nelts PROTO((tree)); - -extern tree value_member PROTO((tree, tree)); -extern tree purpose_member PROTO((tree, tree)); -extern tree binfo_member PROTO((tree, tree)); -extern int attribute_hash_list PROTO((tree)); -extern int attribute_list_equal PROTO((tree, tree)); -extern int attribute_list_contained PROTO((tree, tree)); -extern int tree_int_cst_equal PROTO((tree, tree)); -extern int tree_int_cst_lt PROTO((tree, tree)); -extern int tree_int_cst_sgn PROTO((tree)); -extern int index_type_equal PROTO((tree, tree)); -extern tree get_inner_array_type PROTO((tree)); +extern tree make_signed_type PARAMS ((int)); +extern tree make_unsigned_type PARAMS ((int)); +extern void set_sizetype PARAMS ((tree)); +extern tree signed_or_unsigned_type PARAMS ((int, tree)); +extern void fixup_unsigned_type PARAMS ((tree)); +extern tree build_pointer_type PARAMS ((tree)); +extern tree build_reference_type PARAMS ((tree)); +extern tree build_index_type PARAMS ((tree)); +extern tree build_index_2_type PARAMS ((tree, tree)); +extern tree build_array_type PARAMS ((tree, tree)); +extern tree build_function_type PARAMS ((tree, tree)); +extern tree build_method_type PARAMS ((tree, tree)); +extern tree build_offset_type PARAMS ((tree, tree)); +extern tree build_complex_type PARAMS ((tree)); +extern tree array_type_nelts PARAMS ((tree)); + +extern tree value_member PARAMS ((tree, tree)); +extern tree purpose_member PARAMS ((tree, tree)); +extern tree binfo_member PARAMS ((tree, tree)); +extern int attribute_hash_list PARAMS ((tree)); +extern int attribute_list_equal PARAMS ((tree, tree)); +extern int attribute_list_contained PARAMS ((tree, tree)); +extern int tree_int_cst_equal PARAMS ((tree, tree)); +extern int tree_int_cst_lt PARAMS ((tree, tree)); +extern int tree_int_cst_sgn PARAMS ((tree)); +extern int index_type_equal PARAMS ((tree, tree)); +extern tree get_inner_array_type PARAMS ((tree)); /* From expmed.c. Since rtl.h is included after tree.h, we can't put the prototype here. Rtl.h does declare the prototype if tree.h had been included. */ -extern tree make_tree PROTO((tree, struct rtx_def *)); +extern tree make_tree PARAMS ((tree, struct rtx_def *)); /* Return a type like TTYPE except that its TYPE_ATTRIBUTES is ATTRIBUTE. @@ -1673,37 +1673,37 @@ extern tree make_tree PROTO((tree, struct rtx_def *)); Such modified types already made are recorded so that duplicates are not made. */ -extern tree build_type_attribute_variant PROTO((tree, tree)); -extern tree build_decl_attribute_variant PROTO((tree, tree)); +extern tree build_type_attribute_variant PARAMS ((tree, tree)); +extern tree build_decl_attribute_variant PARAMS ((tree, tree)); -extern tree merge_machine_decl_attributes PROTO((tree, tree)); -extern tree merge_machine_type_attributes PROTO((tree, tree)); +extern tree merge_machine_decl_attributes PARAMS ((tree, tree)); +extern tree merge_machine_type_attributes PARAMS ((tree, tree)); /* Split a list of declspecs and attributes into two. */ -extern void split_specs_attrs PROTO((tree, tree *, tree *)); +extern void split_specs_attrs PARAMS ((tree, tree *, tree *)); /* Strip attributes from a list of combined specs and attrs. */ -extern tree strip_attrs PROTO((tree)); +extern tree strip_attrs PARAMS ((tree)); /* Return 1 if an attribute and its arguments are valid for a decl or type. */ -extern int valid_machine_attribute PROTO((tree, tree, tree, tree)); +extern int valid_machine_attribute PARAMS ((tree, tree, tree, tree)); /* Given a tree node and a string, return non-zero if the tree node is a valid attribute name for the string. */ -extern int is_attribute_p PROTO((const char *, tree)); +extern int is_attribute_p PARAMS ((const char *, tree)); /* Given an attribute name and a list of attributes, return the list element of the attribute or NULL_TREE if not found. */ -extern tree lookup_attribute PROTO((const char *, tree)); +extern tree lookup_attribute PARAMS ((const char *, tree)); /* Given two attributes lists, return a list of their union. */ -extern tree merge_attributes PROTO((tree, tree)); +extern tree merge_attributes PARAMS ((tree, tree)); /* Given a type node TYPE and a TYPE_QUALIFIER_SET, return a type for the same kind of data as TYPE describes. Variants point to the @@ -1712,7 +1712,7 @@ extern tree merge_attributes PROTO((tree, tree)); variants are never made. Only main variants should ever appear as types of expressions. */ -extern tree build_qualified_type PROTO((tree, int)); +extern tree build_qualified_type PARAMS ((tree, int)); /* Like build_qualified_type, but only deals with the `const' and `volatile' qualifiers. This interface is retained for backwards @@ -1726,21 +1726,21 @@ extern tree build_qualified_type PROTO((tree, int)); /* Make a copy of a type node. */ -extern tree build_type_copy PROTO((tree)); +extern tree build_type_copy PARAMS ((tree)); /* Given a ..._TYPE node, calculate the TYPE_SIZE, TYPE_SIZE_UNIT, TYPE_ALIGN and TYPE_MODE fields. If called more than once on one node, does nothing except for the first time. */ -extern void layout_type PROTO((tree)); +extern void layout_type PARAMS ((tree)); /* Given a hashcode and a ..._TYPE node (for which the hashcode was made), return a canonicalized ..._TYPE node, so that duplicates are not made. How the hash code is computed is up to the caller, as long as any two callers that could hash identical-looking type nodes agree. */ -extern tree type_hash_canon PROTO((int, tree)); +extern tree type_hash_canon PARAMS ((int, tree)); /* Given a VAR_DECL, PARM_DECL, RESULT_DECL or FIELD_DECL node, calculates the DECL_SIZE, DECL_SIZE_UNIT, DECL_ALIGN and DECL_MODE @@ -1750,19 +1750,19 @@ extern tree type_hash_canon PROTO((int, tree)); be starting at (in bits). Zero means it can be assumed aligned on any boundary that may be needed. */ -extern void layout_decl PROTO((tree, unsigned)); +extern void layout_decl PARAMS ((tree, unsigned)); /* Return an expr equal to X but certainly not valid as an lvalue. */ -extern tree non_lvalue PROTO((tree)); -extern tree pedantic_non_lvalue PROTO((tree)); +extern tree non_lvalue PARAMS ((tree)); +extern tree pedantic_non_lvalue PARAMS ((tree)); -extern tree convert PROTO((tree, tree)); -extern tree size_in_bytes PROTO((tree)); -extern HOST_WIDE_INT int_size_in_bytes PROTO((tree)); -extern tree size_binop PROTO((enum tree_code, tree, tree)); -extern tree ssize_binop PROTO((enum tree_code, tree, tree)); -extern tree size_int_wide PROTO((unsigned HOST_WIDE_INT, +extern tree convert PARAMS ((tree, tree)); +extern tree size_in_bytes PARAMS ((tree)); +extern HOST_WIDE_INT int_size_in_bytes PARAMS ((tree)); +extern tree size_binop PARAMS ((enum tree_code, tree, tree)); +extern tree ssize_binop PARAMS ((enum tree_code, tree, tree)); +extern tree size_int_wide PARAMS ((unsigned HOST_WIDE_INT, unsigned HOST_WIDE_INT, int)); #define size_int(L) size_int_2 ((L), 0, 0) #define bitsize_int(L, H) size_int_2 ((L), (H), 1) @@ -1770,9 +1770,9 @@ extern tree size_int_wide PROTO((unsigned HOST_WIDE_INT, size_int_wide ((unsigned HOST_WIDE_INT) (L), \ (unsigned HOST_WIDE_INT) (H), (T)) -extern tree round_up PROTO((tree, int)); -extern tree get_pending_sizes PROTO((void)); -extern void put_pending_sizes PROTO((tree)); +extern tree round_up PARAMS ((tree, int)); +extern tree get_pending_sizes PARAMS ((void)); +extern void put_pending_sizes PARAMS ((tree)); /* Type for sizes of data-type. */ @@ -1807,91 +1807,91 @@ extern int set_alignment; by making the last node in X point to Y. Returns X, except if X is 0 returns Y. */ -extern tree chainon PROTO((tree, tree)); +extern tree chainon PARAMS ((tree, tree)); /* Make a new TREE_LIST node from specified PURPOSE, VALUE and CHAIN. */ -extern tree tree_cons PROTO((tree, tree, tree)); -extern tree perm_tree_cons PROTO((tree, tree, tree)); -extern tree temp_tree_cons PROTO((tree, tree, tree)); -extern tree saveable_tree_cons PROTO((tree, tree, tree)); -extern tree decl_tree_cons PROTO((tree, tree, tree)); -extern tree expr_tree_cons PROTO((tree, tree, tree)); +extern tree tree_cons PARAMS ((tree, tree, tree)); +extern tree perm_tree_cons PARAMS ((tree, tree, tree)); +extern tree temp_tree_cons PARAMS ((tree, tree, tree)); +extern tree saveable_tree_cons PARAMS ((tree, tree, tree)); +extern tree decl_tree_cons PARAMS ((tree, tree, tree)); +extern tree expr_tree_cons PARAMS ((tree, tree, tree)); /* Return the last tree node in a chain. */ -extern tree tree_last PROTO((tree)); +extern tree tree_last PARAMS ((tree)); /* Reverse the order of elements in a chain, and return the new head. */ -extern tree nreverse PROTO((tree)); +extern tree nreverse PARAMS ((tree)); /* Returns the length of a chain of nodes (number of chain pointers to follow before reaching a null pointer). */ -extern int list_length PROTO((tree)); +extern int list_length PARAMS ((tree)); /* integer_zerop (tree x) is nonzero if X is an integer constant of value 0 */ -extern int integer_zerop PROTO((tree)); +extern int integer_zerop PARAMS ((tree)); /* integer_onep (tree x) is nonzero if X is an integer constant of value 1 */ -extern int integer_onep PROTO((tree)); +extern int integer_onep PARAMS ((tree)); /* integer_all_onesp (tree x) is nonzero if X is an integer constant all of whose significant bits are 1. */ -extern int integer_all_onesp PROTO((tree)); +extern int integer_all_onesp PARAMS ((tree)); /* integer_pow2p (tree x) is nonzero is X is an integer constant with exactly one bit 1. */ -extern int integer_pow2p PROTO((tree)); +extern int integer_pow2p PARAMS ((tree)); /* staticp (tree x) is nonzero if X is a reference to data allocated at a fixed address in memory. */ -extern int staticp PROTO((tree)); +extern int staticp PARAMS ((tree)); /* Gets an error if argument X is not an lvalue. Also returns 1 if X is an lvalue, 0 if not. */ -extern int lvalue_or_else PROTO((tree, const char *)); +extern int lvalue_or_else PARAMS ((tree, const char *)); /* save_expr (EXP) returns an expression equivalent to EXP but it can be used multiple times within context CTX and only evaluate EXP once. */ -extern tree save_expr PROTO((tree)); +extern tree save_expr PARAMS ((tree)); /* Returns the index of the first non-tree operand for CODE, or the number of operands if all are trees. */ -extern int first_rtl_op PROTO((enum tree_code)); +extern int first_rtl_op PARAMS ((enum tree_code)); /* unsave_expr (EXP) returns an expression equivalent to EXP but it can be used multiple times and will evaluate EXP in its entirety each time. */ -extern tree unsave_expr PROTO((tree)); +extern tree unsave_expr PARAMS ((tree)); /* Reset EXP in place so that it can be expaned again. Does not recurse into subtrees. */ -extern void unsave_expr_1 PROTO((tree)); +extern void unsave_expr_1 PARAMS ((tree)); /* Like unsave_expr_1, but recurses into all subtrees. */ -extern tree unsave_expr_now PROTO((tree)); +extern tree unsave_expr_now PARAMS ((tree)); /* If non-null, these are language-specific helper functions for unsave_expr_now. If present, LANG_UNSAVE is called before its argument (an UNSAVE_EXPR) is to be unsaved, and all other processing in unsave_expr_now is aborted. LANG_UNSAVE_EXPR_NOW is called from unsave_expr_1 for language-specific tree codes. */ -extern void (*lang_unsave) PROTO((tree *)); -extern void (*lang_unsave_expr_now) PROTO((tree)); +extern void (*lang_unsave) PARAMS ((tree *)); +extern void (*lang_unsave_expr_now) PARAMS ((tree)); /* Return 1 if EXP contains a PLACEHOLDER_EXPR; i.e., if it represents a size or offset that depends on a field within a record. @@ -1899,19 +1899,19 @@ extern void (*lang_unsave_expr_now) PROTO((tree)); Note that we only allow such expressions within simple arithmetic or a COND_EXPR. */ -extern int contains_placeholder_p PROTO((tree)); +extern int contains_placeholder_p PARAMS ((tree)); /* Return 1 if EXP contains any expressions that produce cleanups for an outer scope to deal with. Used by fold. */ -extern int has_cleanups PROTO((tree)); +extern int has_cleanups PARAMS ((tree)); /* Given a tree EXP, a FIELD_DECL F, and a replacement value R, return a tree with all occurrences of references to F in a PLACEHOLDER_EXPR replaced by R. Note that we assume here that EXP contains only arithmetic expressions. */ -extern tree substitute_in_expr PROTO((tree, tree, tree)); +extern tree substitute_in_expr PARAMS ((tree, tree, tree)); /* variable_size (EXP) is like save_expr (EXP) except that it is for the special case of something that is part of a @@ -1919,98 +1919,98 @@ extern tree substitute_in_expr PROTO((tree, tree, tree)); to compute the value at the right time when the data type belongs to a function parameter. */ -extern tree variable_size PROTO((tree)); +extern tree variable_size PARAMS ((tree)); /* stabilize_reference (EXP) returns an reference equivalent to EXP but it can be used multiple times and only evaluate the subexpressions once. */ -extern tree stabilize_reference PROTO((tree)); +extern tree stabilize_reference PARAMS ((tree)); /* Subroutine of stabilize_reference; this is called for subtrees of references. Any expression with side-effects must be put in a SAVE_EXPR to ensure that it is only evaluated once. */ -extern tree stabilize_reference_1 PROTO((tree)); +extern tree stabilize_reference_1 PARAMS ((tree)); /* Return EXP, stripped of any conversions to wider types in such a way that the result of converting to type FOR_TYPE is the same as if EXP were converted to FOR_TYPE. If FOR_TYPE is 0, it signifies EXP's type. */ -extern tree get_unwidened PROTO((tree, tree)); +extern tree get_unwidened PARAMS ((tree, tree)); /* Return OP or a simpler expression for a narrower value which can be sign-extended or zero-extended to give back OP. Store in *UNSIGNEDP_PTR either 1 if the value should be zero-extended or 0 if the value should be sign-extended. */ -extern tree get_narrower PROTO((tree, int *)); +extern tree get_narrower PARAMS ((tree, int *)); /* Given MODE and UNSIGNEDP, return a suitable type-tree with that mode. The definition of this resides in language-specific code as the repertoire of available types may vary. */ -extern tree type_for_mode PROTO((enum machine_mode, int)); +extern tree type_for_mode PARAMS ((enum machine_mode, int)); /* Given PRECISION and UNSIGNEDP, return a suitable type-tree for an integer type with at least that precision. The definition of this resides in language-specific code as the repertoire of available types may vary. */ -extern tree type_for_size PROTO((unsigned, int)); +extern tree type_for_size PARAMS ((unsigned, int)); /* Given an integer type T, return a type like T but unsigned. If T is unsigned, the value is T. The definition of this resides in language-specific code as the repertoire of available types may vary. */ -extern tree unsigned_type PROTO((tree)); +extern tree unsigned_type PARAMS ((tree)); /* Given an integer type T, return a type like T but signed. If T is signed, the value is T. The definition of this resides in language-specific code as the repertoire of available types may vary. */ -extern tree signed_type PROTO((tree)); +extern tree signed_type PARAMS ((tree)); /* This function must be defined in the language-specific files. expand_expr calls it to build the cleanup-expression for a TARGET_EXPR. This is defined in a language-specific file. */ -extern tree maybe_build_cleanup PROTO((tree)); +extern tree maybe_build_cleanup PARAMS ((tree)); /* Given an expression EXP that may be a COMPONENT_REF or an ARRAY_REF, look for nested component-refs or array-refs at constant positions and find the ultimate containing object, which is returned. */ -extern tree get_inner_reference PROTO((tree, int *, int *, tree *, +extern tree get_inner_reference PARAMS ((tree, int *, int *, tree *, enum machine_mode *, int *, int *, int *)); /* Given a DECL or TYPE, return the scope in which it was declared, or NUL_TREE if there is no containing scope. */ -extern tree get_containing_scope PROTO((tree)); +extern tree get_containing_scope PARAMS ((tree)); /* Return the FUNCTION_DECL which provides this _DECL with its context, or zero if none. */ -extern tree decl_function_context PROTO((tree)); +extern tree decl_function_context PARAMS ((tree)); /* Return the RECORD_TYPE, UNION_TYPE, or QUAL_UNION_TYPE which provides this _DECL with its context, or zero if none. */ -extern tree decl_type_context PROTO((tree)); +extern tree decl_type_context PARAMS ((tree)); /* Given the FUNCTION_DECL for the current function, return zero if it is ok for this function to be inline. Otherwise return a warning message with a single %s for the function's name. */ -extern const char *function_cannot_inline_p PROTO((tree)); +extern const char *function_cannot_inline_p PARAMS ((tree)); /* Return 1 if EXPR is the real constant zero. */ -extern int real_zerop PROTO((tree)); +extern int real_zerop PARAMS ((tree)); /* Declare commonly used variables for tree structure. */ @@ -2051,91 +2051,91 @@ extern int all_types_permanent; 2: and any other information that might be interesting, such as function parameter types in C++. */ -extern const char *(*decl_printable_name) PROTO((tree, int)); +extern const char *(*decl_printable_name) PARAMS ((tree, int)); /* Pointer to function to finish handling an incomplete decl at the end of compilation. */ -extern void (*incomplete_decl_finalize_hook) PROTO((tree)); +extern void (*incomplete_decl_finalize_hook) PARAMS ((tree)); -extern char *init_parse PROTO((char *)); -extern void finish_parse PROTO((void)); +extern char *init_parse PARAMS ((char *)); +extern void finish_parse PARAMS ((void)); extern const char * const language_string; /* Declare a predefined function. Return the declaration. This function is provided by each language frontend. */ -extern tree builtin_function PROTO((const char *, tree, int, +extern tree builtin_function PARAMS ((const char *, tree, int, enum built_in_class, const char *)); /* In tree.c */ -extern char *perm_calloc PROTO((int, long)); -extern tree get_file_function_name PROTO((int)); -extern tree get_file_function_name_long PROTO((const char *)); -extern tree get_set_constructor_bits PROTO((tree, char *, int)); -extern tree get_set_constructor_bytes PROTO((tree, +extern char *perm_calloc PARAMS ((int, long)); +extern tree get_file_function_name PARAMS ((int)); +extern tree get_file_function_name_long PARAMS ((const char *)); +extern tree get_set_constructor_bits PARAMS ((tree, char *, int)); +extern tree get_set_constructor_bytes PARAMS ((tree, unsigned char *, int)); -extern int get_alias_set PROTO((tree)); -extern int new_alias_set PROTO((void)); -extern int (*lang_get_alias_set) PROTO((tree)); -extern tree get_callee_fndecl PROTO((tree)); +extern int get_alias_set PARAMS ((tree)); +extern int new_alias_set PARAMS ((void)); +extern int (*lang_get_alias_set) PARAMS ((tree)); +extern tree get_callee_fndecl PARAMS ((tree)); /* In stmt.c */ -extern int in_control_zone_p PROTO((void)); -extern void expand_fixups PROTO((struct rtx_def *)); -extern tree expand_start_stmt_expr PROTO((void)); -extern tree expand_end_stmt_expr PROTO((tree)); -extern void expand_expr_stmt PROTO((tree)); -extern int warn_if_unused_value PROTO((tree)); -extern void expand_decl_init PROTO((tree)); -extern void clear_last_expr PROTO((void)); -extern void expand_label PROTO((tree)); -extern void expand_goto PROTO((tree)); -extern void expand_asm PROTO((tree)); -extern void expand_start_cond PROTO((tree, int)); -extern void expand_end_cond PROTO((void)); -extern void expand_start_else PROTO((void)); -extern void expand_start_elseif PROTO((tree)); -extern struct nesting *expand_start_loop PROTO((int)); -extern struct nesting *expand_start_loop_continue_elsewhere PROTO((int)); -extern void expand_loop_continue_here PROTO((void)); -extern void expand_end_loop PROTO((void)); -extern int expand_continue_loop PROTO((struct nesting *)); -extern int expand_exit_loop PROTO((struct nesting *)); -extern int expand_exit_loop_if_false PROTO((struct nesting *, +extern int in_control_zone_p PARAMS ((void)); +extern void expand_fixups PARAMS ((struct rtx_def *)); +extern tree expand_start_stmt_expr PARAMS ((void)); +extern tree expand_end_stmt_expr PARAMS ((tree)); +extern void expand_expr_stmt PARAMS ((tree)); +extern int warn_if_unused_value PARAMS ((tree)); +extern void expand_decl_init PARAMS ((tree)); +extern void clear_last_expr PARAMS ((void)); +extern void expand_label PARAMS ((tree)); +extern void expand_goto PARAMS ((tree)); +extern void expand_asm PARAMS ((tree)); +extern void expand_start_cond PARAMS ((tree, int)); +extern void expand_end_cond PARAMS ((void)); +extern void expand_start_else PARAMS ((void)); +extern void expand_start_elseif PARAMS ((tree)); +extern struct nesting *expand_start_loop PARAMS ((int)); +extern struct nesting *expand_start_loop_continue_elsewhere PARAMS ((int)); +extern void expand_loop_continue_here PARAMS ((void)); +extern void expand_end_loop PARAMS ((void)); +extern int expand_continue_loop PARAMS ((struct nesting *)); +extern int expand_exit_loop PARAMS ((struct nesting *)); +extern int expand_exit_loop_if_false PARAMS ((struct nesting *, tree)); -extern int expand_exit_something PROTO((void)); +extern int expand_exit_something PARAMS ((void)); -extern void expand_null_return PROTO((void)); -extern void expand_return PROTO((tree)); -extern int optimize_tail_recursion PROTO((tree, struct rtx_def *)); -extern void expand_start_bindings_and_block PROTO((int, tree)); +extern void expand_null_return PARAMS ((void)); +extern void expand_return PARAMS ((tree)); +extern int optimize_tail_recursion PARAMS ((tree, struct rtx_def *)); +extern void expand_start_bindings_and_block PARAMS ((int, tree)); #define expand_start_bindings(flags) \ expand_start_bindings_and_block(flags, NULL_TREE) -extern void expand_end_bindings PROTO((tree, int, int)); -extern void warn_about_unused_variables PROTO((tree)); -extern void start_cleanup_deferral PROTO((void)); -extern void end_cleanup_deferral PROTO((void)); -extern void mark_block_as_eh_region PROTO((void)); -extern void mark_block_as_not_eh_region PROTO((void)); -extern int is_eh_region PROTO((void)); -extern int conditional_context PROTO((void)); -extern tree last_cleanup_this_contour PROTO((void)); -extern int expand_dhc_cleanup PROTO((tree)); -extern int expand_dcc_cleanup PROTO((tree)); -extern void expand_start_case PROTO((int, tree, tree, +extern void expand_end_bindings PARAMS ((tree, int, int)); +extern void warn_about_unused_variables PARAMS ((tree)); +extern void start_cleanup_deferral PARAMS ((void)); +extern void end_cleanup_deferral PARAMS ((void)); +extern void mark_block_as_eh_region PARAMS ((void)); +extern void mark_block_as_not_eh_region PARAMS ((void)); +extern int is_eh_region PARAMS ((void)); +extern int conditional_context PARAMS ((void)); +extern tree last_cleanup_this_contour PARAMS ((void)); +extern int expand_dhc_cleanup PARAMS ((tree)); +extern int expand_dcc_cleanup PARAMS ((tree)); +extern void expand_start_case PARAMS ((int, tree, tree, const char *)); -extern void expand_end_case PROTO((tree)); -extern int pushcase PROTO((tree, +extern void expand_end_case PARAMS ((tree)); +extern int pushcase PARAMS ((tree, tree (*) (tree, tree), tree, tree *)); -extern int pushcase_range PROTO((tree, tree, +extern int pushcase_range PARAMS ((tree, tree, tree (*) (tree, tree), tree, tree *)); -extern void using_eh_for_cleanups PROTO((void)); -extern int stmt_loop_nest_empty PROTO((void)); +extern void using_eh_for_cleanups PARAMS ((void)); +extern int stmt_loop_nest_empty PARAMS ((void)); /* In fold-const.c */ @@ -2145,327 +2145,327 @@ extern int stmt_loop_nest_empty PROTO((void)); if the argument itself cannot be simplified, its subexpressions are not changed. */ -extern tree fold PROTO((tree)); +extern tree fold PARAMS ((tree)); -extern int force_fit_type PROTO((tree, int)); -extern int add_double PROTO((HOST_WIDE_INT, HOST_WIDE_INT, +extern int force_fit_type PARAMS ((tree, int)); +extern int add_double PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT *, HOST_WIDE_INT *)); -extern int neg_double PROTO((HOST_WIDE_INT, HOST_WIDE_INT, +extern int neg_double PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT *, HOST_WIDE_INT *)); -extern int mul_double PROTO((HOST_WIDE_INT, HOST_WIDE_INT, +extern int mul_double PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT *, HOST_WIDE_INT *)); -extern void lshift_double PROTO((HOST_WIDE_INT, HOST_WIDE_INT, +extern void lshift_double PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT, int, HOST_WIDE_INT *, HOST_WIDE_INT *, int)); -extern void rshift_double PROTO((HOST_WIDE_INT, HOST_WIDE_INT, +extern void rshift_double PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT, int, HOST_WIDE_INT *, HOST_WIDE_INT *, int)); -extern void lrotate_double PROTO((HOST_WIDE_INT, HOST_WIDE_INT, +extern void lrotate_double PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT, int, HOST_WIDE_INT *, HOST_WIDE_INT *)); -extern void rrotate_double PROTO((HOST_WIDE_INT, HOST_WIDE_INT, +extern void rrotate_double PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT, int, HOST_WIDE_INT *, HOST_WIDE_INT *)); -extern int operand_equal_p PROTO((tree, tree, int)); -extern tree invert_truthvalue PROTO((tree)); +extern int operand_equal_p PARAMS ((tree, tree, int)); +extern tree invert_truthvalue PARAMS ((tree)); /* In builtins.c. Given a type, apply default promotions wrt unnamed function arguments and return the new type. Return NULL_TREE if no change. Required by any language that supports variadic arguments. */ -extern tree (*lang_type_promotes_to) PROTO((tree)); +extern tree (*lang_type_promotes_to) PARAMS ((tree)); /* Interface of the DWARF2 unwind info support. */ /* Decide whether we want to emit frame unwind information for the current translation unit. */ -extern int dwarf2out_do_frame PROTO((void)); +extern int dwarf2out_do_frame PARAMS ((void)); /* Generate a new label for the CFI info to refer to. */ -extern char *dwarf2out_cfi_label PROTO((void)); +extern char *dwarf2out_cfi_label PARAMS ((void)); /* Entry point to update the canonical frame address (CFA). */ -extern void dwarf2out_def_cfa PROTO((char *, unsigned, long)); +extern void dwarf2out_def_cfa PARAMS ((char *, unsigned, long)); /* Add the CFI for saving a register window. */ -extern void dwarf2out_window_save PROTO((char *)); +extern void dwarf2out_window_save PARAMS ((char *)); /* Add a CFI to update the running total of the size of arguments pushed onto the stack. */ -extern void dwarf2out_args_size PROTO((char *, long)); +extern void dwarf2out_args_size PARAMS ((char *, long)); /* Entry point for saving a register to the stack. */ -extern void dwarf2out_reg_save PROTO((char *, unsigned, long)); +extern void dwarf2out_reg_save PARAMS ((char *, unsigned, long)); /* Entry point for saving the return address in the stack. */ -extern void dwarf2out_return_save PROTO((char *, long)); +extern void dwarf2out_return_save PARAMS ((char *, long)); /* Entry point for saving the return address in a register. */ -extern void dwarf2out_return_reg PROTO((char *, unsigned)); +extern void dwarf2out_return_reg PARAMS ((char *, unsigned)); /* Output a marker (i.e. a label) for the beginning of a function, before the prologue. */ -extern void dwarf2out_begin_prologue PROTO((void)); +extern void dwarf2out_begin_prologue PARAMS ((void)); /* Output a marker (i.e. a label) for the absolute end of the generated code for a function definition. */ -extern void dwarf2out_end_epilogue PROTO((void)); +extern void dwarf2out_end_epilogue PARAMS ((void)); /* The language front-end must define these functions. */ /* Function of no arguments for initializing options. */ -extern void lang_init_options PROTO((void)); +extern void lang_init_options PARAMS ((void)); /* Function of no arguments for initializing lexical scanning. */ -extern void init_lex PROTO((void)); +extern void init_lex PARAMS ((void)); /* Function of no arguments for initializing the symbol table. */ -extern void init_decl_processing PROTO((void)); +extern void init_decl_processing PARAMS ((void)); /* Functions called with no arguments at the beginning and end or processing the input source file. */ -extern void lang_init PROTO((void)); -extern void lang_finish PROTO((void)); +extern void lang_init PARAMS ((void)); +extern void lang_finish PARAMS ((void)); /* Function to identify which front-end produced the output file. */ -extern const char *lang_identify PROTO((void)); +extern const char *lang_identify PARAMS ((void)); /* Called by report_error_function to print out function name. * Default may be overridden by language front-ends. */ -extern void (*print_error_function) PROTO((const char *)); +extern void (*print_error_function) PARAMS ((const char *)); /* Function to replace the DECL_LANG_SPECIFIC field of a DECL with a copy. */ -extern void copy_lang_decl PROTO((tree)); +extern void copy_lang_decl PARAMS ((tree)); /* Function called with no arguments to parse and compile the input. */ -extern int yyparse PROTO((void)); +extern int yyparse PARAMS ((void)); /* Function called with option as argument to decode options starting with -f or -W or +. It should return nonzero if it handles the option. */ -extern int lang_decode_option PROTO((int, char **)); +extern int lang_decode_option PARAMS ((int, char **)); /* Functions for processing symbol declarations. */ /* Function to enter a new lexical scope. Takes one argument: always zero when called from outside the front end. */ -extern void pushlevel PROTO((int)); +extern void pushlevel PARAMS ((int)); /* Function to exit a lexical scope. It returns a BINDING for that scope. Takes three arguments: KEEP -- nonzero if there were declarations in this scope. REVERSE -- reverse the order of decls before returning them. FUNCTIONBODY -- nonzero if this level is the body of a function. */ -extern tree poplevel PROTO((int, int, int)); +extern tree poplevel PARAMS ((int, int, int)); /* Set the BLOCK node for the current scope level. */ -extern void set_block PROTO((tree)); +extern void set_block PARAMS ((tree)); /* Function to add a decl to the current scope level. Takes one argument, a decl to add. Returns that decl, or, if the same symbol is already declared, may return a different decl for that name. */ -extern tree pushdecl PROTO((tree)); +extern tree pushdecl PARAMS ((tree)); /* Function to return the chain of decls so far in the current scope level. */ -extern tree getdecls PROTO((void)); +extern tree getdecls PARAMS ((void)); /* Function to return the chain of structure tags in the current scope level. */ -extern tree gettags PROTO((void)); +extern tree gettags PARAMS ((void)); -extern tree build_range_type PROTO((tree, tree, tree)); +extern tree build_range_type PARAMS ((tree, tree, tree)); /* Call when starting to parse a declaration: make expressions in the declaration last the length of the function. Returns an argument that should be passed to resume_momentary later. */ -extern int suspend_momentary PROTO((void)); +extern int suspend_momentary PARAMS ((void)); -extern int allocation_temporary_p PROTO((void)); +extern int allocation_temporary_p PARAMS ((void)); /* Call when finished parsing a declaration: restore the treatment of node-allocation that was in effect before the suspension. YES should be the value previously returned by suspend_momentary. */ -extern void resume_momentary PROTO((int)); +extern void resume_momentary PARAMS ((int)); /* Called after finishing a record, union or enumeral type. */ -extern void rest_of_type_compilation PROTO((tree, int)); +extern void rest_of_type_compilation PARAMS ((tree, int)); /* Save the current set of obstacks, but don't change them. */ -extern void push_obstacks_nochange PROTO((void)); +extern void push_obstacks_nochange PARAMS ((void)); -extern void permanent_allocation PROTO((int)); +extern void permanent_allocation PARAMS ((int)); -extern void push_momentary PROTO((void)); +extern void push_momentary PARAMS ((void)); -extern void clear_momentary PROTO((void)); +extern void clear_momentary PARAMS ((void)); -extern void pop_momentary PROTO((void)); +extern void pop_momentary PARAMS ((void)); -extern void end_temporary_allocation PROTO((void)); +extern void end_temporary_allocation PARAMS ((void)); /* Pop the obstack selection stack. */ -extern void pop_obstacks PROTO((void)); +extern void pop_obstacks PARAMS ((void)); /* In tree.c */ -extern int really_constant_p PROTO ((tree)); -extern void push_obstacks PROTO ((struct obstack *, +extern int really_constant_p PARAMS ((tree)); +extern void push_obstacks PARAMS ((struct obstack *, struct obstack *)); -extern void pop_momentary_nofree PROTO ((void)); -extern void preserve_momentary PROTO ((void)); -extern void saveable_allocation PROTO ((void)); -extern void temporary_allocation PROTO ((void)); -extern void resume_temporary_allocation PROTO ((void)); -extern tree get_file_function_name PROTO ((int)); -extern void set_identifier_size PROTO ((int)); -extern int int_fits_type_p PROTO ((tree, tree)); -extern int tree_log2 PROTO ((tree)); -extern void preserve_initializer PROTO ((void)); -extern void preserve_data PROTO ((void)); -extern int object_permanent_p PROTO ((tree)); -extern int type_precision PROTO ((tree)); -extern int simple_cst_equal PROTO ((tree, tree)); -extern int type_list_equal PROTO ((tree, tree)); -extern int chain_member PROTO ((tree, tree)); -extern int chain_member_purpose PROTO ((tree, tree)); -extern int chain_member_value PROTO ((tree, tree)); -extern tree listify PROTO ((tree)); -extern tree type_hash_lookup PROTO ((int, tree)); -extern void type_hash_add PROTO ((int, tree)); -extern int type_hash_list PROTO ((tree)); -extern int simple_cst_list_equal PROTO ((tree, tree)); -extern void debug_obstack PROTO ((char *)); -extern void rtl_in_current_obstack PROTO ((void)); -extern void rtl_in_saveable_obstack PROTO ((void)); -extern void init_tree_codes PROTO ((void)); -extern void dump_tree_statistics PROTO ((void)); -extern void print_obstack_statistics PROTO ((const char *, +extern void pop_momentary_nofree PARAMS ((void)); +extern void preserve_momentary PARAMS ((void)); +extern void saveable_allocation PARAMS ((void)); +extern void temporary_allocation PARAMS ((void)); +extern void resume_temporary_allocation PARAMS ((void)); +extern tree get_file_function_name PARAMS ((int)); +extern void set_identifier_size PARAMS ((int)); +extern int int_fits_type_p PARAMS ((tree, tree)); +extern int tree_log2 PARAMS ((tree)); +extern void preserve_initializer PARAMS ((void)); +extern void preserve_data PARAMS ((void)); +extern int object_permanent_p PARAMS ((tree)); +extern int type_precision PARAMS ((tree)); +extern int simple_cst_equal PARAMS ((tree, tree)); +extern int type_list_equal PARAMS ((tree, tree)); +extern int chain_member PARAMS ((tree, tree)); +extern int chain_member_purpose PARAMS ((tree, tree)); +extern int chain_member_value PARAMS ((tree, tree)); +extern tree listify PARAMS ((tree)); +extern tree type_hash_lookup PARAMS ((int, tree)); +extern void type_hash_add PARAMS ((int, tree)); +extern int type_hash_list PARAMS ((tree)); +extern int simple_cst_list_equal PARAMS ((tree, tree)); +extern void debug_obstack PARAMS ((char *)); +extern void rtl_in_current_obstack PARAMS ((void)); +extern void rtl_in_saveable_obstack PARAMS ((void)); +extern void init_tree_codes PARAMS ((void)); +extern void dump_tree_statistics PARAMS ((void)); +extern void print_obstack_statistics PARAMS ((const char *, struct obstack *)); #ifdef BUFSIZ -extern void print_obstack_name PROTO ((char *, FILE *, const char *)); +extern void print_obstack_name PARAMS ((char *, FILE *, const char *)); #endif -extern void expand_function_end PROTO ((char *, int, int)); -extern void expand_function_start PROTO ((tree, int)); -extern int real_onep PROTO ((tree)); -extern int real_twop PROTO ((tree)); -extern void start_identifier_warnings PROTO ((void)); -extern void gcc_obstack_init PROTO ((struct obstack *)); -extern void init_obstacks PROTO ((void)); -extern void obfree PROTO ((char *)); -extern void build_common_tree_nodes PROTO ((int)); -extern void build_common_tree_nodes_2 PROTO ((int)); +extern void expand_function_end PARAMS ((char *, int, int)); +extern void expand_function_start PARAMS ((tree, int)); +extern int real_onep PARAMS ((tree)); +extern int real_twop PARAMS ((tree)); +extern void start_identifier_warnings PARAMS ((void)); +extern void gcc_obstack_init PARAMS ((struct obstack *)); +extern void init_obstacks PARAMS ((void)); +extern void obfree PARAMS ((char *)); +extern void build_common_tree_nodes PARAMS ((int)); +extern void build_common_tree_nodes_2 PARAMS ((int)); /* In function.c */ -extern void setjmp_protect_args PROTO ((void)); -extern void setjmp_protect PROTO ((tree)); -extern void expand_main_function PROTO ((void)); -extern void mark_varargs PROTO ((void)); -extern void init_dummy_function_start PROTO ((void)); -extern void expand_dummy_function_end PROTO ((void)); -extern void init_function_for_compilation PROTO ((void)); -extern void init_function_start PROTO ((tree, char *, int)); -extern void assign_parms PROTO ((tree)); -extern void put_var_into_stack PROTO ((tree)); -extern void uninitialized_vars_warning PROTO ((tree)); -extern void setjmp_args_warning PROTO ((void)); -extern void mark_all_temps_used PROTO ((void)); -extern void init_temp_slots PROTO ((void)); -extern void combine_temp_slots PROTO ((void)); -extern void free_temp_slots PROTO ((void)); -extern void pop_temp_slots PROTO ((void)); -extern void push_temp_slots PROTO ((void)); -extern void preserve_temp_slots PROTO ((struct rtx_def *)); -extern int aggregate_value_p PROTO ((tree)); -extern tree reorder_blocks PROTO ((tree, +extern void setjmp_protect_args PARAMS ((void)); +extern void setjmp_protect PARAMS ((tree)); +extern void expand_main_function PARAMS ((void)); +extern void mark_varargs PARAMS ((void)); +extern void init_dummy_function_start PARAMS ((void)); +extern void expand_dummy_function_end PARAMS ((void)); +extern void init_function_for_compilation PARAMS ((void)); +extern void init_function_start PARAMS ((tree, char *, int)); +extern void assign_parms PARAMS ((tree)); +extern void put_var_into_stack PARAMS ((tree)); +extern void uninitialized_vars_warning PARAMS ((tree)); +extern void setjmp_args_warning PARAMS ((void)); +extern void mark_all_temps_used PARAMS ((void)); +extern void init_temp_slots PARAMS ((void)); +extern void combine_temp_slots PARAMS ((void)); +extern void free_temp_slots PARAMS ((void)); +extern void pop_temp_slots PARAMS ((void)); +extern void push_temp_slots PARAMS ((void)); +extern void preserve_temp_slots PARAMS ((struct rtx_def *)); +extern int aggregate_value_p PARAMS ((tree)); +extern tree reorder_blocks PARAMS ((tree, struct rtx_def *)); -extern void free_temps_for_rtl_expr PROTO ((tree)); -extern void instantiate_virtual_regs PROTO ((tree, struct rtx_def *)); -extern int max_parm_reg_num PROTO ((void)); -extern void push_function_context PROTO ((void)); -extern void pop_function_context PROTO ((void)); -extern void push_function_context_to PROTO ((tree)); -extern void pop_function_context_from PROTO ((tree)); +extern void free_temps_for_rtl_expr PARAMS ((tree)); +extern void instantiate_virtual_regs PARAMS ((tree, struct rtx_def *)); +extern int max_parm_reg_num PARAMS ((void)); +extern void push_function_context PARAMS ((void)); +extern void pop_function_context PARAMS ((void)); +extern void push_function_context_to PARAMS ((tree)); +extern void pop_function_context_from PARAMS ((tree)); /* In print-rtl.c */ #ifdef BUFSIZ -extern void print_rtl PROTO ((FILE *, struct rtx_def *)); +extern void print_rtl PARAMS ((FILE *, struct rtx_def *)); #endif /* In print-tree.c */ -extern void debug_tree PROTO ((tree)); +extern void debug_tree PARAMS ((tree)); #ifdef BUFSIZ -extern void print_node PROTO ((FILE *, const char *, tree, int)); -extern void print_node_brief PROTO ((FILE *, const char *, tree, int)); -extern void indent_to PROTO ((FILE *, int)); +extern void print_node PARAMS ((FILE *, const char *, tree, int)); +extern void print_node_brief PARAMS ((FILE *, const char *, tree, int)); +extern void indent_to PARAMS ((FILE *, int)); #endif /* In expr.c */ -extern void emit_queue PROTO ((void)); -extern int apply_args_register_offset PROTO ((int)); +extern void emit_queue PARAMS ((void)); +extern int apply_args_register_offset PARAMS ((int)); extern struct rtx_def *expand_builtin_return_addr - PROTO ((enum built_in_function, int, struct rtx_def *)); -extern void do_pending_stack_adjust PROTO ((void)); -extern struct rtx_def *expand_assignment PROTO ((tree, tree, int, int)); -extern struct rtx_def *store_expr PROTO ((tree, struct rtx_def *, + PARAMS ((enum built_in_function, int, struct rtx_def *)); +extern void do_pending_stack_adjust PARAMS ((void)); +extern struct rtx_def *expand_assignment PARAMS ((tree, tree, int, int)); +extern struct rtx_def *store_expr PARAMS ((tree, struct rtx_def *, int)); -extern void check_max_integer_computation_mode PROTO ((tree)); +extern void check_max_integer_computation_mode PARAMS ((tree)); /* In emit-rtl.c */ -extern void start_sequence_for_rtl_expr PROTO ((tree)); -extern struct rtx_def *emit_line_note_after PROTO ((char *, int, +extern void start_sequence_for_rtl_expr PARAMS ((tree)); +extern struct rtx_def *emit_line_note_after PARAMS ((char *, int, struct rtx_def *)); -extern struct rtx_def *emit_line_note PROTO ((char *, int)); -extern struct rtx_def *emit_line_note_force PROTO ((char *, int)); +extern struct rtx_def *emit_line_note PARAMS ((char *, int)); +extern struct rtx_def *emit_line_note_force PARAMS ((char *, int)); /* In calls.c */ -extern void special_function_p PROTO ((tree, int *, int *, +extern void special_function_p PARAMS ((tree, int *, int *, int *, int *)); /* In c-typeck.c */ -extern int mark_addressable PROTO ((tree)); -extern void incomplete_type_error PROTO ((tree, tree)); +extern int mark_addressable PARAMS ((tree)); +extern void incomplete_type_error PARAMS ((tree, tree)); /* In c-lang.c */ -extern void print_lang_statistics PROTO ((void)); +extern void print_lang_statistics PARAMS ((void)); /* In c-common.c */ -extern tree truthvalue_conversion PROTO ((tree)); -extern int min_precision PROTO ((tree, int)); -extern void split_specs_attrs PROTO ((tree, tree *, tree *)); +extern tree truthvalue_conversion PARAMS ((tree)); +extern int min_precision PARAMS ((tree, int)); +extern void split_specs_attrs PARAMS ((tree, tree *, tree *)); /* In c-decl.c */ #ifdef BUFSIZ -extern void print_lang_decl PROTO ((FILE *, tree, int)); -extern void print_lang_type PROTO ((FILE *, tree, int)); -extern void print_lang_identifier PROTO ((FILE *, tree, int)); +extern void print_lang_decl PARAMS ((FILE *, tree, int)); +extern void print_lang_type PARAMS ((FILE *, tree, int)); +extern void print_lang_identifier PARAMS ((FILE *, tree, int)); #endif -extern int global_bindings_p PROTO ((void)); -extern void insert_block PROTO ((tree)); +extern int global_bindings_p PARAMS ((void)); +extern void insert_block PARAMS ((tree)); /* In integrate.c */ -extern void save_for_inline_nocopy PROTO ((tree)); -extern void save_for_inline_copying PROTO ((tree)); -extern void set_decl_abstract_flags PROTO ((tree, int)); -extern void output_inline_function PROTO ((tree)); +extern void save_for_inline_nocopy PARAMS ((tree)); +extern void save_for_inline_copying PARAMS ((tree)); +extern void set_decl_abstract_flags PARAMS ((tree, int)); +extern void output_inline_function PARAMS ((tree)); /* In c-lex.c */ -extern void set_yydebug PROTO ((int)); +extern void set_yydebug PARAMS ((int)); /* In stor-layout.c */ -extern void fixup_signed_type PROTO ((tree)); +extern void fixup_signed_type PARAMS ((tree)); /* varasm.c */ -extern void make_decl_rtl PROTO ((tree, const char *, int)); -extern void make_decl_one_only PROTO ((tree)); -extern int supports_one_only PROTO ((void)); -extern void variable_section PROTO ((tree, int)); +extern void make_decl_rtl PARAMS ((tree, const char *, int)); +extern void make_decl_one_only PARAMS ((tree)); +extern int supports_one_only PARAMS ((void)); +extern void variable_section PARAMS ((tree, int)); /* In fold-const.c */ -extern int div_and_round_double PROTO ((enum tree_code, int, +extern int div_and_round_double PARAMS ((enum tree_code, int, HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT, HOST_WIDE_INT *, @@ -2474,82 +2474,82 @@ extern int div_and_round_double PROTO ((enum tree_code, int, HOST_WIDE_INT *)); /* In stmt.c */ -extern void emit_nop PROTO ((void)); -extern void expand_computed_goto PROTO ((tree)); -extern struct rtx_def *label_rtx PROTO ((tree)); -extern void expand_asm_operands PROTO ((tree, tree, tree, tree, int, +extern void emit_nop PARAMS ((void)); +extern void expand_computed_goto PARAMS ((tree)); +extern struct rtx_def *label_rtx PARAMS ((tree)); +extern void expand_asm_operands PARAMS ((tree, tree, tree, tree, int, char *, int)); -extern int any_pending_cleanups PROTO ((int)); -extern void init_stmt PROTO ((void)); -extern void init_stmt_for_function PROTO ((void)); -extern int drop_through_at_end_p PROTO ((void)); -extern void expand_start_target_temps PROTO ((void)); -extern void expand_end_target_temps PROTO ((void)); -extern void expand_elseif PROTO ((tree)); -extern void expand_decl PROTO ((tree)); -extern int expand_decl_cleanup PROTO ((tree, tree)); -extern void expand_anon_union_decl PROTO ((tree, tree, tree)); -extern void move_cleanups_up PROTO ((void)); -extern void expand_start_case_dummy PROTO ((void)); -extern void expand_end_case_dummy PROTO ((void)); -extern tree case_index_expr_type PROTO ((void)); -extern HOST_WIDE_INT all_cases_count PROTO ((tree, int *)); -extern void check_for_full_enumeration_handling PROTO ((tree)); -extern void declare_nonlocal_label PROTO ((tree)); +extern int any_pending_cleanups PARAMS ((int)); +extern void init_stmt PARAMS ((void)); +extern void init_stmt_for_function PARAMS ((void)); +extern int drop_through_at_end_p PARAMS ((void)); +extern void expand_start_target_temps PARAMS ((void)); +extern void expand_end_target_temps PARAMS ((void)); +extern void expand_elseif PARAMS ((tree)); +extern void expand_decl PARAMS ((tree)); +extern int expand_decl_cleanup PARAMS ((tree, tree)); +extern void expand_anon_union_decl PARAMS ((tree, tree, tree)); +extern void move_cleanups_up PARAMS ((void)); +extern void expand_start_case_dummy PARAMS ((void)); +extern void expand_end_case_dummy PARAMS ((void)); +extern tree case_index_expr_type PARAMS ((void)); +extern HOST_WIDE_INT all_cases_count PARAMS ((tree, int *)); +extern void check_for_full_enumeration_handling PARAMS ((tree)); +extern void declare_nonlocal_label PARAMS ((tree)); #ifdef BUFSIZ -extern void lang_print_xnode PROTO ((FILE *, tree, int)); +extern void lang_print_xnode PARAMS ((FILE *, tree, int)); #endif /* If KIND=='I', return a suitable global initializer (constructor) name. If KIND=='D', return a suitable global clean-up (destructor) name. */ -extern tree get_file_function_name PROTO((int)); +extern tree get_file_function_name PARAMS ((int)); /* Interface of the DWARF2 unwind info support. */ /* Decide whether we want to emit frame unwind information for the current translation unit. */ -extern int dwarf2out_do_frame PROTO((void)); +extern int dwarf2out_do_frame PARAMS ((void)); /* Generate a new label for the CFI info to refer to. */ -extern char *dwarf2out_cfi_label PROTO((void)); +extern char *dwarf2out_cfi_label PARAMS ((void)); /* Entry point to update the canonical frame address (CFA). */ -extern void dwarf2out_def_cfa PROTO((char *, unsigned, long)); +extern void dwarf2out_def_cfa PARAMS ((char *, unsigned, long)); /* Add the CFI for saving a register window. */ -extern void dwarf2out_window_save PROTO((char *)); +extern void dwarf2out_window_save PARAMS ((char *)); /* Add a CFI to update the running total of the size of arguments pushed onto the stack. */ -extern void dwarf2out_args_size PROTO((char *, long)); +extern void dwarf2out_args_size PARAMS ((char *, long)); /* Entry point for saving a register to the stack. */ -extern void dwarf2out_reg_save PROTO((char *, unsigned, long)); +extern void dwarf2out_reg_save PARAMS ((char *, unsigned, long)); /* Entry point for saving the return address in the stack. */ -extern void dwarf2out_return_save PROTO((char *, long)); +extern void dwarf2out_return_save PARAMS ((char *, long)); /* Entry point for saving the return address in a register. */ -extern void dwarf2out_return_reg PROTO((char *, unsigned)); +extern void dwarf2out_return_reg PARAMS ((char *, unsigned)); /* Output a marker (i.e. a label) for the beginning of a function, before the prologue. */ -extern void dwarf2out_begin_prologue PROTO((void)); +extern void dwarf2out_begin_prologue PARAMS ((void)); /* Output a marker (i.e. a label) for the absolute end of the generated code for a function definition. */ -extern void dwarf2out_end_epilogue PROTO((void)); +extern void dwarf2out_end_epilogue PARAMS ((void)); /* Redefine abort to report an internal error w/o coredump, and reporting the location of the error in the source file. This logic @@ -2557,7 +2557,7 @@ extern void dwarf2out_end_epilogue PROTO((void)); special abort includes one or both. toplev.h gets too few files, system.h gets too many. */ -extern void fancy_abort PROTO((const char *, int, const char *)) +extern void fancy_abort PARAMS ((const char *, int, const char *)) ATTRIBUTE_NORETURN; #if (GCC_VERSION >= 2007) #define abort() fancy_abort (__FILE__, __LINE__, __PRETTY_FUNCTION__) diff --git a/gcc/unroll.c b/gcc/unroll.c index d443af9..9225a9c 100644 --- a/gcc/unroll.c +++ b/gcc/unroll.c @@ -194,24 +194,24 @@ static int *splittable_regs_updates; /* Forward declarations. */ -static void init_reg_map PROTO((struct inline_remap *, int)); -static rtx calculate_giv_inc PROTO((rtx, rtx, int)); -static rtx initial_reg_note_copy PROTO((rtx, struct inline_remap *)); -static void final_reg_note_copy PROTO((rtx, struct inline_remap *)); -static void copy_loop_body PROTO((rtx, rtx, struct inline_remap *, rtx, int, +static void init_reg_map PARAMS ((struct inline_remap *, int)); +static rtx calculate_giv_inc PARAMS ((rtx, rtx, int)); +static rtx initial_reg_note_copy PARAMS ((rtx, struct inline_remap *)); +static void final_reg_note_copy PARAMS ((rtx, struct inline_remap *)); +static void copy_loop_body PARAMS ((rtx, rtx, struct inline_remap *, rtx, int, enum unroll_types, rtx, rtx, rtx, rtx)); -static void iteration_info PROTO((rtx, rtx *, rtx *, rtx, rtx)); -static int find_splittable_regs PROTO((enum unroll_types, rtx, rtx, rtx, int, +static void iteration_info PARAMS ((rtx, rtx *, rtx *, rtx, rtx)); +static int find_splittable_regs PARAMS ((enum unroll_types, rtx, rtx, rtx, int, unsigned HOST_WIDE_INT)); -static int find_splittable_givs PROTO((struct iv_class *, enum unroll_types, +static int find_splittable_givs PARAMS ((struct iv_class *, enum unroll_types, rtx, rtx, rtx, int)); -static int reg_dead_after_loop PROTO((rtx, rtx, rtx)); -static rtx fold_rtx_mult_add PROTO((rtx, rtx, rtx, enum machine_mode)); -static int verify_addresses PROTO((struct induction *, rtx, int)); -static rtx remap_split_bivs PROTO((rtx)); -static rtx find_common_reg_term PROTO((rtx, rtx)); -static rtx subtract_reg_term PROTO((rtx, rtx)); -static rtx loop_find_equiv_value PROTO((rtx, rtx)); +static int reg_dead_after_loop PARAMS ((rtx, rtx, rtx)); +static rtx fold_rtx_mult_add PARAMS ((rtx, rtx, rtx, enum machine_mode)); +static int verify_addresses PARAMS ((struct induction *, rtx, int)); +static rtx remap_split_bivs PARAMS ((rtx)); +static rtx find_common_reg_term PARAMS ((rtx, rtx)); +static rtx subtract_reg_term PARAMS ((rtx, rtx)); +static rtx loop_find_equiv_value PARAMS ((rtx, rtx)); /* Try to unroll one loop and split induction variables in the loop. diff --git a/gcc/varasm.c b/gcc/varasm.c index c0de7a8..ff3b45e 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -149,45 +149,45 @@ int size_directive_output; tree last_assemble_variable_decl; -static const char *strip_reg_name PROTO((const char *)); -static int contains_pointers_p PROTO((tree)); -static void decode_addr_const PROTO((tree, struct addr_const *)); -static int const_hash PROTO((tree)); -static int compare_constant PROTO((tree, +static const char *strip_reg_name PARAMS ((const char *)); +static int contains_pointers_p PARAMS ((tree)); +static void decode_addr_const PARAMS ((tree, struct addr_const *)); +static int const_hash PARAMS ((tree)); +static int compare_constant PARAMS ((tree, struct constant_descriptor *)); -static char *compare_constant_1 PROTO((tree, char *)); -static struct constant_descriptor *record_constant PROTO((tree)); -static void record_constant_1 PROTO((tree)); -static tree copy_constant PROTO((tree)); -static void output_constant_def_contents PROTO((tree, int, int)); -static void decode_rtx_const PROTO((enum machine_mode, rtx, +static char *compare_constant_1 PARAMS ((tree, char *)); +static struct constant_descriptor *record_constant PARAMS ((tree)); +static void record_constant_1 PARAMS ((tree)); +static tree copy_constant PARAMS ((tree)); +static void output_constant_def_contents PARAMS ((tree, int, int)); +static void decode_rtx_const PARAMS ((enum machine_mode, rtx, struct rtx_const *)); -static int const_hash_rtx PROTO((enum machine_mode, rtx)); -static int compare_constant_rtx PROTO((enum machine_mode, rtx, +static int const_hash_rtx PARAMS ((enum machine_mode, rtx)); +static int compare_constant_rtx PARAMS ((enum machine_mode, rtx, struct constant_descriptor *)); -static struct constant_descriptor *record_constant_rtx PROTO((enum machine_mode, +static struct constant_descriptor *record_constant_rtx PARAMS ((enum machine_mode, rtx)); -static struct pool_constant *find_pool_constant PROTO((struct function *, rtx)); -static void mark_constant_pool PROTO((void)); -static void mark_constants PROTO((rtx)); -static int output_addressed_constants PROTO((tree)); -static void output_after_function_constants PROTO((void)); -static void output_constructor PROTO((tree, int)); +static struct pool_constant *find_pool_constant PARAMS ((struct function *, rtx)); +static void mark_constant_pool PARAMS ((void)); +static void mark_constants PARAMS ((rtx)); +static int output_addressed_constants PARAMS ((tree)); +static void output_after_function_constants PARAMS ((void)); +static void output_constructor PARAMS ((tree, int)); #ifdef ASM_WEAKEN_LABEL -static void remove_from_pending_weak_list PROTO ((char *)); +static void remove_from_pending_weak_list PARAMS ((char *)); #endif #ifdef ASM_OUTPUT_BSS -static void asm_output_bss PROTO((FILE *, tree, char *, int, int)); +static void asm_output_bss PARAMS ((FILE *, tree, char *, int, int)); #endif #ifdef BSS_SECTION_ASM_OP #ifdef ASM_OUTPUT_ALIGNED_BSS -static void asm_output_aligned_bss PROTO((FILE *, tree, char *, int, int)); +static void asm_output_aligned_bss PARAMS ((FILE *, tree, char *, int, int)); #endif #endif /* BSS_SECTION_ASM_OP */ -static void mark_pool_constant PROTO((struct pool_constant *)); -static void mark_pool_sym_hash_table PROTO((struct pool_sym **)); -static void mark_const_hash_entry PROTO((void *)); -static void asm_emit_uninitialised PROTO((tree, char *, int, int)); +static void mark_pool_constant PARAMS ((struct pool_constant *)); +static void mark_pool_sym_hash_table PARAMS ((struct pool_sym **)); +static void mark_const_hash_entry PARAMS ((void *)); +static void asm_emit_uninitialised PARAMS ((tree, char *, int, int)); static enum in_section { no_section, in_text, in_data, in_named #ifdef BSS_SECTION_ASM_OP diff --git a/gcc/varray.c b/gcc/varray.c index 5169136..9807b88 100644 --- a/gcc/varray.c +++ b/gcc/varray.c @@ -74,7 +74,7 @@ varray_grow (va, n) #if defined ENABLE_CHECKING && (GCC_VERSION >= 2007) -extern void error PVPROTO ((const char *, ...)) ATTRIBUTE_PRINTF_1; +extern void error PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1; void varray_check_failed (va, n, file, line, function) diff --git a/gcc/varray.h b/gcc/varray.h index 0d1843b..8363433 100644 --- a/gcc/varray.h +++ b/gcc/varray.h @@ -90,7 +90,7 @@ typedef struct varray_head_tag { /* Allocate a virtual array with NUM elements, each of which is SIZE bytes long, named NAME. Array elements are zeroed. */ -extern varray_type varray_init PROTO ((size_t, size_t, const char *)); +extern varray_type varray_init PARAMS ((size_t, size_t, const char *)); #define VARRAY_CHAR_INIT(va, num, name) \ va = varray_init (num, sizeof (char), name) @@ -158,7 +158,7 @@ extern varray_type varray_init PROTO ((size_t, size_t, const char *)); do { if (vp) { free (vp); vp = (varray_type)0; } } while (0) /* Grow/shrink the virtual array VA to N elements. */ -extern varray_type varray_grow PROTO((varray_type, size_t)); +extern varray_type varray_grow PARAMS ((varray_type, size_t)); #define VARRAY_GROW(VA, N) ((VA) = varray_grow (VA, N)) @@ -166,7 +166,7 @@ extern varray_type varray_grow PROTO((varray_type, size_t)); /* Check for VARRAY_xxx macros being in bound. */ #if defined ENABLE_CHECKING && (GCC_VERSION >= 2007) -extern void varray_check_failed PROTO ((varray_type, size_t, +extern void varray_check_failed PARAMS ((varray_type, size_t, const char *, int, const char *)) ATTRIBUTE_NORETURN; #define VARRAY_CHECK(VA, N, T) \ |