diff options
36 files changed, 901 insertions, 865 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index aa636cf..e716278 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,39 @@ +Fri Jan 21 15:37:29 2000 Kaveh R. Ghazi <ghazi@versicolor.rutgers.edu> + + * buffer.h: PROTO -> PARAMS. + * check-init.c: Likewise. + * class.c: Likewise. + * constants.c: Likewise. + * convert.h: Likewise. + * decl.c: Likewise. + * except.c: Likewise. + * expr.c: Likewise. + * gjavah.c: Likewise. + * java-except.h: Likewise. + * java-tree.h: Likewise. + * jcf-depend.c: Likewise. + * jcf-dump.c: Likewise. + * jcf-parse.c: Likewise. + * jcf-path.c: Likewise. + * jcf-reader.c: Likewise. + * jcf-write.c: Likewise. + * jcf.h: Likewise. + * jv-scan.c: Likewise. + * jvgenmain.c: Likewise. + * jvspec.c: Likewise. + * lang.c: Likewise. + * lex.c: Likewise. + * lex.h: Likewise. + * parse-scan.y: Likewise. + * parse.h: Likewise. + * parse.y: Likewise. + * typeck.c: Likewise. + * verify.c: Likewise. + * xref.c: Likewise. + * xref.h: Likewise. + * zextract.c: Likewise. + * zipfile.h: Likewise. + Mon Jan 17 11:58:17 2000 Joerg Brunsmann <joerg.brunsmann@fernuni-hagen.de> * parse.y (format_parameter:): Use final: rule instead of modifiers:. diff --git a/gcc/java/buffer.h b/gcc/java/buffer.h index 924f6e0..5ea0864 100644 --- a/gcc/java/buffer.h +++ b/gcc/java/buffer.h @@ -1,5 +1,5 @@ /* A "buffer" utility type. - Copyright (C) 1998 Free Software Foundation, Inc. + Copyright (C) 1998, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -43,4 +43,4 @@ struct buffer #define BUFFER_RESET(BUFP) ((BUFP)->ptr = (BUFP)->data) -extern void buffer_grow PROTO ((struct buffer*, int)); +extern void buffer_grow PARAMS ((struct buffer*, int)); diff --git a/gcc/java/check-init.c b/gcc/java/check-init.c index dca49ce..a202b45 100644 --- a/gcc/java/check-init.c +++ b/gcc/java/check-init.c @@ -1,6 +1,6 @@ /* Code to test for "definitive assignment". - Copyright (C) 1999 Free Software Foundation, Inc. + Copyright (C) 1999, 2000 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -97,12 +97,12 @@ static tree wfl; #define WORD_SIZE ((unsigned int)(sizeof(word) * 8)) -static void check_bool_init PROTO ((tree, words, words, words)); -static void check_init PROTO ((tree, words)); -static void check_cond_init PROTO ((tree, tree, tree, words, words, words)); -static void check_bool2_init PROTO ((enum tree_code, tree, tree, words, words, words)); +static void check_bool_init PARAMS ((tree, words, words, words)); +static void check_init PARAMS ((tree, words)); +static void check_cond_init PARAMS ((tree, tree, tree, words, words, words)); +static void check_bool2_init PARAMS ((enum tree_code, tree, tree, words, words, words)); struct alternatives; -static void done_alternative PROTO ((words, struct alternatives *)); +static void done_alternative PARAMS ((words, struct alternatives *)); #if 0 #define ALLOC_WORDS(NUM) ((word*) xmalloc ((NUM) * sizeof (word))) diff --git a/gcc/java/class.c b/gcc/java/class.c index 3e3cfe6..a441040 100644 --- a/gcc/java/class.c +++ b/gcc/java/class.c @@ -1,5 +1,5 @@ /* Functions related to building classes and their related objects. - Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc. + Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -36,18 +36,18 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "output.h" #include "parse.h" -static tree mangle_class_field PROTO ((tree class)); -static tree make_method_value PROTO ((tree)); -static tree build_java_method_type PROTO ((tree, tree, int)); -static int32 hashUtf8String PROTO ((const char *, int)); -static tree make_field_value PROTO ((tree)); -static tree get_dispatch_vector PROTO ((tree)); -static tree get_dispatch_table PROTO ((tree, tree)); -static void append_gpp_mangled_type PROTO ((struct obstack *, tree)); -static tree mangle_static_field PROTO ((tree)); -static void add_interface_do PROTO ((tree, tree, int)); -static tree maybe_layout_super_class PROTO ((tree, tree)); -static int assume_compiled PROTO ((const char *)); +static tree mangle_class_field PARAMS ((tree class)); +static tree make_method_value PARAMS ((tree)); +static tree build_java_method_type PARAMS ((tree, tree, int)); +static int32 hashUtf8String PARAMS ((const char *, int)); +static tree make_field_value PARAMS ((tree)); +static tree get_dispatch_vector PARAMS ((tree)); +static tree get_dispatch_table PARAMS ((tree, tree)); +static void append_gpp_mangled_type PARAMS ((struct obstack *, tree)); +static tree mangle_static_field PARAMS ((tree)); +static void add_interface_do PARAMS ((tree, tree, int)); +static tree maybe_layout_super_class PARAMS ((tree, tree)); +static int assume_compiled PARAMS ((const char *)); static rtx registerClass_libfunc; @@ -77,7 +77,7 @@ typedef struct assume_compiled_node_struct } assume_compiled_node; static assume_compiled_node *find_assume_compiled_node - PROTO ((assume_compiled_node *, const char *)); + PARAMS ((assume_compiled_node *, const char *)); /* This is the root of the include/exclude tree. */ @@ -1892,7 +1892,7 @@ register_class () void emit_register_classes () { - extern tree get_file_function_name PROTO((int)); + extern tree get_file_function_name PARAMS ((int)); tree init_name = get_file_function_name ('I'); tree init_type = build_function_type (void_type_node, end_params_node); tree init_decl; diff --git a/gcc/java/constants.c b/gcc/java/constants.c index 4620383..e426515 100644 --- a/gcc/java/constants.c +++ b/gcc/java/constants.c @@ -1,5 +1,5 @@ /* Handle the constant pool of the Java(TM) Virtual Machine. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 98-99, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -30,11 +30,11 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ extern struct obstack permanent_obstack; -static void set_constant_entry PROTO ((CPool *, int, int, jword)); -static int find_class_or_string_constant PROTO ((CPool *, int, tree)); -static int find_name_and_type_constant PROTO ((CPool *, tree, tree)); -static tree get_tag_node PROTO ((int)); -static tree build_constant_data_ref PROTO ((void)); +static void set_constant_entry PARAMS ((CPool *, int, int, jword)); +static int find_class_or_string_constant PARAMS ((CPool *, int, tree)); +static int find_name_and_type_constant PARAMS ((CPool *, tree, tree)); +static tree get_tag_node PARAMS ((int)); +static tree build_constant_data_ref PARAMS ((void)); /* Set the INDEX'th constant in CPOOL to have the given TAG and VALUE. */ diff --git a/gcc/java/convert.h b/gcc/java/convert.h index a627bc2a..469e27a 100644 --- a/gcc/java/convert.h +++ b/gcc/java/convert.h @@ -1,6 +1,6 @@ /* Definition of conversion functions. - Copyright (C) 1993 Free Software Foundation, Inc. + Copyright (C) 1993, 1998, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -21,8 +21,8 @@ Boston, MA 02111-1307, USA. */ /* Written by Jeffrey Hsu <hsu@cygnus.com> */ -extern tree convert_to_boolean PROTO ((tree, tree)); -extern tree convert_to_char PROTO ((tree, tree)); -extern tree convert_to_integer PROTO ((tree type, tree expr)); -extern tree convert_to_real PROTO ((tree type, tree expr)); -extern tree convert_to_pointer PROTO ((tree type, tree expr)); +extern tree convert_to_boolean PARAMS ((tree, tree)); +extern tree convert_to_char PARAMS ((tree, tree)); +extern tree convert_to_integer PARAMS ((tree type, tree expr)); +extern tree convert_to_real PARAMS ((tree type, tree expr)); +extern tree convert_to_pointer PARAMS ((tree type, tree expr)); diff --git a/gcc/java/decl.c b/gcc/java/decl.c index 85b64e5..5513203 100644 --- a/gcc/java/decl.c +++ b/gcc/java/decl.c @@ -1,7 +1,7 @@ /* Process declarations and variables for the GNU compiler for the Java(TM) language. - Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc. + Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -36,10 +36,10 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "except.h" #include "defaults.h" -static tree push_jvm_slot PROTO ((int, tree)); -static tree lookup_name_current_level PROTO ((tree)); -static tree push_promoted_type PROTO ((const char *, tree)); -static struct binding_level *make_binding_level PROTO ((void)); +static tree push_jvm_slot PARAMS ((int, tree)); +static tree lookup_name_current_level PARAMS ((tree)); +static tree push_promoted_type PARAMS ((const char *, tree)); +static struct binding_level *make_binding_level PARAMS ((void)); #ifndef INT_TYPE_SIZE #define INT_TYPE_SIZE BITS_PER_WORD diff --git a/gcc/java/except.c b/gcc/java/except.c index 283826e..f44f072 100644 --- a/gcc/java/except.c +++ b/gcc/java/except.c @@ -1,5 +1,5 @@ /* Handle exceptions for GNU compiler for the Java(TM) language. - Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1997, 98-99, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -37,12 +37,12 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "eh-common.h" #include "toplev.h" -static void expand_start_java_handler PROTO ((struct eh_range *)); -static void expand_end_java_handler PROTO ((struct eh_range *)); -static struct eh_range *find_handler_in_range PROTO ((int, struct eh_range *, +static void expand_start_java_handler PARAMS ((struct eh_range *)); +static void expand_end_java_handler PARAMS ((struct eh_range *)); +static struct eh_range *find_handler_in_range PARAMS ((int, struct eh_range *, struct eh_range *)); -static void link_handler PROTO ((struct eh_range *, struct eh_range *)); -static void check_start_handlers PROTO ((struct eh_range *, int)); +static void link_handler PARAMS ((struct eh_range *, struct eh_range *)); +static void check_start_handlers PARAMS ((struct eh_range *, int)); extern struct obstack permanent_obstack; diff --git a/gcc/java/expr.c b/gcc/java/expr.c index 4a731af..430db4a 100644 --- a/gcc/java/expr.c +++ b/gcc/java/expr.c @@ -1,5 +1,5 @@ /* Process expressions for the GNU compiler for the Java(TM) language. - Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -41,44 +41,44 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "except.h" #include "defaults.h" -static void flush_quick_stack PROTO ((void)); -static void push_value PROTO ((tree)); -static tree pop_value PROTO ((tree)); -static void java_stack_swap PROTO ((void)); -static void java_stack_dup PROTO ((int, int)); -static void build_java_athrow PROTO ((tree)); -static void build_java_jsr PROTO ((tree, tree)); -static void build_java_ret PROTO ((tree)); -static void expand_java_multianewarray PROTO ((tree, int)); -static void expand_java_arraystore PROTO ((tree)); -static void expand_java_arrayload PROTO ((tree)); -static void expand_java_array_length PROTO ((void)); -static tree build_java_monitor PROTO ((tree, tree)); -static void expand_java_pushc PROTO ((int, tree)); -static void expand_java_return PROTO ((tree)); -static void expand_java_NEW PROTO ((tree)); -static void expand_java_INSTANCEOF PROTO ((tree)); -static void expand_java_CHECKCAST PROTO ((tree)); -static void expand_iinc PROTO ((unsigned int, int, int)); -static void expand_java_binop PROTO ((tree, enum tree_code)); -static void note_label PROTO ((int, int)); -static void expand_compare PROTO ((enum tree_code, tree, tree, int)); -static void expand_test PROTO ((enum tree_code, tree, int)); -static void expand_cond PROTO ((enum tree_code, tree, int)); -static void expand_java_goto PROTO ((int)); +static void flush_quick_stack PARAMS ((void)); +static void push_value PARAMS ((tree)); +static tree pop_value PARAMS ((tree)); +static void java_stack_swap PARAMS ((void)); +static void java_stack_dup PARAMS ((int, int)); +static void build_java_athrow PARAMS ((tree)); +static void build_java_jsr PARAMS ((tree, tree)); +static void build_java_ret PARAMS ((tree)); +static void expand_java_multianewarray PARAMS ((tree, int)); +static void expand_java_arraystore PARAMS ((tree)); +static void expand_java_arrayload PARAMS ((tree)); +static void expand_java_array_length PARAMS ((void)); +static tree build_java_monitor PARAMS ((tree, tree)); +static void expand_java_pushc PARAMS ((int, tree)); +static void expand_java_return PARAMS ((tree)); +static void expand_java_NEW PARAMS ((tree)); +static void expand_java_INSTANCEOF PARAMS ((tree)); +static void expand_java_CHECKCAST PARAMS ((tree)); +static void expand_iinc PARAMS ((unsigned int, int, int)); +static void expand_java_binop PARAMS ((tree, enum tree_code)); +static void note_label PARAMS ((int, int)); +static void expand_compare PARAMS ((enum tree_code, tree, tree, int)); +static void expand_test PARAMS ((enum tree_code, tree, int)); +static void expand_cond PARAMS ((enum tree_code, tree, int)); +static void expand_java_goto PARAMS ((int)); #if 0 -static void expand_java_call PROTO ((int, int)); -static void expand_java_ret PROTO ((tree)); +static void expand_java_call PARAMS ((int, int)); +static void expand_java_ret PARAMS ((tree)); #endif -static tree pop_arguments PROTO ((tree)); -static void expand_invoke PROTO ((int, int, int)); -static void expand_java_field_op PROTO ((int, int, int)); -static void java_push_constant_from_pool PROTO ((struct JCF *, int)); -static void java_stack_pop PROTO ((int)); -static tree build_java_throw_out_of_bounds_exception PROTO ((tree)); -static tree build_java_check_indexed_type PROTO ((tree, tree)); -static tree java_array_data_offset PROTO ((tree)); -static tree case_identity PROTO ((tree, tree)); +static tree pop_arguments PARAMS ((tree)); +static void expand_invoke PARAMS ((int, int, int)); +static void expand_java_field_op PARAMS ((int, int, int)); +static void java_push_constant_from_pool PARAMS ((struct JCF *, int)); +static void java_stack_pop PARAMS ((int)); +static tree build_java_throw_out_of_bounds_exception PARAMS ((tree)); +static tree build_java_check_indexed_type PARAMS ((tree, tree)); +static tree java_array_data_offset PARAMS ((tree)); +static tree case_identity PARAMS ((tree, tree)); static tree operand_type[59]; extern struct obstack permanent_obstack; diff --git a/gcc/java/gjavah.c b/gcc/java/gjavah.c index 4f97317..9955fbf 100644 --- a/gcc/java/gjavah.c +++ b/gcc/java/gjavah.c @@ -107,35 +107,35 @@ struct method_name /* List of method names we've seen. */ static struct method_name *method_name_list; -static void print_field_info PROTO ((FILE*, JCF*, int, int, JCF_u2)); -static void print_mangled_classname PROTO ((FILE*, JCF*, const char*, int)); -static int print_cxx_classname PROTO ((FILE*, const char*, JCF*, int)); -static void print_method_info PROTO ((FILE*, JCF*, int, int, JCF_u2)); -static void print_c_decl PROTO ((FILE*, JCF*, int, int, int, const char *)); -static void print_stub PROTO ((FILE*, JCF*, int, int, int, const char *)); -static void print_full_cxx_name PROTO ((FILE*, JCF*, int, int, int, const char *)); -static void decompile_method PROTO ((FILE*, JCF*, int)); -static void add_class_decl PROTO ((FILE*, JCF*, JCF_u2)); - -static int java_float_finite PROTO ((jfloat)); -static int java_double_finite PROTO ((jdouble)); -static void print_name PROTO ((FILE *, JCF *, int)); -static void print_base_classname PROTO ((FILE *, JCF *, int)); -static int utf8_cmp PROTO ((const unsigned char *, int, const char *)); -static const char *cxx_keyword_subst PROTO ((const unsigned char *, int)); -static void generate_access PROTO ((FILE *, JCF_u2)); -static int name_is_method_p PROTO ((const unsigned char *, int)); -static char *get_field_name PROTO ((JCF *, int, JCF_u2)); -static void print_field_name PROTO ((FILE *, JCF *, int, JCF_u2)); -static const unsigned char *super_class_name PROTO ((JCF *, int *)); -static void print_include PROTO ((FILE *, const unsigned char *, int)); +static void print_field_info PARAMS ((FILE*, JCF*, int, int, JCF_u2)); +static void print_mangled_classname PARAMS ((FILE*, JCF*, const char*, int)); +static int print_cxx_classname PARAMS ((FILE*, const char*, JCF*, int)); +static void print_method_info PARAMS ((FILE*, JCF*, int, int, JCF_u2)); +static void print_c_decl PARAMS ((FILE*, JCF*, int, int, int, const char *)); +static void print_stub PARAMS ((FILE*, JCF*, int, int, int, const char *)); +static void print_full_cxx_name PARAMS ((FILE*, JCF*, int, int, int, const char *)); +static void decompile_method PARAMS ((FILE*, JCF*, int)); +static void add_class_decl PARAMS ((FILE*, JCF*, JCF_u2)); + +static int java_float_finite PARAMS ((jfloat)); +static int java_double_finite PARAMS ((jdouble)); +static void print_name PARAMS ((FILE *, JCF *, int)); +static void print_base_classname PARAMS ((FILE *, JCF *, int)); +static int utf8_cmp PARAMS ((const unsigned char *, int, const char *)); +static const char *cxx_keyword_subst PARAMS ((const unsigned char *, int)); +static void generate_access PARAMS ((FILE *, JCF_u2)); +static int name_is_method_p PARAMS ((const unsigned char *, int)); +static char *get_field_name PARAMS ((JCF *, int, JCF_u2)); +static void print_field_name PARAMS ((FILE *, JCF *, int, JCF_u2)); +static const unsigned char *super_class_name PARAMS ((JCF *, int *)); +static void print_include PARAMS ((FILE *, const unsigned char *, int)); static const unsigned char *decode_signature_piece - PROTO ((FILE *, const unsigned char *, const unsigned char *, int *)); -static void print_class_decls PROTO ((FILE *, JCF *, int)); -static void usage PROTO ((void)) ATTRIBUTE_NORETURN; -static void help PROTO ((void)) ATTRIBUTE_NORETURN; -static void java_no_argument PROTO ((const char *)) ATTRIBUTE_NORETURN; -static void version PROTO ((void)) ATTRIBUTE_NORETURN; + PARAMS ((FILE *, const unsigned char *, const unsigned char *, int *)); +static void print_class_decls PARAMS ((FILE *, JCF *, int)); +static void usage PARAMS ((void)) ATTRIBUTE_NORETURN; +static void help PARAMS ((void)) ATTRIBUTE_NORETURN; +static void java_no_argument PARAMS ((const char *)) ATTRIBUTE_NORETURN; +static void version PARAMS ((void)) ATTRIBUTE_NORETURN; JCF_u2 current_field_name; JCF_u2 current_field_value; @@ -1100,9 +1100,9 @@ struct namelet struct namelet *next; }; -static void add_namelet PROTO ((const unsigned char *, +static void add_namelet PARAMS ((const unsigned char *, const unsigned char *, struct namelet *)); -static void print_namelet PROTO ((FILE *, struct namelet *, int)); +static void print_namelet PARAMS ((FILE *, struct namelet *, int)); /* The special root namelet. */ static struct namelet root = diff --git a/gcc/java/java-except.h b/gcc/java/java-except.h index 07b3feb..49ef54b 100644 --- a/gcc/java/java-except.h +++ b/gcc/java/java-except.h @@ -1,6 +1,6 @@ /* Definitions for exception handling for use by the GNU compiler for the Java(TM) language compiler. - Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1997, 98-99, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -54,18 +54,18 @@ extern struct eh_range whole_range; #define NULL_EH_RANGE (&whole_range) -extern struct eh_range * find_handler PROTO ((int)); +extern struct eh_range * find_handler PARAMS ((int)); -extern void method_init_exceptions PROTO ((void)); +extern void method_init_exceptions PARAMS ((void)); -extern void emit_handlers PROTO ((void)); +extern void emit_handlers PARAMS ((void)); -extern void maybe_start_try PROTO ((int)); +extern void maybe_start_try PARAMS ((int)); -extern void maybe_end_try PROTO ((int)); +extern void maybe_end_try PARAMS ((int)); -extern void add_handler PROTO ((int, int, tree, tree)); +extern void add_handler PARAMS ((int, int, tree, tree)); -extern void handle_nested_ranges PROTO ((void)); +extern void handle_nested_ranges PARAMS ((void)); -extern void expand_resume_after_catch PROTO ((void)); +extern void expand_resume_after_catch PARAMS ((void)); diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h index 03d3023..a8370c4 100644 --- a/gcc/java/java-tree.h +++ b/gcc/java/java-tree.h @@ -1,6 +1,6 @@ /* Definitions for parsing and type checking for the GNU compiler for the Java(TM) language. - Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1997, 98-99, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -479,170 +479,170 @@ struct lang_type #define JCF_u4 unsigned long #define JCF_u2 unsigned short -extern void add_assume_compiled PROTO ((const char *, int)); -extern tree lookup_class PROTO ((tree)); -extern tree lookup_java_constructor PROTO ((tree, tree)); -extern tree lookup_java_method PROTO ((tree, tree, tree)); -extern tree lookup_argument_method PROTO ((tree, tree, tree)); -extern tree promote_type PROTO ((tree)); -extern tree get_constant PROTO ((struct JCF*, int)); -extern tree get_name_constant PROTO ((struct JCF*, int)); -extern tree get_class_constant PROTO ((struct JCF*, int)); -extern tree parse_signature PROTO ((struct JCF *jcf, int sig_index)); -extern void jcf_parse PROTO ((struct JCF*)); -extern tree add_field PROTO ((tree, tree, tree, int)); -extern tree add_method PROTO ((tree, int, tree, tree)); -extern tree add_method_1 PROTO ((tree, int, tree, tree)); -extern tree make_class PROTO ((void)); -extern tree push_class PROTO ((tree, tree)); -extern tree unmangle_classname PROTO ((const char *name, int name_length)); -extern tree parse_signature_string PROTO ((const unsigned char *, int)); -extern tree get_type_from_signature PROTO ((tree)); -extern void layout_class PROTO ((tree)); -extern tree layout_class_method PROTO ((tree, tree, tree, tree)); -extern void layout_class_methods PROTO ((tree)); -extern tree build_class_ref PROTO ((tree)); -extern tree build_dtable_decl PROTO ((tree)); -extern tree build_internal_class_name PROTO ((tree)); -extern tree build_constants_constructor PROTO ((void)); -extern tree build_ref_from_constant_pool PROTO ((int)); -extern tree build_utf8_ref PROTO ((tree)); -extern tree ident_subst PROTO ((const char*, int, +extern void add_assume_compiled PARAMS ((const char *, int)); +extern tree lookup_class PARAMS ((tree)); +extern tree lookup_java_constructor PARAMS ((tree, tree)); +extern tree lookup_java_method PARAMS ((tree, tree, tree)); +extern tree lookup_argument_method PARAMS ((tree, tree, tree)); +extern tree promote_type PARAMS ((tree)); +extern tree get_constant PARAMS ((struct JCF*, int)); +extern tree get_name_constant PARAMS ((struct JCF*, int)); +extern tree get_class_constant PARAMS ((struct JCF*, int)); +extern tree parse_signature PARAMS ((struct JCF *jcf, int sig_index)); +extern void jcf_parse PARAMS ((struct JCF*)); +extern tree add_field PARAMS ((tree, tree, tree, int)); +extern tree add_method PARAMS ((tree, int, tree, tree)); +extern tree add_method_1 PARAMS ((tree, int, tree, tree)); +extern tree make_class PARAMS ((void)); +extern tree push_class PARAMS ((tree, tree)); +extern tree unmangle_classname PARAMS ((const char *name, int name_length)); +extern tree parse_signature_string PARAMS ((const unsigned char *, int)); +extern tree get_type_from_signature PARAMS ((tree)); +extern void layout_class PARAMS ((tree)); +extern tree layout_class_method PARAMS ((tree, tree, tree, tree)); +extern void layout_class_methods PARAMS ((tree)); +extern tree build_class_ref PARAMS ((tree)); +extern tree build_dtable_decl PARAMS ((tree)); +extern tree build_internal_class_name PARAMS ((tree)); +extern tree build_constants_constructor PARAMS ((void)); +extern tree build_ref_from_constant_pool PARAMS ((int)); +extern tree build_utf8_ref PARAMS ((tree)); +extern tree ident_subst PARAMS ((const char*, int, const char*, int, int, const char*)); -extern tree identifier_subst PROTO ((const tree, +extern tree identifier_subst PARAMS ((const tree, const char *, int, int, const char *)); -extern tree build_java_signature PROTO ((tree)); -extern tree build_java_argument_signature PROTO ((tree)); -extern void set_java_signature PROTO ((tree, tree)); -extern tree build_static_field_ref PROTO ((tree)); -extern tree build_address_of PROTO ((tree)); -extern tree find_local_variable PROTO ((int index, tree type, int pc)); -extern tree find_stack_slot PROTO ((int index, tree type)); -extern tree build_prim_array_type PROTO ((tree, HOST_WIDE_INT)); -extern tree build_java_array_type PROTO ((tree, HOST_WIDE_INT)); -extern int is_compiled_class PROTO ((tree)); -extern tree mangled_classname PROTO ((const char*, tree)); -extern tree lookup_label PROTO ((int)); -extern tree pop_type_0 PROTO ((tree)); -extern tree pop_type PROTO ((tree)); -extern void pop_argument_types PROTO ((tree)); -extern tree decode_newarray_type PROTO ((int)); -extern tree lookup_field PROTO ((tree*, tree)); -extern int is_array_type_p PROTO ((tree)); -extern HOST_WIDE_INT java_array_type_length PROTO ((tree)); -extern int read_class PROTO ((tree)); -extern void load_class PROTO ((tree, int)); - -extern tree lookup_name PROTO ((tree)); -extern tree build_known_method_ref PROTO ((tree, tree, tree, tree, tree)); -extern tree build_class_init PROTO ((tree, tree)); -extern tree build_invokevirtual PROTO ((tree, tree)); -extern tree build_invokeinterface PROTO ((tree, tree, tree)); -extern tree invoke_build_dtable PROTO ((int, tree)); -extern tree build_field_ref PROTO ((tree, tree, tree)); -extern void pushdecl_force_head PROTO ((tree)); -extern tree build_java_binop PROTO ((enum tree_code, tree, tree, tree)); -extern tree build_java_soft_divmod PROTO ((enum tree_code, tree, tree, tree)); -extern tree binary_numeric_promotion PROTO ((tree, tree, tree *, tree *)); -extern tree build_java_arrayaccess PROTO ((tree, tree, tree)); -extern tree build_newarray PROTO ((int, tree)); -extern tree build_anewarray PROTO ((tree, tree)); -extern tree build_new_array PROTO ((tree, tree)); -extern tree build_java_array_length_access PROTO ((tree)); -extern tree build_java_arraynull_check PROTO ((tree, tree, tree)); -extern tree create_label_decl PROTO ((tree)); -extern void push_labeled_block PROTO ((tree)); -extern tree prepare_eh_table_type PROTO ((tree)); -extern void java_set_exception_lang_code PROTO ((void)); -extern tree generate_name PROTO ((void)); -extern void pop_labeled_block PROTO ((void)); -extern const char *lang_printable_name PROTO ((tree, int)); -extern tree maybe_add_interface PROTO ((tree, tree)); -extern void set_super_info PROTO ((int, tree, tree, int)); -extern int get_access_flags_from_decl PROTO ((tree)); -extern int interface_of_p PROTO ((tree, tree)); -extern int inherits_from_p PROTO ((tree, tree)); -extern void complete_start_java_method PROTO ((tree)); -extern tree build_result_decl PROTO ((tree)); -extern void emit_handlers PROTO ((void)); -extern void init_outgoing_cpool PROTO ((void)); -extern void make_class_data PROTO ((tree)); -extern void register_class PROTO ((void)); -extern int alloc_name_constant PROTO ((int, tree)); -extern void emit_register_classes PROTO ((void)); -extern void lang_init_source PROTO ((int)); -extern void write_classfile PROTO ((tree)); -extern char *print_int_node PROTO ((tree)); -extern void parse_error_context PVPROTO ((tree cl, const char *, ...)) +extern tree build_java_signature PARAMS ((tree)); +extern tree build_java_argument_signature PARAMS ((tree)); +extern void set_java_signature PARAMS ((tree, tree)); +extern tree build_static_field_ref PARAMS ((tree)); +extern tree build_address_of PARAMS ((tree)); +extern tree find_local_variable PARAMS ((int index, tree type, int pc)); +extern tree find_stack_slot PARAMS ((int index, tree type)); +extern tree build_prim_array_type PARAMS ((tree, HOST_WIDE_INT)); +extern tree build_java_array_type PARAMS ((tree, HOST_WIDE_INT)); +extern int is_compiled_class PARAMS ((tree)); +extern tree mangled_classname PARAMS ((const char*, tree)); +extern tree lookup_label PARAMS ((int)); +extern tree pop_type_0 PARAMS ((tree)); +extern tree pop_type PARAMS ((tree)); +extern void pop_argument_types PARAMS ((tree)); +extern tree decode_newarray_type PARAMS ((int)); +extern tree lookup_field PARAMS ((tree*, tree)); +extern int is_array_type_p PARAMS ((tree)); +extern HOST_WIDE_INT java_array_type_length PARAMS ((tree)); +extern int read_class PARAMS ((tree)); +extern void load_class PARAMS ((tree, int)); + +extern tree lookup_name PARAMS ((tree)); +extern tree build_known_method_ref PARAMS ((tree, tree, tree, tree, tree)); +extern tree build_class_init PARAMS ((tree, tree)); +extern tree build_invokevirtual PARAMS ((tree, tree)); +extern tree build_invokeinterface PARAMS ((tree, tree, tree)); +extern tree invoke_build_dtable PARAMS ((int, tree)); +extern tree build_field_ref PARAMS ((tree, tree, tree)); +extern void pushdecl_force_head PARAMS ((tree)); +extern tree build_java_binop PARAMS ((enum tree_code, tree, tree, tree)); +extern tree build_java_soft_divmod PARAMS ((enum tree_code, tree, tree, tree)); +extern tree binary_numeric_promotion PARAMS ((tree, tree, tree *, tree *)); +extern tree build_java_arrayaccess PARAMS ((tree, tree, tree)); +extern tree build_newarray PARAMS ((int, tree)); +extern tree build_anewarray PARAMS ((tree, tree)); +extern tree build_new_array PARAMS ((tree, tree)); +extern tree build_java_array_length_access PARAMS ((tree)); +extern tree build_java_arraynull_check PARAMS ((tree, tree, tree)); +extern tree create_label_decl PARAMS ((tree)); +extern void push_labeled_block PARAMS ((tree)); +extern tree prepare_eh_table_type PARAMS ((tree)); +extern void java_set_exception_lang_code PARAMS ((void)); +extern tree generate_name PARAMS ((void)); +extern void pop_labeled_block PARAMS ((void)); +extern const char *lang_printable_name PARAMS ((tree, int)); +extern tree maybe_add_interface PARAMS ((tree, tree)); +extern void set_super_info PARAMS ((int, tree, tree, int)); +extern int get_access_flags_from_decl PARAMS ((tree)); +extern int interface_of_p PARAMS ((tree, tree)); +extern int inherits_from_p PARAMS ((tree, tree)); +extern void complete_start_java_method PARAMS ((tree)); +extern tree build_result_decl PARAMS ((tree)); +extern void emit_handlers PARAMS ((void)); +extern void init_outgoing_cpool PARAMS ((void)); +extern void make_class_data PARAMS ((tree)); +extern void register_class PARAMS ((void)); +extern int alloc_name_constant PARAMS ((int, tree)); +extern void emit_register_classes PARAMS ((void)); +extern void lang_init_source PARAMS ((int)); +extern void write_classfile PARAMS ((tree)); +extern char *print_int_node PARAMS ((tree)); +extern void parse_error_context PARAMS ((tree cl, const char *, ...)) ATTRIBUTE_PRINTF_2; -extern tree build_primtype_type_ref PROTO ((const char *)); -extern tree java_get_real_method_name PROTO ((tree)); -extern void finish_class PROTO ((void)); -extern void java_layout_seen_class_methods PROTO ((void)); -extern void check_for_initialization PROTO ((tree)); - -extern tree pushdecl_top_level PROTO ((tree)); -extern int alloc_class_constant PROTO ((tree)); -extern int unicode_mangling_length PROTO ((const char *, int)); -extern void init_expr_processing PROTO ((void)); -extern void push_super_field PROTO ((tree, tree)); -extern void init_class_processing PROTO ((void)); -extern int can_widen_reference_to PROTO ((tree, tree)); -extern int class_depth PROTO ((tree)); -extern int verify_jvm_instructions PROTO ((struct JCF *, const unsigned char *, long)); -extern void maybe_pushlevels PROTO ((int)); -extern void maybe_poplevels PROTO ((int)); -extern int process_jvm_instruction PROTO ((int, const unsigned char *, long)); -extern void set_local_type PROTO ((int, tree)); -extern int merge_type_state PROTO ((tree)); -extern void push_type PROTO ((tree)); -extern void load_type_state PROTO ((tree)); -extern void add_interface PROTO ((tree, tree)); -extern void append_gpp_mangled_name PROTO ((struct obstack *, const char *, int)); -extern void append_gpp_mangled_classtype PROTO ((struct obstack *, const char *)); -extern void emit_unicode_mangled_name PROTO ((struct obstack *, const char *, int)); -extern tree force_evaluation_order PROTO ((tree)); -extern int verify_constant_pool PROTO ((struct JCF *)); -extern void start_java_method PROTO ((tree)); -extern void end_java_method PROTO ((void)); -extern void give_name_to_locals PROTO ((struct JCF *)); -extern void expand_byte_code PROTO ((struct JCF *, tree)); -extern int open_in_zip PROTO ((struct JCF *, const char *, const char *, int)); -extern void set_constant_value PROTO ((tree, tree)); +extern tree build_primtype_type_ref PARAMS ((const char *)); +extern tree java_get_real_method_name PARAMS ((tree)); +extern void finish_class PARAMS ((void)); +extern void java_layout_seen_class_methods PARAMS ((void)); +extern void check_for_initialization PARAMS ((tree)); + +extern tree pushdecl_top_level PARAMS ((tree)); +extern int alloc_class_constant PARAMS ((tree)); +extern int unicode_mangling_length PARAMS ((const char *, int)); +extern void init_expr_processing PARAMS ((void)); +extern void push_super_field PARAMS ((tree, tree)); +extern void init_class_processing PARAMS ((void)); +extern int can_widen_reference_to PARAMS ((tree, tree)); +extern int class_depth PARAMS ((tree)); +extern int verify_jvm_instructions PARAMS ((struct JCF *, const unsigned char *, long)); +extern void maybe_pushlevels PARAMS ((int)); +extern void maybe_poplevels PARAMS ((int)); +extern int process_jvm_instruction PARAMS ((int, const unsigned char *, long)); +extern void set_local_type PARAMS ((int, tree)); +extern int merge_type_state PARAMS ((tree)); +extern void push_type PARAMS ((tree)); +extern void load_type_state PARAMS ((tree)); +extern void add_interface PARAMS ((tree, tree)); +extern void append_gpp_mangled_name PARAMS ((struct obstack *, const char *, int)); +extern void append_gpp_mangled_classtype PARAMS ((struct obstack *, const char *)); +extern void emit_unicode_mangled_name PARAMS ((struct obstack *, const char *, int)); +extern tree force_evaluation_order PARAMS ((tree)); +extern int verify_constant_pool PARAMS ((struct JCF *)); +extern void start_java_method PARAMS ((tree)); +extern void end_java_method PARAMS ((void)); +extern void give_name_to_locals PARAMS ((struct JCF *)); +extern void expand_byte_code PARAMS ((struct JCF *, tree)); +extern int open_in_zip PARAMS ((struct JCF *, const char *, const char *, int)); +extern void set_constant_value PARAMS ((tree, tree)); #ifdef jword -extern int find_constant1 PROTO ((struct CPool *, int, jword)); -extern int find_constant2 PROTO ((struct CPool *, int, jword, jword)); +extern int find_constant1 PARAMS ((struct CPool *, int, jword)); +extern int find_constant2 PARAMS ((struct CPool *, int, jword, jword)); #endif -extern int find_utf8_constant PROTO ((struct CPool *, tree)); -extern int find_string_constant PROTO ((struct CPool *, tree)); -extern int find_class_constant PROTO ((struct CPool *, tree)); -extern int find_fieldref_index PROTO ((struct CPool *, tree)); -extern int find_methodref_index PROTO ((struct CPool *, tree)); -extern void write_constant_pool PROTO ((struct CPool *, unsigned char *, int)); -extern int count_constant_pool_bytes PROTO ((struct CPool *)); -extern int encode_newarray_type PROTO ((tree)); +extern int find_utf8_constant PARAMS ((struct CPool *, tree)); +extern int find_string_constant PARAMS ((struct CPool *, tree)); +extern int find_class_constant PARAMS ((struct CPool *, tree)); +extern int find_fieldref_index PARAMS ((struct CPool *, tree)); +extern int find_methodref_index PARAMS ((struct CPool *, tree)); +extern void write_constant_pool PARAMS ((struct CPool *, unsigned char *, int)); +extern int count_constant_pool_bytes PARAMS ((struct CPool *)); +extern int encode_newarray_type PARAMS ((tree)); #ifdef uint64 -extern void format_int PROTO ((char *, jlong, int)); -extern void format_uint PROTO ((char *, uint64, int)); +extern void format_int PARAMS ((char *, jlong, int)); +extern void format_uint PARAMS ((char *, uint64, int)); #endif -extern void jcf_trim_old_input PROTO ((struct JCF *)); +extern void jcf_trim_old_input PARAMS ((struct JCF *)); #ifdef BUFSIZ -extern void jcf_print_utf8 PROTO ((FILE *, const unsigned char *, int)); -extern void jcf_print_char PROTO ((FILE *, int)); -extern void jcf_print_utf8_replace PROTO ((FILE *, const unsigned char *, +extern void jcf_print_utf8 PARAMS ((FILE *, const unsigned char *, int)); +extern void jcf_print_char PARAMS ((FILE *, int)); +extern void jcf_print_utf8_replace PARAMS ((FILE *, const unsigned char *, int, int, int)); # if JCF_USE_STDIO -extern char* open_class PROTO ((char *, struct JCF *, FILE *, const char *)); +extern char* open_class PARAMS ((char *, struct JCF *, FILE *, const char *)); # else -extern char* open_class PROTO ((char *, struct JCF *, int, const char *)); +extern char* open_class PARAMS ((char *, struct JCF *, int, const char *)); # endif /* JCF_USE_STDIO */ #endif -void java_debug_context PROTO ((void)); +void java_debug_context PARAMS ((void)); /* We use ARGS_SIZE_RTX to indicate that gcc/expr.h has been included to declare `enum expand_modifier'. */ #if defined (TREE_CODE) && defined(RTX_CODE) && defined (HAVE_MACHINE_MODES) && defined (ARGS_SIZE_RTX) -struct rtx_def * java_lang_expand_expr PROTO ((tree, rtx, enum machine_mode, +struct rtx_def * java_lang_expand_expr PARAMS ((tree, rtx, enum machine_mode, enum expand_modifier)); #endif /* TREE_CODE && RTX_CODE && HAVE_MACHINE_MODES && ARGS_SIZE_RTX */ diff --git a/gcc/java/jcf-depend.c b/gcc/java/jcf-depend.c index ca0b246..8a9ee9e 100644 --- a/gcc/java/jcf-depend.c +++ b/gcc/java/jcf-depend.c @@ -1,6 +1,6 @@ /* Functions for handling dependency tracking when reading .class files. - Copyright (C) 1998 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -39,10 +39,10 @@ struct entry struct entry *next; }; -static void free_entry PROTO ((struct entry **)); -static void add_entry PROTO ((struct entry **, const char *)); -static const char *munge PROTO ((const char *)); -static int print_ents PROTO ((struct entry *, int)); +static void free_entry PARAMS ((struct entry **)); +static void add_entry PARAMS ((struct entry **, const char *)); +static const char *munge PARAMS ((const char *)); +static int print_ents PARAMS ((struct entry *, int)); /* List of files. */ static struct entry *dependencies = NULL; diff --git a/gcc/java/jcf-dump.c b/gcc/java/jcf-dump.c index 8a66def..2eda740 100644 --- a/gcc/java/jcf-dump.c +++ b/gcc/java/jcf-dump.c @@ -1,7 +1,7 @@ /* Program to dump out a Java(TM) .class file. Functionally similar to Sun's javap. - Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -78,18 +78,18 @@ int class_access_flags = 0; /* Print in format similar to javap. VERY IMCOMPLETE. */ int flag_javap_compatible = 0; -static void print_access_flags PROTO ((FILE *, uint16, char)); -static void print_constant_terse PROTO ((FILE*, JCF*, int, int)); -static void print_constant PROTO ((FILE *, JCF *, int, int)); -static void print_constant_ref PROTO ((FILE *, JCF *, int)); -static void disassemble_method PROTO ((JCF*, const unsigned char *, int)); -static void print_name PROTO ((FILE*, JCF*, int)); -static void print_signature PROTO ((FILE*, JCF*, int, int)); -static int utf8_equal_string PROTO ((struct JCF*, int, const char *)); -static int usage PROTO ((void)) ATTRIBUTE_NORETURN; -static void process_class PROTO ((struct JCF *)); -static void print_constant_pool PROTO ((struct JCF *)); -static void print_exception_table PROTO ((struct JCF *, +static void print_access_flags PARAMS ((FILE *, uint16, char)); +static void print_constant_terse PARAMS ((FILE*, JCF*, int, int)); +static void print_constant PARAMS ((FILE *, JCF *, int, int)); +static void print_constant_ref PARAMS ((FILE *, JCF *, int)); +static void disassemble_method PARAMS ((JCF*, const unsigned char *, int)); +static void print_name PARAMS ((FILE*, JCF*, int)); +static void print_signature PARAMS ((FILE*, JCF*, int, int)); +static int utf8_equal_string PARAMS ((struct JCF*, int, const char *)); +static int usage PARAMS ((void)) ATTRIBUTE_NORETURN; +static void process_class PARAMS ((struct JCF *)); +static void print_constant_pool PARAMS ((struct JCF *)); +static void print_exception_table PARAMS ((struct JCF *, const unsigned char *entries, int)); #define PRINT_SIGNATURE_RESULT_ONLY 1 diff --git a/gcc/java/jcf-parse.c b/gcc/java/jcf-parse.c index 0ed88ac..5c965da 100644 --- a/gcc/java/jcf-parse.c +++ b/gcc/java/jcf-parse.c @@ -1,5 +1,5 @@ /* Parser for Java(TM) .class files. - Copyright (C) 1996, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1996, 1998, 1999, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -76,16 +76,16 @@ static tree current_method = NULL_TREE; static struct JCF main_jcf[1]; /* Declarations of some functions used here. */ -static tree give_name_to_class PROTO ((JCF *jcf, int index)); -static void parse_zip_file_entries PROTO ((void)); -static void process_zip_dir PROTO ((void)); -static void parse_source_file PROTO ((tree)); -static void jcf_parse_source PROTO ((void)); -static int jcf_figure_file_type PROTO ((JCF *)); -static int find_in_current_zip PROTO ((const char *, struct JCF **)); -static void parse_class_file PROTO ((void)); -static void set_source_filename PROTO ((JCF *, int)); -static int predefined_filename_p PROTO ((tree)); +static tree give_name_to_class PARAMS ((JCF *jcf, int index)); +static void parse_zip_file_entries PARAMS ((void)); +static void process_zip_dir PARAMS ((void)); +static void parse_source_file PARAMS ((tree)); +static void jcf_parse_source PARAMS ((void)); +static int jcf_figure_file_type PARAMS ((JCF *)); +static int find_in_current_zip PARAMS ((const char *, struct JCF **)); +static void parse_class_file PARAMS ((void)); +static void set_source_filename PARAMS ((JCF *, int)); +static int predefined_filename_p PARAMS ((tree)); /* Handle "SourceFile" attribute. */ diff --git a/gcc/java/jcf-path.c b/gcc/java/jcf-path.c index 6dc57a4..55715a1 100644 --- a/gcc/java/jcf-path.c +++ b/gcc/java/jcf-path.c @@ -1,6 +1,6 @@ /* Handle CLASSPATH, -classpath, and path searching. - Copyright (C) 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -53,10 +53,10 @@ struct entry struct entry *next; }; -static void free_entry PROTO ((struct entry **)); -static void append_entry PROTO ((struct entry **, struct entry *)); -static void add_entry PROTO ((struct entry **, const char *, int)); -static void add_path PROTO ((struct entry **, const char *, int)); +static void free_entry PARAMS ((struct entry **)); +static void append_entry PARAMS ((struct entry **, struct entry *)); +static void add_entry PARAMS ((struct entry **, const char *, int)); +static void add_path PARAMS ((struct entry **, const char *, int)); /* We support several different ways to set the class path. diff --git a/gcc/java/jcf-reader.c b/gcc/java/jcf-reader.c index 44fb37e..1dabf65 100644 --- a/gcc/java/jcf-reader.c +++ b/gcc/java/jcf-reader.c @@ -2,7 +2,7 @@ It is not stand-alone: It depends on tons of macros, and the intent is you #include this file after you've defined the macros. - Copyright (C) 1996 Free Software Foundation, Inc. + Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -26,14 +26,14 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "jcf.h" #include "zipfile.h" -static int get_attribute PROTO((JCF *)); -static int jcf_parse_preamble PROTO((JCF *)); -static int jcf_parse_constant_pool PROTO((JCF *)); -static void jcf_parse_class PROTO((JCF *)); -static int jcf_parse_fields PROTO((JCF *)); -static int jcf_parse_one_method PROTO((JCF *)); -static int jcf_parse_methods PROTO((JCF *)); -static int jcf_parse_final_attributes PROTO((JCF *)); +static int get_attribute PARAMS ((JCF *)); +static int jcf_parse_preamble PARAMS ((JCF *)); +static int jcf_parse_constant_pool PARAMS ((JCF *)); +static void jcf_parse_class PARAMS ((JCF *)); +static int jcf_parse_fields PARAMS ((JCF *)); +static int jcf_parse_one_method PARAMS ((JCF *)); +static int jcf_parse_methods PARAMS ((JCF *)); +static int jcf_parse_final_attributes PARAMS ((JCF *)); static int DEFUN(get_attribute, (jcf), diff --git a/gcc/java/jcf-write.c b/gcc/java/jcf-write.c index 5fb1219..0577dcd 100644 --- a/gcc/java/jcf-write.c +++ b/gcc/java/jcf-write.c @@ -1,5 +1,5 @@ /* Write out a Java(TM) class file. - Copyright (C) 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -271,70 +271,70 @@ struct jcf_partial struct jcf_switch_state *sw_state; }; -static void generate_bytecode_insns PROTO ((tree, int, struct jcf_partial *)); -static struct chunk * alloc_chunk PROTO ((struct chunk *, unsigned char *, +static void generate_bytecode_insns PARAMS ((tree, int, struct jcf_partial *)); +static struct chunk * alloc_chunk PARAMS ((struct chunk *, unsigned char *, int, struct obstack *)); -static unsigned char * append_chunk PROTO ((unsigned char *, int, +static unsigned char * append_chunk PARAMS ((unsigned char *, int, struct jcf_partial *)); -static void append_chunk_copy PROTO ((unsigned char *, int, +static void append_chunk_copy PARAMS ((unsigned char *, int, struct jcf_partial *)); -static struct jcf_block * gen_jcf_label PROTO ((struct jcf_partial *)); -static void finish_jcf_block PROTO ((struct jcf_partial *)); -static void define_jcf_label PROTO ((struct jcf_block *, +static struct jcf_block * gen_jcf_label PARAMS ((struct jcf_partial *)); +static void finish_jcf_block PARAMS ((struct jcf_partial *)); +static void define_jcf_label PARAMS ((struct jcf_block *, struct jcf_partial *)); -static struct jcf_block * get_jcf_label_here PROTO ((struct jcf_partial *)); -static void put_linenumber PROTO ((int, struct jcf_partial *)); -static void localvar_alloc PROTO ((tree, struct jcf_partial *)); -static void localvar_free PROTO ((tree, struct jcf_partial *)); -static int get_access_flags PROTO ((tree)); -static void write_chunks PROTO ((FILE *, struct chunk *)); -static int adjust_typed_op PROTO ((tree, int)); -static void generate_bytecode_conditional PROTO ((tree, struct jcf_block *, +static struct jcf_block * get_jcf_label_here PARAMS ((struct jcf_partial *)); +static void put_linenumber PARAMS ((int, struct jcf_partial *)); +static void localvar_alloc PARAMS ((tree, struct jcf_partial *)); +static void localvar_free PARAMS ((tree, struct jcf_partial *)); +static int get_access_flags PARAMS ((tree)); +static void write_chunks PARAMS ((FILE *, struct chunk *)); +static int adjust_typed_op PARAMS ((tree, int)); +static void generate_bytecode_conditional PARAMS ((tree, struct jcf_block *, struct jcf_block *, int, struct jcf_partial *)); -static void generate_bytecode_return PROTO ((tree, struct jcf_partial *)); -static void perform_relocations PROTO ((struct jcf_partial *)); -static void init_jcf_state PROTO ((struct jcf_partial *, struct obstack *)); -static void init_jcf_method PROTO ((struct jcf_partial *, tree)); -static void release_jcf_state PROTO ((struct jcf_partial *)); -static struct chunk * generate_classfile PROTO ((tree, struct jcf_partial *)); -static struct jcf_handler *alloc_handler PROTO ((struct jcf_block *, +static void generate_bytecode_return PARAMS ((tree, struct jcf_partial *)); +static void perform_relocations PARAMS ((struct jcf_partial *)); +static void init_jcf_state PARAMS ((struct jcf_partial *, struct obstack *)); +static void init_jcf_method PARAMS ((struct jcf_partial *, tree)); +static void release_jcf_state PARAMS ((struct jcf_partial *)); +static struct chunk * generate_classfile PARAMS ((tree, struct jcf_partial *)); +static struct jcf_handler *alloc_handler PARAMS ((struct jcf_block *, struct jcf_block *, struct jcf_partial *)); -static void emit_iinc PROTO ((tree, HOST_WIDE_INT, struct jcf_partial *)); -static void emit_reloc PROTO ((HOST_WIDE_INT, int, struct jcf_block *, +static void emit_iinc PARAMS ((tree, HOST_WIDE_INT, struct jcf_partial *)); +static void emit_reloc PARAMS ((HOST_WIDE_INT, int, struct jcf_block *, struct jcf_partial *)); -static void push_constant1 PROTO ((HOST_WIDE_INT, struct jcf_partial *)); -static void push_constant2 PROTO ((HOST_WIDE_INT, struct jcf_partial *)); -static void push_int_const PROTO ((HOST_WIDE_INT, struct jcf_partial *)); -static int find_constant_wide PROTO ((HOST_WIDE_INT, HOST_WIDE_INT, +static void push_constant1 PARAMS ((HOST_WIDE_INT, struct jcf_partial *)); +static void push_constant2 PARAMS ((HOST_WIDE_INT, struct jcf_partial *)); +static void push_int_const PARAMS ((HOST_WIDE_INT, struct jcf_partial *)); +static int find_constant_wide PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT, struct jcf_partial *)); -static void push_long_const PROTO ((HOST_WIDE_INT, HOST_WIDE_INT, +static void push_long_const PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT, struct jcf_partial *)); -static int find_constant_index PROTO ((tree, struct jcf_partial *)); -static void push_long_const PROTO ((HOST_WIDE_INT, HOST_WIDE_INT, +static int find_constant_index PARAMS ((tree, struct jcf_partial *)); +static void push_long_const PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT, struct jcf_partial *)); -static void field_op PROTO ((tree, int, struct jcf_partial *)); -static void maybe_wide PROTO ((int, int, struct jcf_partial *)); -static void emit_dup PROTO ((int, int, struct jcf_partial *)); -static void emit_pop PROTO ((int, struct jcf_partial *)); -static void emit_load_or_store PROTO ((tree, int, struct jcf_partial *)); -static void emit_load PROTO ((tree, struct jcf_partial *)); -static void emit_store PROTO ((tree, struct jcf_partial *)); -static void emit_unop PROTO ((enum java_opcode, tree, struct jcf_partial *)); -static void emit_binop PROTO ((enum java_opcode, tree, struct jcf_partial *)); -static void emit_reloc PROTO ((HOST_WIDE_INT, int, struct jcf_block *, +static void field_op PARAMS ((tree, int, struct jcf_partial *)); +static void maybe_wide PARAMS ((int, int, struct jcf_partial *)); +static void emit_dup PARAMS ((int, int, struct jcf_partial *)); +static void emit_pop PARAMS ((int, struct jcf_partial *)); +static void emit_load_or_store PARAMS ((tree, int, struct jcf_partial *)); +static void emit_load PARAMS ((tree, struct jcf_partial *)); +static void emit_store PARAMS ((tree, struct jcf_partial *)); +static void emit_unop PARAMS ((enum java_opcode, tree, struct jcf_partial *)); +static void emit_binop PARAMS ((enum java_opcode, tree, struct jcf_partial *)); +static void emit_reloc PARAMS ((HOST_WIDE_INT, int, struct jcf_block *, struct jcf_partial *)); -static void emit_switch_reloc PROTO ((struct jcf_block *, +static void emit_switch_reloc PARAMS ((struct jcf_block *, struct jcf_partial *)); -static void emit_case_reloc PROTO ((struct jcf_relocation *, +static void emit_case_reloc PARAMS ((struct jcf_relocation *, struct jcf_partial *)); -static void emit_if PROTO ((struct jcf_block *, int, int, +static void emit_if PARAMS ((struct jcf_block *, int, int, struct jcf_partial *)); -static void emit_goto PROTO ((struct jcf_block *, struct jcf_partial *)); -static void emit_jsr PROTO ((struct jcf_block *, struct jcf_partial *)); -static void call_cleanups PROTO ((struct jcf_block *, struct jcf_partial *)); -static char *make_class_file_name PROTO ((tree)); +static void emit_goto PARAMS ((struct jcf_block *, struct jcf_partial *)); +static void emit_jsr PARAMS ((struct jcf_block *, struct jcf_partial *)); +static void call_cleanups PARAMS ((struct jcf_block *, struct jcf_partial *)); +static char *make_class_file_name PARAMS ((tree)); /* Utility macros for appending (big-endian) data to a buffer. We assume a local variable 'ptr' points into where we want to diff --git a/gcc/java/jcf.h b/gcc/java/jcf.h index 6b3188f..2a4cb26 100644 --- a/gcc/java/jcf.h +++ b/gcc/java/jcf.h @@ -1,6 +1,6 @@ /* Utility macros to read Java(TM) .class files and byte codes. - Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc. + Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -38,11 +38,11 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #endif #endif /* !DEFUN */ -#ifndef PROTO +#ifndef PARAMS #if defined (__STDC__) -#define PROTO(paramlist) paramlist +#define PARAMS (paramlist) paramlist #else -#define PROTO(paramlist) () +#define PARAMS (paramlist) () #endif #endif @@ -68,7 +68,7 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #define JCF_SOURCE 3 struct JCF; -typedef int (*jcf_filbuf_t) PROTO ((struct JCF*, int needed)); +typedef int (*jcf_filbuf_t) PARAMS ((struct JCF*, int needed)); typedef struct CPool { /* Available number of elements in the constants array, before it @@ -221,10 +221,10 @@ typedef struct JCF { #define DEFAULT_CLASS_PATH "." -extern const char *find_class PROTO ((const char *, int, JCF*, int)); -extern const char *find_classfile PROTO ((char *, JCF*, const char *)); -extern int jcf_filbuf_from_stdio PROTO ((JCF *jcf, int count)); -extern int jcf_unexpected_eof PROTO ((JCF*, int)) ATTRIBUTE_NORETURN; +extern const char *find_class PARAMS ((const char *, int, JCF*, int)); +extern const char *find_classfile PARAMS ((char *, JCF*, const char *)); +extern int jcf_filbuf_from_stdio PARAMS ((JCF *jcf, int count)); +extern int jcf_unexpected_eof PARAMS ((JCF*, int)) ATTRIBUTE_NORETURN; /* Extract a character from a Java-style Utf8 string. * PTR points to the current character. @@ -255,25 +255,25 @@ extern int quiet_flag; #endif /* Declarations for dependency code. */ -extern void jcf_dependency_reset PROTO ((void)); -extern void jcf_dependency_set_target PROTO ((const char *)); -extern void jcf_dependency_add_target PROTO ((const char *)); -extern void jcf_dependency_set_dep_file PROTO ((const char *)); -extern void jcf_dependency_add_file PROTO ((const char *, int)); -extern void jcf_dependency_write PROTO ((void)); -extern void jcf_dependency_init PROTO ((int)); +extern void jcf_dependency_reset PARAMS ((void)); +extern void jcf_dependency_set_target PARAMS ((const char *)); +extern void jcf_dependency_add_target PARAMS ((const char *)); +extern void jcf_dependency_set_dep_file PARAMS ((const char *)); +extern void jcf_dependency_add_file PARAMS ((const char *, int)); +extern void jcf_dependency_write PARAMS ((void)); +extern void jcf_dependency_init PARAMS ((int)); /* Declarations for path handling code. */ -extern void jcf_path_init PROTO ((void)); -extern void jcf_path_classpath_arg PROTO ((const char *)); -extern void jcf_path_CLASSPATH_arg PROTO ((const char *)); -extern void jcf_path_include_arg PROTO ((const char *)); -extern void jcf_path_seal PROTO ((void)); -extern void *jcf_path_start PROTO ((void)); -extern void *jcf_path_next PROTO ((void *)); -extern char *jcf_path_name PROTO ((void *)); -extern int jcf_path_is_zipfile PROTO ((void *)); -extern int jcf_path_is_system PROTO ((void *)); -extern int jcf_path_max_len PROTO ((void)); +extern void jcf_path_init PARAMS ((void)); +extern void jcf_path_classpath_arg PARAMS ((const char *)); +extern void jcf_path_CLASSPATH_arg PARAMS ((const char *)); +extern void jcf_path_include_arg PARAMS ((const char *)); +extern void jcf_path_seal PARAMS ((void)); +extern void *jcf_path_start PARAMS ((void)); +extern void *jcf_path_next PARAMS ((void *)); +extern char *jcf_path_name PARAMS ((void *)); +extern int jcf_path_is_zipfile PARAMS ((void *)); +extern int jcf_path_is_system PARAMS ((void *)); +extern int jcf_path_max_len PARAMS ((void)); #endif diff --git a/gcc/java/jv-scan.c b/gcc/java/jv-scan.c index 0e07f42..3d5b3b6 100644 --- a/gcc/java/jv-scan.c +++ b/gcc/java/jv-scan.c @@ -1,5 +1,5 @@ /* Main for jv-scan - Copyright (C) 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc. Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com) This file is part of GNU CC. @@ -24,9 +24,9 @@ Boston, MA 02111-1307, USA. */ #include "obstack.h" /* We use obstacks in lex.c */ -void fatal VPROTO((const char *s, ...)) ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN; -void warning VPROTO((const char *s, ...)) ATTRIBUTE_PRINTF_1; -void gcc_obstack_init PROTO ((struct obstack *obstack)); +void fatal PARAMS ((const char *s, ...)) ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN; +void warning PARAMS ((const char *s, ...)) ATTRIBUTE_PRINTF_1; +void gcc_obstack_init PARAMS ((struct obstack *obstack)); #define JC1_LITE #include "jcf.h" @@ -140,7 +140,7 @@ DEFUN (main, (argc, argv), functions */ void -fatal VPROTO((const char *s, ...)) +fatal VPARAMS ((const char *s, ...)) { #ifndef ANSI_PROTOTYPES const char *s; @@ -161,7 +161,7 @@ fatal VPROTO((const char *s, ...)) } void -warning VPROTO((const char *s, ...)) +warning VPARAMS ((const char *s, ...)) { #ifndef ANSI_PROTOTYPES const char *s; diff --git a/gcc/java/jvgenmain.c b/gcc/java/jvgenmain.c index 9c17455..da76c07 100644 --- a/gcc/java/jvgenmain.c +++ b/gcc/java/jvgenmain.c @@ -1,5 +1,5 @@ /* Program to generate "main" a Java(TM) class containing a main method. - Copyright (C) 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -38,11 +38,11 @@ const char class_mangling_prefix[] = "_CL_"; struct obstack name_obstack; -extern void error PVPROTO ((const char *, ...)) +extern void error PARAMS ((const char *, ...)) ATTRIBUTE_PRINTF_1; void -error VPROTO((const char *msgid, ...)) +error VPARAMS ((const char *msgid, ...)) { #ifndef ANSI_PROTOTYPES const char *msgid; @@ -75,8 +75,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); } static void usage (const char *) ATTRIBUTE_NORETURN; diff --git a/gcc/java/jvspec.c b/gcc/java/jvspec.c index d4dde5e..20eb5d7 100644 --- a/gcc/java/jvspec.c +++ b/gcc/java/jvspec.c @@ -1,6 +1,6 @@ /* Specific flags and argument handling of the front-end of the GNU compiler for the Java(TM) language. - Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -39,7 +39,7 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ /* True if this arg is a .class input file name. */ #define CLASS_FILE_ARG (1<<4) -static char *find_spec_file PROTO ((const char *)); +static char *find_spec_file PARAMS ((const char *)); static const char *main_class_name = NULL; int lang_specific_extra_outfiles = 0; diff --git a/gcc/java/lang.c b/gcc/java/lang.c index 11be76d..c6d6ee0 100644 --- a/gcc/java/lang.c +++ b/gcc/java/lang.c @@ -1,5 +1,5 @@ /* Java(TM) language-specific utility routines. - Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc. + Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -36,10 +36,10 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "flags.h" #include "xref.h" -static void put_decl_string PROTO ((const char *, int)); -static void put_decl_node PROTO ((tree)); -static void java_dummy_print PROTO ((const char *)); -static void lang_print_error PROTO ((const char *)); +static void put_decl_string PARAMS ((const char *, int)); +static void put_decl_node PARAMS ((tree)); +static void java_dummy_print PARAMS ((const char *)); +static void lang_print_error PARAMS ((const char *)); #ifndef OBJECT_SUFFIX # define OBJECT_SUFFIX ".o" diff --git a/gcc/java/lex.c b/gcc/java/lex.c index 814c896..24ab8ef 100644 --- a/gcc/java/lex.c +++ b/gcc/java/lex.c @@ -1,5 +1,5 @@ /* Language lexer for the GNU compiler for the Java(TM) language. - Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc. Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com) This file is part of GNU CC. @@ -41,26 +41,26 @@ extern struct obstack *expression_obstack; #endif /* Function declaration */ -static int java_lineterminator PROTO ((unicode_t)); -static char *java_sprint_unicode PROTO ((struct java_line *, int)); -static void java_unicode_2_utf8 PROTO ((unicode_t)); -static void java_lex_error PROTO ((const char *, int)); +static int java_lineterminator PARAMS ((unicode_t)); +static char *java_sprint_unicode PARAMS ((struct java_line *, int)); +static void java_unicode_2_utf8 PARAMS ((unicode_t)); +static void java_lex_error PARAMS ((const char *, int)); #ifndef JC1_LITE -static int java_is_eol PROTO ((FILE *, int)); -static tree build_wfl_node PROTO ((tree)); +static int java_is_eol PARAMS ((FILE *, int)); +static tree build_wfl_node PARAMS ((tree)); #endif -static void java_store_unicode PROTO ((struct java_line *, unicode_t, int)); -static unicode_t java_parse_escape_sequence PROTO ((void)); -static int java_letter_or_digit_p PROTO ((unicode_t)); -static int java_parse_doc_section PROTO ((unicode_t)); -static void java_parse_end_comment PROTO ((unicode_t)); -static unicode_t java_get_unicode PROTO ((void)); -static unicode_t java_read_unicode PROTO ((int, int *)); -static void java_store_unicode PROTO ((struct java_line *, unicode_t, int)); -static unicode_t java_read_char PROTO ((void)); -static void java_allocate_new_line PROTO ((void)); -static void java_unget_unicode PROTO ((void)); -static unicode_t java_sneak_unicode PROTO ((void)); +static void java_store_unicode PARAMS ((struct java_line *, unicode_t, int)); +static unicode_t java_parse_escape_sequence PARAMS ((void)); +static int java_letter_or_digit_p PARAMS ((unicode_t)); +static int java_parse_doc_section PARAMS ((unicode_t)); +static void java_parse_end_comment PARAMS ((unicode_t)); +static unicode_t java_get_unicode PARAMS ((void)); +static unicode_t java_read_unicode PARAMS ((int, int *)); +static void java_store_unicode PARAMS ((struct java_line *, unicode_t, int)); +static unicode_t java_read_char PARAMS ((void)); +static void java_allocate_new_line PARAMS ((void)); +static void java_unget_unicode PARAMS ((void)); +static unicode_t java_sneak_unicode PARAMS ((void)); void java_init_lex () diff --git a/gcc/java/lex.h b/gcc/java/lex.h index e8418b6..7bb6558 100644 --- a/gcc/java/lex.h +++ b/gcc/java/lex.h @@ -1,5 +1,5 @@ /* Language lexer definitions for the GNU compiler for the Java(TM) language. - Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc. Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com) This file is part of GNU CC. @@ -132,7 +132,7 @@ typedef struct _java_lc { #else -extern void set_float_handler PROTO((jmp_buf)); +extern void set_float_handler PARAMS ((jmp_buf)); #define SET_FLOAT_HANDLER(H) set_float_handler ((H)) #define DCONST0 dconst0 #define GET_IDENTIFIER(S) get_identifier ((S)) diff --git a/gcc/java/parse-scan.c b/gcc/java/parse-scan.c index e69996f..32628d2 100644 --- a/gcc/java/parse-scan.c +++ b/gcc/java/parse-scan.c @@ -170,8 +170,8 @@ struct method_declarator { } /* Two actions for this grammar */ -static void report_class_declaration PROTO ((const char *)); -static void report_main_declaration PROTO ((struct method_declarator *)); +static void report_class_declaration PARAMS ((const char *)); +static void report_main_declaration PARAMS ((struct method_declarator *)); #include "lex.h" #include "parse.h" diff --git a/gcc/java/parse-scan.y b/gcc/java/parse-scan.y index f5da6f9..8d8577b 100644 --- a/gcc/java/parse-scan.y +++ b/gcc/java/parse-scan.y @@ -1,5 +1,5 @@ /* Parser grammar for quick source code scan of Java(TM) language programs. - Copyright (C) 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc. Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com) This file is part of GNU CC. @@ -90,8 +90,8 @@ struct method_declarator { } /* Two actions for this grammar */ -static void report_class_declaration PROTO ((const char *)); -static void report_main_declaration PROTO ((struct method_declarator *)); +static void report_class_declaration PARAMS ((const char *)); +static void report_main_declaration PARAMS ((struct method_declarator *)); #include "lex.h" #include "parse.h" diff --git a/gcc/java/parse.c b/gcc/java/parse.c index 72b64b4..9a91349 100644 --- a/gcc/java/parse.c +++ b/gcc/java/parse.c @@ -143,202 +143,202 @@ #include "defaults.h" /* Local function prototypes */ -static char *java_accstring_lookup PROTO ((int)); -static void classitf_redefinition_error PROTO ((const char *,tree, tree, tree)); -static void variable_redefinition_error PROTO ((tree, tree, tree, int)); -static void check_modifiers PROTO ((const char *, int, int)); -static tree create_class PROTO ((int, tree, tree, tree)); -static tree create_interface PROTO ((int, tree, tree)); -static tree find_field PROTO ((tree, tree)); -static tree lookup_field_wrapper PROTO ((tree, tree)); -static int duplicate_declaration_error_p PROTO ((tree, tree, tree)); -static void register_fields PROTO ((int, tree, tree)); -static tree parser_qualified_classname PROTO ((tree)); -static int parser_check_super PROTO ((tree, tree, tree)); -static int parser_check_super_interface PROTO ((tree, tree, tree)); -static void check_modifiers_consistency PROTO ((int)); -static tree lookup_cl PROTO ((tree)); -static tree lookup_java_method2 PROTO ((tree, tree, int)); -static tree method_header PROTO ((int, tree, tree, tree)); -static void fix_method_argument_names PROTO ((tree ,tree)); -static tree method_declarator PROTO ((tree, tree)); -static void parse_warning_context PVPROTO ((tree cl, const char *msg, ...)) +static char *java_accstring_lookup PARAMS ((int)); +static void classitf_redefinition_error PARAMS ((const char *,tree, tree, tree)); +static void variable_redefinition_error PARAMS ((tree, tree, tree, int)); +static void check_modifiers PARAMS ((const char *, int, int)); +static tree create_class PARAMS ((int, tree, tree, tree)); +static tree create_interface PARAMS ((int, tree, tree)); +static tree find_field PARAMS ((tree, tree)); +static tree lookup_field_wrapper PARAMS ((tree, tree)); +static int duplicate_declaration_error_p PARAMS ((tree, tree, tree)); +static void register_fields PARAMS ((int, tree, tree)); +static tree parser_qualified_classname PARAMS ((tree)); +static int parser_check_super PARAMS ((tree, tree, tree)); +static int parser_check_super_interface PARAMS ((tree, tree, tree)); +static void check_modifiers_consistency PARAMS ((int)); +static tree lookup_cl PARAMS ((tree)); +static tree lookup_java_method2 PARAMS ((tree, tree, int)); +static tree method_header PARAMS ((int, tree, tree, tree)); +static void fix_method_argument_names PARAMS ((tree ,tree)); +static tree method_declarator PARAMS ((tree, tree)); +static void parse_warning_context PARAMS ((tree cl, const char *msg, ...)) ATTRIBUTE_PRINTF_2; -static void issue_warning_error_from_context PROTO ((tree, const char *msg, va_list)); -static void parse_ctor_invocation_error PROTO ((void)); -static tree parse_jdk1_1_error PROTO ((const char *)); -static void complete_class_report_errors PROTO ((jdep *)); -static int process_imports PROTO ((void)); -static void read_import_dir PROTO ((tree)); -static int find_in_imports_on_demand PROTO ((tree)); -static int find_in_imports PROTO ((tree)); -static int check_pkg_class_access PROTO ((tree, tree)); -static tree resolve_package PROTO ((tree, tree *)); -static tree lookup_package_type PROTO ((const char *, int)); -static tree lookup_package_type_and_set_next PROTO ((const char *, int, tree *)); -static tree resolve_class PROTO ((tree, tree, tree)); -static void declare_local_variables PROTO ((int, tree, tree)); -static void source_start_java_method PROTO ((tree)); -static void source_end_java_method PROTO ((void)); -static void expand_start_java_method PROTO ((tree)); -static tree find_name_in_single_imports PROTO ((tree)); -static void check_abstract_method_header PROTO ((tree)); -static tree lookup_java_interface_method2 PROTO ((tree, tree)); -static tree resolve_expression_name PROTO ((tree, tree *)); -static tree maybe_create_class_interface_decl PROTO ((tree, tree, tree)); -static int check_class_interface_creation PROTO ((int, int, tree, +static void issue_warning_error_from_context PARAMS ((tree, const char *msg, va_list)); +static void parse_ctor_invocation_error PARAMS ((void)); +static tree parse_jdk1_1_error PARAMS ((const char *)); +static void complete_class_report_errors PARAMS ((jdep *)); +static int process_imports PARAMS ((void)); +static void read_import_dir PARAMS ((tree)); +static int find_in_imports_on_demand PARAMS ((tree)); +static int find_in_imports PARAMS ((tree)); +static int check_pkg_class_access PARAMS ((tree, tree)); +static tree resolve_package PARAMS ((tree, tree *)); +static tree lookup_package_type PARAMS ((const char *, int)); +static tree lookup_package_type_and_set_next PARAMS ((const char *, int, tree *)); +static tree resolve_class PARAMS ((tree, tree, tree)); +static void declare_local_variables PARAMS ((int, tree, tree)); +static void source_start_java_method PARAMS ((tree)); +static void source_end_java_method PARAMS ((void)); +static void expand_start_java_method PARAMS ((tree)); +static tree find_name_in_single_imports PARAMS ((tree)); +static void check_abstract_method_header PARAMS ((tree)); +static tree lookup_java_interface_method2 PARAMS ((tree, tree)); +static tree resolve_expression_name PARAMS ((tree, tree *)); +static tree maybe_create_class_interface_decl PARAMS ((tree, tree, tree)); +static int check_class_interface_creation PARAMS ((int, int, tree, tree, tree, tree)); -static tree patch_method_invocation PROTO ((tree, tree, tree, +static tree patch_method_invocation PARAMS ((tree, tree, tree, int *, tree *)); -static int breakdown_qualified PROTO ((tree *, tree *, tree)); -static tree resolve_and_layout PROTO ((tree, tree)); -static tree resolve_no_layout PROTO ((tree, tree)); -static int invocation_mode PROTO ((tree, int)); -static tree find_applicable_accessible_methods_list PROTO ((int, tree, +static int breakdown_qualified PARAMS ((tree *, tree *, tree)); +static tree resolve_and_layout PARAMS ((tree, tree)); +static tree resolve_no_layout PARAMS ((tree, tree)); +static int invocation_mode PARAMS ((tree, int)); +static tree find_applicable_accessible_methods_list PARAMS ((int, tree, tree, tree)); -static void search_applicable_methods_list PROTO ((int, tree, tree, tree, +static void search_applicable_methods_list PARAMS ((int, tree, tree, tree, tree *, tree *)); -static tree find_most_specific_methods_list PROTO ((tree)); -static int argument_types_convertible PROTO ((tree, tree)); -static tree patch_invoke PROTO ((tree, tree, tree)); -static tree lookup_method_invoke PROTO ((int, tree, tree, tree, tree)); -static tree register_incomplete_type PROTO ((int, tree, tree, tree)); -static tree obtain_incomplete_type PROTO ((tree)); -static tree java_complete_lhs PROTO ((tree)); -static tree java_complete_tree PROTO ((tree)); -static int java_pre_expand_clinit PROTO ((tree)); -static void java_complete_expand_method PROTO ((tree)); -static int unresolved_type_p PROTO ((tree, tree *)); -static void create_jdep_list PROTO ((struct parser_ctxt *)); -static tree build_expr_block PROTO ((tree, tree)); -static tree enter_block PROTO ((void)); -static tree enter_a_block PROTO ((tree)); -static tree exit_block PROTO ((void)); -static tree lookup_name_in_blocks PROTO ((tree)); -static void maybe_absorb_scoping_blocks PROTO ((void)); -static tree build_method_invocation PROTO ((tree, tree)); -static tree build_new_invocation PROTO ((tree, tree)); -static tree build_assignment PROTO ((int, int, tree, tree)); -static tree build_binop PROTO ((enum tree_code, int, tree, tree)); -static int check_final_assignment PROTO ((tree ,tree)); -static tree patch_assignment PROTO ((tree, tree, tree )); -static tree patch_binop PROTO ((tree, tree, tree)); -static tree build_unaryop PROTO ((int, int, tree)); -static tree build_incdec PROTO ((int, int, tree, int)); -static tree patch_unaryop PROTO ((tree, tree)); -static tree build_cast PROTO ((int, tree, tree)); -static tree build_null_of_type PROTO ((tree)); -static tree patch_cast PROTO ((tree, tree)); -static int valid_ref_assignconv_cast_p PROTO ((tree, tree, int)); -static int valid_builtin_assignconv_identity_widening_p PROTO ((tree, tree)); -static int valid_cast_to_p PROTO ((tree, tree)); -static int valid_method_invocation_conversion_p PROTO ((tree, tree)); -static tree try_builtin_assignconv PROTO ((tree, tree, tree)); -static tree try_reference_assignconv PROTO ((tree, tree)); -static tree build_unresolved_array_type PROTO ((tree)); -static tree build_array_from_name PROTO ((tree, tree, tree, tree *)); -static tree build_array_ref PROTO ((int, tree, tree)); -static tree patch_array_ref PROTO ((tree)); -static tree make_qualified_name PROTO ((tree, tree, int)); -static tree merge_qualified_name PROTO ((tree, tree)); -static tree make_qualified_primary PROTO ((tree, tree, int)); -static int resolve_qualified_expression_name PROTO ((tree, tree *, +static tree find_most_specific_methods_list PARAMS ((tree)); +static int argument_types_convertible PARAMS ((tree, tree)); +static tree patch_invoke PARAMS ((tree, tree, tree)); +static tree lookup_method_invoke PARAMS ((int, tree, tree, tree, tree)); +static tree register_incomplete_type PARAMS ((int, tree, tree, tree)); +static tree obtain_incomplete_type PARAMS ((tree)); +static tree java_complete_lhs PARAMS ((tree)); +static tree java_complete_tree PARAMS ((tree)); +static int java_pre_expand_clinit PARAMS ((tree)); +static void java_complete_expand_method PARAMS ((tree)); +static int unresolved_type_p PARAMS ((tree, tree *)); +static void create_jdep_list PARAMS ((struct parser_ctxt *)); +static tree build_expr_block PARAMS ((tree, tree)); +static tree enter_block PARAMS ((void)); +static tree enter_a_block PARAMS ((tree)); +static tree exit_block PARAMS ((void)); +static tree lookup_name_in_blocks PARAMS ((tree)); +static void maybe_absorb_scoping_blocks PARAMS ((void)); +static tree build_method_invocation PARAMS ((tree, tree)); +static tree build_new_invocation PARAMS ((tree, tree)); +static tree build_assignment PARAMS ((int, int, tree, tree)); +static tree build_binop PARAMS ((enum tree_code, int, tree, tree)); +static int check_final_assignment PARAMS ((tree ,tree)); +static tree patch_assignment PARAMS ((tree, tree, tree )); +static tree patch_binop PARAMS ((tree, tree, tree)); +static tree build_unaryop PARAMS ((int, int, tree)); +static tree build_incdec PARAMS ((int, int, tree, int)); +static tree patch_unaryop PARAMS ((tree, tree)); +static tree build_cast PARAMS ((int, tree, tree)); +static tree build_null_of_type PARAMS ((tree)); +static tree patch_cast PARAMS ((tree, tree)); +static int valid_ref_assignconv_cast_p PARAMS ((tree, tree, int)); +static int valid_builtin_assignconv_identity_widening_p PARAMS ((tree, tree)); +static int valid_cast_to_p PARAMS ((tree, tree)); +static int valid_method_invocation_conversion_p PARAMS ((tree, tree)); +static tree try_builtin_assignconv PARAMS ((tree, tree, tree)); +static tree try_reference_assignconv PARAMS ((tree, tree)); +static tree build_unresolved_array_type PARAMS ((tree)); +static tree build_array_from_name PARAMS ((tree, tree, tree, tree *)); +static tree build_array_ref PARAMS ((int, tree, tree)); +static tree patch_array_ref PARAMS ((tree)); +static tree make_qualified_name PARAMS ((tree, tree, int)); +static tree merge_qualified_name PARAMS ((tree, tree)); +static tree make_qualified_primary PARAMS ((tree, tree, int)); +static int resolve_qualified_expression_name PARAMS ((tree, tree *, tree *, tree *)); -static void qualify_ambiguous_name PROTO ((tree)); -static void maybe_generate_clinit PROTO ((void)); -static tree resolve_field_access PROTO ((tree, tree *, tree *)); -static tree build_newarray_node PROTO ((tree, tree, int)); -static tree patch_newarray PROTO ((tree)); -static tree resolve_type_during_patch PROTO ((tree)); -static tree build_this PROTO ((int)); -static tree build_return PROTO ((int, tree)); -static tree patch_return PROTO ((tree)); -static tree maybe_access_field PROTO ((tree, tree, tree)); -static int complete_function_arguments PROTO ((tree)); -static int check_for_static_method_reference PROTO ((tree, tree, tree, tree, tree)); -static int not_accessible_p PROTO ((tree, tree, int)); -static void check_deprecation PROTO ((tree, tree)); -static int class_in_current_package PROTO ((tree)); -static tree build_if_else_statement PROTO ((int, tree, tree, tree)); -static tree patch_if_else_statement PROTO ((tree)); -static tree add_stmt_to_compound PROTO ((tree, tree, tree)); -static tree add_stmt_to_block PROTO ((tree, tree, tree)); -static tree patch_exit_expr PROTO ((tree)); -static tree build_labeled_block PROTO ((int, tree)); -static tree finish_labeled_statement PROTO ((tree, tree)); -static tree build_bc_statement PROTO ((int, int, tree)); -static tree patch_bc_statement PROTO ((tree)); -static tree patch_loop_statement PROTO ((tree)); -static tree build_new_loop PROTO ((tree)); -static tree build_loop_body PROTO ((int, tree, int)); -static tree finish_loop_body PROTO ((int, tree, tree, int)); -static tree build_debugable_stmt PROTO ((int, tree)); -static tree finish_for_loop PROTO ((int, tree, tree, tree)); -static tree patch_switch_statement PROTO ((tree)); -static tree string_constant_concatenation PROTO ((tree, tree)); -static tree build_string_concatenation PROTO ((tree, tree)); -static tree patch_string_cst PROTO ((tree)); -static tree patch_string PROTO ((tree)); -static tree build_try_statement PROTO ((int, tree, tree)); -static tree build_try_finally_statement PROTO ((int, tree, tree)); -static tree patch_try_statement PROTO ((tree)); -static tree patch_synchronized_statement PROTO ((tree, tree)); -static tree patch_throw_statement PROTO ((tree, tree)); -static void check_thrown_exceptions PROTO ((int, tree)); -static int check_thrown_exceptions_do PROTO ((tree)); -static void purge_unchecked_exceptions PROTO ((tree)); -static void check_throws_clauses PROTO ((tree, tree, tree)); -static void finish_method_declaration PROTO ((tree)); -static tree build_super_invocation PROTO ((tree)); -static int verify_constructor_circularity PROTO ((tree, tree)); -static char *constructor_circularity_msg PROTO ((tree, tree)); -static tree build_this_super_qualified_invocation PROTO ((int, tree, tree, +static void qualify_ambiguous_name PARAMS ((tree)); +static void maybe_generate_clinit PARAMS ((void)); +static tree resolve_field_access PARAMS ((tree, tree *, tree *)); +static tree build_newarray_node PARAMS ((tree, tree, int)); +static tree patch_newarray PARAMS ((tree)); +static tree resolve_type_during_patch PARAMS ((tree)); +static tree build_this PARAMS ((int)); +static tree build_return PARAMS ((int, tree)); +static tree patch_return PARAMS ((tree)); +static tree maybe_access_field PARAMS ((tree, tree, tree)); +static int complete_function_arguments PARAMS ((tree)); +static int check_for_static_method_reference PARAMS ((tree, tree, tree, tree, tree)); +static int not_accessible_p PARAMS ((tree, tree, int)); +static void check_deprecation PARAMS ((tree, tree)); +static int class_in_current_package PARAMS ((tree)); +static tree build_if_else_statement PARAMS ((int, tree, tree, tree)); +static tree patch_if_else_statement PARAMS ((tree)); +static tree add_stmt_to_compound PARAMS ((tree, tree, tree)); +static tree add_stmt_to_block PARAMS ((tree, tree, tree)); +static tree patch_exit_expr PARAMS ((tree)); +static tree build_labeled_block PARAMS ((int, tree)); +static tree finish_labeled_statement PARAMS ((tree, tree)); +static tree build_bc_statement PARAMS ((int, int, tree)); +static tree patch_bc_statement PARAMS ((tree)); +static tree patch_loop_statement PARAMS ((tree)); +static tree build_new_loop PARAMS ((tree)); +static tree build_loop_body PARAMS ((int, tree, int)); +static tree finish_loop_body PARAMS ((int, tree, tree, int)); +static tree build_debugable_stmt PARAMS ((int, tree)); +static tree finish_for_loop PARAMS ((int, tree, tree, tree)); +static tree patch_switch_statement PARAMS ((tree)); +static tree string_constant_concatenation PARAMS ((tree, tree)); +static tree build_string_concatenation PARAMS ((tree, tree)); +static tree patch_string_cst PARAMS ((tree)); +static tree patch_string PARAMS ((tree)); +static tree build_try_statement PARAMS ((int, tree, tree)); +static tree build_try_finally_statement PARAMS ((int, tree, tree)); +static tree patch_try_statement PARAMS ((tree)); +static tree patch_synchronized_statement PARAMS ((tree, tree)); +static tree patch_throw_statement PARAMS ((tree, tree)); +static void check_thrown_exceptions PARAMS ((int, tree)); +static int check_thrown_exceptions_do PARAMS ((tree)); +static void purge_unchecked_exceptions PARAMS ((tree)); +static void check_throws_clauses PARAMS ((tree, tree, tree)); +static void finish_method_declaration PARAMS ((tree)); +static tree build_super_invocation PARAMS ((tree)); +static int verify_constructor_circularity PARAMS ((tree, tree)); +static char *constructor_circularity_msg PARAMS ((tree, tree)); +static tree build_this_super_qualified_invocation PARAMS ((int, tree, tree, int, int)); -static const char *get_printable_method_name PROTO ((tree)); -static tree patch_conditional_expr PROTO ((tree, tree, tree)); -static void maybe_generate_finit PROTO ((void)); -static void fix_constructors PROTO ((tree)); -static int verify_constructor_super PROTO ((void)); -static tree create_artificial_method PROTO ((tree, int, tree, tree, tree)); -static void start_artificial_method_body PROTO ((tree)); -static void end_artificial_method_body PROTO ((tree)); -static int check_method_redefinition PROTO ((tree, tree)); -static int reset_method_name PROTO ((tree)); -static void java_check_regular_methods PROTO ((tree)); -static void java_check_abstract_methods PROTO ((tree)); -static tree maybe_build_primttype_type_ref PROTO ((tree, tree)); -static void unreachable_stmt_error PROTO ((tree)); -static tree find_expr_with_wfl PROTO ((tree)); -static void missing_return_error PROTO ((tree)); -static tree build_new_array_init PROTO ((int, tree)); -static tree patch_new_array_init PROTO ((tree, tree)); -static tree maybe_build_array_element_wfl PROTO ((tree)); -static int array_constructor_check_entry PROTO ((tree, tree)); -static const char *purify_type_name PROTO ((const char *)); -static tree fold_constant_for_init PROTO ((tree, tree)); -static tree strip_out_static_field_access_decl PROTO ((tree)); -static jdeplist *reverse_jdep_list PROTO ((struct parser_ctxt *)); -static void static_ref_err PROTO ((tree, tree, tree)); -static void parser_add_interface PROTO ((tree, tree, tree)); -static void add_superinterfaces PROTO ((tree, tree)); -static tree jdep_resolve_class PROTO ((jdep *)); -static int note_possible_classname PROTO ((const char *, int)); -static void java_complete_expand_methods PROTO ((void)); -static void java_expand_finals PROTO ((void)); -static tree cut_identifier_in_qualified PROTO ((tree)); -static tree java_stabilize_reference PROTO ((tree)); -static tree do_unary_numeric_promotion PROTO ((tree)); -static char * operator_string PROTO ((tree)); -static tree do_merge_string_cste PROTO ((tree, const char *, int, int)); -static tree merge_string_cste PROTO ((tree, tree, int)); -static tree java_refold PROTO ((tree)); -static int java_decl_equiv PROTO ((tree, tree)); -static int binop_compound_p PROTO ((enum tree_code)); -static tree search_loop PROTO ((tree)); -static int labeled_block_contains_loop_p PROTO ((tree, tree)); -static void check_abstract_method_definitions PROTO ((int, tree, tree)); -static void java_check_abstract_method_definitions PROTO ((tree)); -static void java_debug_context_do PROTO ((int)); +static const char *get_printable_method_name PARAMS ((tree)); +static tree patch_conditional_expr PARAMS ((tree, tree, tree)); +static void maybe_generate_finit PARAMS ((void)); +static void fix_constructors PARAMS ((tree)); +static int verify_constructor_super PARAMS ((void)); +static tree create_artificial_method PARAMS ((tree, int, tree, tree, tree)); +static void start_artificial_method_body PARAMS ((tree)); +static void end_artificial_method_body PARAMS ((tree)); +static int check_method_redefinition PARAMS ((tree, tree)); +static int reset_method_name PARAMS ((tree)); +static void java_check_regular_methods PARAMS ((tree)); +static void java_check_abstract_methods PARAMS ((tree)); +static tree maybe_build_primttype_type_ref PARAMS ((tree, tree)); +static void unreachable_stmt_error PARAMS ((tree)); +static tree find_expr_with_wfl PARAMS ((tree)); +static void missing_return_error PARAMS ((tree)); +static tree build_new_array_init PARAMS ((int, tree)); +static tree patch_new_array_init PARAMS ((tree, tree)); +static tree maybe_build_array_element_wfl PARAMS ((tree)); +static int array_constructor_check_entry PARAMS ((tree, tree)); +static const char *purify_type_name PARAMS ((const char *)); +static tree fold_constant_for_init PARAMS ((tree, tree)); +static tree strip_out_static_field_access_decl PARAMS ((tree)); +static jdeplist *reverse_jdep_list PARAMS ((struct parser_ctxt *)); +static void static_ref_err PARAMS ((tree, tree, tree)); +static void parser_add_interface PARAMS ((tree, tree, tree)); +static void add_superinterfaces PARAMS ((tree, tree)); +static tree jdep_resolve_class PARAMS ((jdep *)); +static int note_possible_classname PARAMS ((const char *, int)); +static void java_complete_expand_methods PARAMS ((void)); +static void java_expand_finals PARAMS ((void)); +static tree cut_identifier_in_qualified PARAMS ((tree)); +static tree java_stabilize_reference PARAMS ((tree)); +static tree do_unary_numeric_promotion PARAMS ((tree)); +static char * operator_string PARAMS ((tree)); +static tree do_merge_string_cste PARAMS ((tree, const char *, int, int)); +static tree merge_string_cste PARAMS ((tree, tree, int)); +static tree java_refold PARAMS ((tree)); +static int java_decl_equiv PARAMS ((tree, tree)); +static int binop_compound_p PARAMS ((enum tree_code)); +static tree search_loop PARAMS ((tree)); +static int labeled_block_contains_loop_p PARAMS ((tree, tree)); +static void check_abstract_method_definitions PARAMS ((int, tree, tree)); +static void java_check_abstract_method_definitions PARAMS ((tree)); +static void java_debug_context_do PARAMS ((int)); /* Number of error found so far. */ int java_error_count; @@ -5211,7 +5211,7 @@ issue_warning_error_from_context (cl, msg, ap) /* Issue an error message at a current source line CL */ void -parse_error_context VPROTO ((tree cl, const char *msg, ...)) +parse_error_context VPARAMS ((tree cl, const char *msg, ...)) { #ifndef ANSI_PROTOTYPES tree cl; @@ -5231,7 +5231,7 @@ parse_error_context VPROTO ((tree cl, const char *msg, ...)) /* Issue a warning at a current source line CL */ static void -parse_warning_context VPROTO ((tree cl, const char *msg, ...)) +parse_warning_context VPARAMS ((tree cl, const char *msg, ...)) { #ifndef ANSI_PROTOTYPES tree cl; diff --git a/gcc/java/parse.h b/gcc/java/parse.h index d79c8ae..62acc70 100644 --- a/gcc/java/parse.h +++ b/gcc/java/parse.h @@ -1,5 +1,5 @@ /* Language parser definitions for the GNU compiler for the Java(TM) language. - Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc. Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com) This file is part of GNU CC. @@ -36,8 +36,8 @@ extern int quiet_flag; #ifndef JC1_LITE /* Function extern to java/ */ -extern int int_fits_type_p PROTO ((tree, tree)); -extern tree stabilize_reference PROTO ((tree)); +extern int int_fits_type_p PARAMS ((tree, tree)); +extern tree stabilize_reference PARAMS ((tree)); #endif /* Macros for verbose debug info */ @@ -671,28 +671,28 @@ struct parser_ctxt { }; #ifndef JC1_LITE -void safe_layout_class PROTO ((tree)); -void java_complete_class PROTO ((void)); -void java_check_circular_reference PROTO ((void)); -void java_fix_constructors PROTO ((void)); -void java_check_final PROTO ((void)); -void java_layout_classes PROTO ((void)); -tree java_method_add_stmt PROTO ((tree, tree)); -void java_expand_switch PROTO ((tree)); -int java_report_errors PROTO ((void)); -extern tree do_resolve_class PROTO ((tree, tree, tree)); +void safe_layout_class PARAMS ((tree)); +void java_complete_class PARAMS ((void)); +void java_check_circular_reference PARAMS ((void)); +void java_fix_constructors PARAMS ((void)); +void java_check_final PARAMS ((void)); +void java_layout_classes PARAMS ((void)); +tree java_method_add_stmt PARAMS ((tree, tree)); +void java_expand_switch PARAMS ((tree)); +int java_report_errors PARAMS ((void)); +extern tree do_resolve_class PARAMS ((tree, tree, tree)); #endif -char *java_get_line_col PROTO ((char *, int, int)); -extern void reset_report PROTO ((void)); +char *java_get_line_col PARAMS ((char *, int, int)); +extern void reset_report PARAMS ((void)); /* Always in use, no matter what you compile */ -void java_push_parser_context PROTO ((void)); -void java_pop_parser_context PROTO ((int)); -void java_init_lex PROTO ((void)); -extern void java_parser_context_save_global PROTO ((void)); -extern void java_parser_context_restore_global PROTO ((void)); -int yyparse PROTO ((void)); -extern int java_parse PROTO ((void)); -void yyerror PROTO ((const char *)); -extern void java_expand_classes PROTO ((void)); +void java_push_parser_context PARAMS ((void)); +void java_pop_parser_context PARAMS ((int)); +void java_init_lex PARAMS ((void)); +extern void java_parser_context_save_global PARAMS ((void)); +extern void java_parser_context_restore_global PARAMS ((void)); +int yyparse PARAMS ((void)); +extern int java_parse PARAMS ((void)); +void yyerror PARAMS ((const char *)); +extern void java_expand_classes PARAMS ((void)); #endif diff --git a/gcc/java/parse.y b/gcc/java/parse.y index b4d9d76..906b808 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -1,6 +1,6 @@ /* Source code parsing and tree node generation for the GNU compiler for the Java(TM) language. - Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc. Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com) This file is part of GNU CC. @@ -67,202 +67,202 @@ definitions and other extensions. */ #include "defaults.h" /* Local function prototypes */ -static char *java_accstring_lookup PROTO ((int)); -static void classitf_redefinition_error PROTO ((const char *,tree, tree, tree)); -static void variable_redefinition_error PROTO ((tree, tree, tree, int)); -static void check_modifiers PROTO ((const char *, int, int)); -static tree create_class PROTO ((int, tree, tree, tree)); -static tree create_interface PROTO ((int, tree, tree)); -static tree find_field PROTO ((tree, tree)); -static tree lookup_field_wrapper PROTO ((tree, tree)); -static int duplicate_declaration_error_p PROTO ((tree, tree, tree)); -static void register_fields PROTO ((int, tree, tree)); -static tree parser_qualified_classname PROTO ((tree)); -static int parser_check_super PROTO ((tree, tree, tree)); -static int parser_check_super_interface PROTO ((tree, tree, tree)); -static void check_modifiers_consistency PROTO ((int)); -static tree lookup_cl PROTO ((tree)); -static tree lookup_java_method2 PROTO ((tree, tree, int)); -static tree method_header PROTO ((int, tree, tree, tree)); -static void fix_method_argument_names PROTO ((tree ,tree)); -static tree method_declarator PROTO ((tree, tree)); -static void parse_warning_context PVPROTO ((tree cl, const char *msg, ...)) +static char *java_accstring_lookup PARAMS ((int)); +static void classitf_redefinition_error PARAMS ((const char *,tree, tree, tree)); +static void variable_redefinition_error PARAMS ((tree, tree, tree, int)); +static void check_modifiers PARAMS ((const char *, int, int)); +static tree create_class PARAMS ((int, tree, tree, tree)); +static tree create_interface PARAMS ((int, tree, tree)); +static tree find_field PARAMS ((tree, tree)); +static tree lookup_field_wrapper PARAMS ((tree, tree)); +static int duplicate_declaration_error_p PARAMS ((tree, tree, tree)); +static void register_fields PARAMS ((int, tree, tree)); +static tree parser_qualified_classname PARAMS ((tree)); +static int parser_check_super PARAMS ((tree, tree, tree)); +static int parser_check_super_interface PARAMS ((tree, tree, tree)); +static void check_modifiers_consistency PARAMS ((int)); +static tree lookup_cl PARAMS ((tree)); +static tree lookup_java_method2 PARAMS ((tree, tree, int)); +static tree method_header PARAMS ((int, tree, tree, tree)); +static void fix_method_argument_names PARAMS ((tree ,tree)); +static tree method_declarator PARAMS ((tree, tree)); +static void parse_warning_context PARAMS ((tree cl, const char *msg, ...)) ATTRIBUTE_PRINTF_2; -static void issue_warning_error_from_context PROTO ((tree, const char *msg, va_list)); -static void parse_ctor_invocation_error PROTO ((void)); -static tree parse_jdk1_1_error PROTO ((const char *)); -static void complete_class_report_errors PROTO ((jdep *)); -static int process_imports PROTO ((void)); -static void read_import_dir PROTO ((tree)); -static int find_in_imports_on_demand PROTO ((tree)); -static int find_in_imports PROTO ((tree)); -static int check_pkg_class_access PROTO ((tree, tree)); -static tree resolve_package PROTO ((tree, tree *)); -static tree lookup_package_type PROTO ((const char *, int)); -static tree lookup_package_type_and_set_next PROTO ((const char *, int, tree *)); -static tree resolve_class PROTO ((tree, tree, tree)); -static void declare_local_variables PROTO ((int, tree, tree)); -static void source_start_java_method PROTO ((tree)); -static void source_end_java_method PROTO ((void)); -static void expand_start_java_method PROTO ((tree)); -static tree find_name_in_single_imports PROTO ((tree)); -static void check_abstract_method_header PROTO ((tree)); -static tree lookup_java_interface_method2 PROTO ((tree, tree)); -static tree resolve_expression_name PROTO ((tree, tree *)); -static tree maybe_create_class_interface_decl PROTO ((tree, tree, tree)); -static int check_class_interface_creation PROTO ((int, int, tree, +static void issue_warning_error_from_context PARAMS ((tree, const char *msg, va_list)); +static void parse_ctor_invocation_error PARAMS ((void)); +static tree parse_jdk1_1_error PARAMS ((const char *)); +static void complete_class_report_errors PARAMS ((jdep *)); +static int process_imports PARAMS ((void)); +static void read_import_dir PARAMS ((tree)); +static int find_in_imports_on_demand PARAMS ((tree)); +static int find_in_imports PARAMS ((tree)); +static int check_pkg_class_access PARAMS ((tree, tree)); +static tree resolve_package PARAMS ((tree, tree *)); +static tree lookup_package_type PARAMS ((const char *, int)); +static tree lookup_package_type_and_set_next PARAMS ((const char *, int, tree *)); +static tree resolve_class PARAMS ((tree, tree, tree)); +static void declare_local_variables PARAMS ((int, tree, tree)); +static void source_start_java_method PARAMS ((tree)); +static void source_end_java_method PARAMS ((void)); +static void expand_start_java_method PARAMS ((tree)); +static tree find_name_in_single_imports PARAMS ((tree)); +static void check_abstract_method_header PARAMS ((tree)); +static tree lookup_java_interface_method2 PARAMS ((tree, tree)); +static tree resolve_expression_name PARAMS ((tree, tree *)); +static tree maybe_create_class_interface_decl PARAMS ((tree, tree, tree)); +static int check_class_interface_creation PARAMS ((int, int, tree, tree, tree, tree)); -static tree patch_method_invocation PROTO ((tree, tree, tree, +static tree patch_method_invocation PARAMS ((tree, tree, tree, int *, tree *)); -static int breakdown_qualified PROTO ((tree *, tree *, tree)); -static tree resolve_and_layout PROTO ((tree, tree)); -static tree resolve_no_layout PROTO ((tree, tree)); -static int invocation_mode PROTO ((tree, int)); -static tree find_applicable_accessible_methods_list PROTO ((int, tree, +static int breakdown_qualified PARAMS ((tree *, tree *, tree)); +static tree resolve_and_layout PARAMS ((tree, tree)); +static tree resolve_no_layout PARAMS ((tree, tree)); +static int invocation_mode PARAMS ((tree, int)); +static tree find_applicable_accessible_methods_list PARAMS ((int, tree, tree, tree)); -static void search_applicable_methods_list PROTO ((int, tree, tree, tree, +static void search_applicable_methods_list PARAMS ((int, tree, tree, tree, tree *, tree *)); -static tree find_most_specific_methods_list PROTO ((tree)); -static int argument_types_convertible PROTO ((tree, tree)); -static tree patch_invoke PROTO ((tree, tree, tree)); -static tree lookup_method_invoke PROTO ((int, tree, tree, tree, tree)); -static tree register_incomplete_type PROTO ((int, tree, tree, tree)); -static tree obtain_incomplete_type PROTO ((tree)); -static tree java_complete_lhs PROTO ((tree)); -static tree java_complete_tree PROTO ((tree)); -static int java_pre_expand_clinit PROTO ((tree)); -static void java_complete_expand_method PROTO ((tree)); -static int unresolved_type_p PROTO ((tree, tree *)); -static void create_jdep_list PROTO ((struct parser_ctxt *)); -static tree build_expr_block PROTO ((tree, tree)); -static tree enter_block PROTO ((void)); -static tree enter_a_block PROTO ((tree)); -static tree exit_block PROTO ((void)); -static tree lookup_name_in_blocks PROTO ((tree)); -static void maybe_absorb_scoping_blocks PROTO ((void)); -static tree build_method_invocation PROTO ((tree, tree)); -static tree build_new_invocation PROTO ((tree, tree)); -static tree build_assignment PROTO ((int, int, tree, tree)); -static tree build_binop PROTO ((enum tree_code, int, tree, tree)); -static int check_final_assignment PROTO ((tree ,tree)); -static tree patch_assignment PROTO ((tree, tree, tree )); -static tree patch_binop PROTO ((tree, tree, tree)); -static tree build_unaryop PROTO ((int, int, tree)); -static tree build_incdec PROTO ((int, int, tree, int)); -static tree patch_unaryop PROTO ((tree, tree)); -static tree build_cast PROTO ((int, tree, tree)); -static tree build_null_of_type PROTO ((tree)); -static tree patch_cast PROTO ((tree, tree)); -static int valid_ref_assignconv_cast_p PROTO ((tree, tree, int)); -static int valid_builtin_assignconv_identity_widening_p PROTO ((tree, tree)); -static int valid_cast_to_p PROTO ((tree, tree)); -static int valid_method_invocation_conversion_p PROTO ((tree, tree)); -static tree try_builtin_assignconv PROTO ((tree, tree, tree)); -static tree try_reference_assignconv PROTO ((tree, tree)); -static tree build_unresolved_array_type PROTO ((tree)); -static tree build_array_from_name PROTO ((tree, tree, tree, tree *)); -static tree build_array_ref PROTO ((int, tree, tree)); -static tree patch_array_ref PROTO ((tree)); -static tree make_qualified_name PROTO ((tree, tree, int)); -static tree merge_qualified_name PROTO ((tree, tree)); -static tree make_qualified_primary PROTO ((tree, tree, int)); -static int resolve_qualified_expression_name PROTO ((tree, tree *, +static tree find_most_specific_methods_list PARAMS ((tree)); +static int argument_types_convertible PARAMS ((tree, tree)); +static tree patch_invoke PARAMS ((tree, tree, tree)); +static tree lookup_method_invoke PARAMS ((int, tree, tree, tree, tree)); +static tree register_incomplete_type PARAMS ((int, tree, tree, tree)); +static tree obtain_incomplete_type PARAMS ((tree)); +static tree java_complete_lhs PARAMS ((tree)); +static tree java_complete_tree PARAMS ((tree)); +static int java_pre_expand_clinit PARAMS ((tree)); +static void java_complete_expand_method PARAMS ((tree)); +static int unresolved_type_p PARAMS ((tree, tree *)); +static void create_jdep_list PARAMS ((struct parser_ctxt *)); +static tree build_expr_block PARAMS ((tree, tree)); +static tree enter_block PARAMS ((void)); +static tree enter_a_block PARAMS ((tree)); +static tree exit_block PARAMS ((void)); +static tree lookup_name_in_blocks PARAMS ((tree)); +static void maybe_absorb_scoping_blocks PARAMS ((void)); +static tree build_method_invocation PARAMS ((tree, tree)); +static tree build_new_invocation PARAMS ((tree, tree)); +static tree build_assignment PARAMS ((int, int, tree, tree)); +static tree build_binop PARAMS ((enum tree_code, int, tree, tree)); +static int check_final_assignment PARAMS ((tree ,tree)); +static tree patch_assignment PARAMS ((tree, tree, tree )); +static tree patch_binop PARAMS ((tree, tree, tree)); +static tree build_unaryop PARAMS ((int, int, tree)); +static tree build_incdec PARAMS ((int, int, tree, int)); +static tree patch_unaryop PARAMS ((tree, tree)); +static tree build_cast PARAMS ((int, tree, tree)); +static tree build_null_of_type PARAMS ((tree)); +static tree patch_cast PARAMS ((tree, tree)); +static int valid_ref_assignconv_cast_p PARAMS ((tree, tree, int)); +static int valid_builtin_assignconv_identity_widening_p PARAMS ((tree, tree)); +static int valid_cast_to_p PARAMS ((tree, tree)); +static int valid_method_invocation_conversion_p PARAMS ((tree, tree)); +static tree try_builtin_assignconv PARAMS ((tree, tree, tree)); +static tree try_reference_assignconv PARAMS ((tree, tree)); +static tree build_unresolved_array_type PARAMS ((tree)); +static tree build_array_from_name PARAMS ((tree, tree, tree, tree *)); +static tree build_array_ref PARAMS ((int, tree, tree)); +static tree patch_array_ref PARAMS ((tree)); +static tree make_qualified_name PARAMS ((tree, tree, int)); +static tree merge_qualified_name PARAMS ((tree, tree)); +static tree make_qualified_primary PARAMS ((tree, tree, int)); +static int resolve_qualified_expression_name PARAMS ((tree, tree *, tree *, tree *)); -static void qualify_ambiguous_name PROTO ((tree)); -static void maybe_generate_clinit PROTO ((void)); -static tree resolve_field_access PROTO ((tree, tree *, tree *)); -static tree build_newarray_node PROTO ((tree, tree, int)); -static tree patch_newarray PROTO ((tree)); -static tree resolve_type_during_patch PROTO ((tree)); -static tree build_this PROTO ((int)); -static tree build_return PROTO ((int, tree)); -static tree patch_return PROTO ((tree)); -static tree maybe_access_field PROTO ((tree, tree, tree)); -static int complete_function_arguments PROTO ((tree)); -static int check_for_static_method_reference PROTO ((tree, tree, tree, tree, tree)); -static int not_accessible_p PROTO ((tree, tree, int)); -static void check_deprecation PROTO ((tree, tree)); -static int class_in_current_package PROTO ((tree)); -static tree build_if_else_statement PROTO ((int, tree, tree, tree)); -static tree patch_if_else_statement PROTO ((tree)); -static tree add_stmt_to_compound PROTO ((tree, tree, tree)); -static tree add_stmt_to_block PROTO ((tree, tree, tree)); -static tree patch_exit_expr PROTO ((tree)); -static tree build_labeled_block PROTO ((int, tree)); -static tree finish_labeled_statement PROTO ((tree, tree)); -static tree build_bc_statement PROTO ((int, int, tree)); -static tree patch_bc_statement PROTO ((tree)); -static tree patch_loop_statement PROTO ((tree)); -static tree build_new_loop PROTO ((tree)); -static tree build_loop_body PROTO ((int, tree, int)); -static tree finish_loop_body PROTO ((int, tree, tree, int)); -static tree build_debugable_stmt PROTO ((int, tree)); -static tree finish_for_loop PROTO ((int, tree, tree, tree)); -static tree patch_switch_statement PROTO ((tree)); -static tree string_constant_concatenation PROTO ((tree, tree)); -static tree build_string_concatenation PROTO ((tree, tree)); -static tree patch_string_cst PROTO ((tree)); -static tree patch_string PROTO ((tree)); -static tree build_try_statement PROTO ((int, tree, tree)); -static tree build_try_finally_statement PROTO ((int, tree, tree)); -static tree patch_try_statement PROTO ((tree)); -static tree patch_synchronized_statement PROTO ((tree, tree)); -static tree patch_throw_statement PROTO ((tree, tree)); -static void check_thrown_exceptions PROTO ((int, tree)); -static int check_thrown_exceptions_do PROTO ((tree)); -static void purge_unchecked_exceptions PROTO ((tree)); -static void check_throws_clauses PROTO ((tree, tree, tree)); -static void finish_method_declaration PROTO ((tree)); -static tree build_super_invocation PROTO ((tree)); -static int verify_constructor_circularity PROTO ((tree, tree)); -static char *constructor_circularity_msg PROTO ((tree, tree)); -static tree build_this_super_qualified_invocation PROTO ((int, tree, tree, +static void qualify_ambiguous_name PARAMS ((tree)); +static void maybe_generate_clinit PARAMS ((void)); +static tree resolve_field_access PARAMS ((tree, tree *, tree *)); +static tree build_newarray_node PARAMS ((tree, tree, int)); +static tree patch_newarray PARAMS ((tree)); +static tree resolve_type_during_patch PARAMS ((tree)); +static tree build_this PARAMS ((int)); +static tree build_return PARAMS ((int, tree)); +static tree patch_return PARAMS ((tree)); +static tree maybe_access_field PARAMS ((tree, tree, tree)); +static int complete_function_arguments PARAMS ((tree)); +static int check_for_static_method_reference PARAMS ((tree, tree, tree, tree, tree)); +static int not_accessible_p PARAMS ((tree, tree, int)); +static void check_deprecation PARAMS ((tree, tree)); +static int class_in_current_package PARAMS ((tree)); +static tree build_if_else_statement PARAMS ((int, tree, tree, tree)); +static tree patch_if_else_statement PARAMS ((tree)); +static tree add_stmt_to_compound PARAMS ((tree, tree, tree)); +static tree add_stmt_to_block PARAMS ((tree, tree, tree)); +static tree patch_exit_expr PARAMS ((tree)); +static tree build_labeled_block PARAMS ((int, tree)); +static tree finish_labeled_statement PARAMS ((tree, tree)); +static tree build_bc_statement PARAMS ((int, int, tree)); +static tree patch_bc_statement PARAMS ((tree)); +static tree patch_loop_statement PARAMS ((tree)); +static tree build_new_loop PARAMS ((tree)); +static tree build_loop_body PARAMS ((int, tree, int)); +static tree finish_loop_body PARAMS ((int, tree, tree, int)); +static tree build_debugable_stmt PARAMS ((int, tree)); +static tree finish_for_loop PARAMS ((int, tree, tree, tree)); +static tree patch_switch_statement PARAMS ((tree)); +static tree string_constant_concatenation PARAMS ((tree, tree)); +static tree build_string_concatenation PARAMS ((tree, tree)); +static tree patch_string_cst PARAMS ((tree)); +static tree patch_string PARAMS ((tree)); +static tree build_try_statement PARAMS ((int, tree, tree)); +static tree build_try_finally_statement PARAMS ((int, tree, tree)); +static tree patch_try_statement PARAMS ((tree)); +static tree patch_synchronized_statement PARAMS ((tree, tree)); +static tree patch_throw_statement PARAMS ((tree, tree)); +static void check_thrown_exceptions PARAMS ((int, tree)); +static int check_thrown_exceptions_do PARAMS ((tree)); +static void purge_unchecked_exceptions PARAMS ((tree)); +static void check_throws_clauses PARAMS ((tree, tree, tree)); +static void finish_method_declaration PARAMS ((tree)); +static tree build_super_invocation PARAMS ((tree)); +static int verify_constructor_circularity PARAMS ((tree, tree)); +static char *constructor_circularity_msg PARAMS ((tree, tree)); +static tree build_this_super_qualified_invocation PARAMS ((int, tree, tree, int, int)); -static const char *get_printable_method_name PROTO ((tree)); -static tree patch_conditional_expr PROTO ((tree, tree, tree)); -static void maybe_generate_finit PROTO ((void)); -static void fix_constructors PROTO ((tree)); -static int verify_constructor_super PROTO ((void)); -static tree create_artificial_method PROTO ((tree, int, tree, tree, tree)); -static void start_artificial_method_body PROTO ((tree)); -static void end_artificial_method_body PROTO ((tree)); -static int check_method_redefinition PROTO ((tree, tree)); -static int reset_method_name PROTO ((tree)); -static void java_check_regular_methods PROTO ((tree)); -static void java_check_abstract_methods PROTO ((tree)); -static tree maybe_build_primttype_type_ref PROTO ((tree, tree)); -static void unreachable_stmt_error PROTO ((tree)); -static tree find_expr_with_wfl PROTO ((tree)); -static void missing_return_error PROTO ((tree)); -static tree build_new_array_init PROTO ((int, tree)); -static tree patch_new_array_init PROTO ((tree, tree)); -static tree maybe_build_array_element_wfl PROTO ((tree)); -static int array_constructor_check_entry PROTO ((tree, tree)); -static const char *purify_type_name PROTO ((const char *)); -static tree fold_constant_for_init PROTO ((tree, tree)); -static tree strip_out_static_field_access_decl PROTO ((tree)); -static jdeplist *reverse_jdep_list PROTO ((struct parser_ctxt *)); -static void static_ref_err PROTO ((tree, tree, tree)); -static void parser_add_interface PROTO ((tree, tree, tree)); -static void add_superinterfaces PROTO ((tree, tree)); -static tree jdep_resolve_class PROTO ((jdep *)); -static int note_possible_classname PROTO ((const char *, int)); -static void java_complete_expand_methods PROTO ((void)); -static void java_expand_finals PROTO ((void)); -static tree cut_identifier_in_qualified PROTO ((tree)); -static tree java_stabilize_reference PROTO ((tree)); -static tree do_unary_numeric_promotion PROTO ((tree)); -static char * operator_string PROTO ((tree)); -static tree do_merge_string_cste PROTO ((tree, const char *, int, int)); -static tree merge_string_cste PROTO ((tree, tree, int)); -static tree java_refold PROTO ((tree)); -static int java_decl_equiv PROTO ((tree, tree)); -static int binop_compound_p PROTO ((enum tree_code)); -static tree search_loop PROTO ((tree)); -static int labeled_block_contains_loop_p PROTO ((tree, tree)); -static void check_abstract_method_definitions PROTO ((int, tree, tree)); -static void java_check_abstract_method_definitions PROTO ((tree)); -static void java_debug_context_do PROTO ((int)); +static const char *get_printable_method_name PARAMS ((tree)); +static tree patch_conditional_expr PARAMS ((tree, tree, tree)); +static void maybe_generate_finit PARAMS ((void)); +static void fix_constructors PARAMS ((tree)); +static int verify_constructor_super PARAMS ((void)); +static tree create_artificial_method PARAMS ((tree, int, tree, tree, tree)); +static void start_artificial_method_body PARAMS ((tree)); +static void end_artificial_method_body PARAMS ((tree)); +static int check_method_redefinition PARAMS ((tree, tree)); +static int reset_method_name PARAMS ((tree)); +static void java_check_regular_methods PARAMS ((tree)); +static void java_check_abstract_methods PARAMS ((tree)); +static tree maybe_build_primttype_type_ref PARAMS ((tree, tree)); +static void unreachable_stmt_error PARAMS ((tree)); +static tree find_expr_with_wfl PARAMS ((tree)); +static void missing_return_error PARAMS ((tree)); +static tree build_new_array_init PARAMS ((int, tree)); +static tree patch_new_array_init PARAMS ((tree, tree)); +static tree maybe_build_array_element_wfl PARAMS ((tree)); +static int array_constructor_check_entry PARAMS ((tree, tree)); +static const char *purify_type_name PARAMS ((const char *)); +static tree fold_constant_for_init PARAMS ((tree, tree)); +static tree strip_out_static_field_access_decl PARAMS ((tree)); +static jdeplist *reverse_jdep_list PARAMS ((struct parser_ctxt *)); +static void static_ref_err PARAMS ((tree, tree, tree)); +static void parser_add_interface PARAMS ((tree, tree, tree)); +static void add_superinterfaces PARAMS ((tree, tree)); +static tree jdep_resolve_class PARAMS ((jdep *)); +static int note_possible_classname PARAMS ((const char *, int)); +static void java_complete_expand_methods PARAMS ((void)); +static void java_expand_finals PARAMS ((void)); +static tree cut_identifier_in_qualified PARAMS ((tree)); +static tree java_stabilize_reference PARAMS ((tree)); +static tree do_unary_numeric_promotion PARAMS ((tree)); +static char * operator_string PARAMS ((tree)); +static tree do_merge_string_cste PARAMS ((tree, const char *, int, int)); +static tree merge_string_cste PARAMS ((tree, tree, int)); +static tree java_refold PARAMS ((tree)); +static int java_decl_equiv PARAMS ((tree, tree)); +static int binop_compound_p PARAMS ((enum tree_code)); +static tree search_loop PARAMS ((tree)); +static int labeled_block_contains_loop_p PARAMS ((tree, tree)); +static void check_abstract_method_definitions PARAMS ((int, tree, tree)); +static void java_check_abstract_method_definitions PARAMS ((tree)); +static void java_debug_context_do PARAMS ((int)); /* Number of error found so far. */ int java_error_count; @@ -2617,7 +2617,7 @@ issue_warning_error_from_context (cl, msg, ap) /* Issue an error message at a current source line CL */ void -parse_error_context VPROTO ((tree cl, const char *msg, ...)) +parse_error_context VPARAMS ((tree cl, const char *msg, ...)) { #ifndef ANSI_PROTOTYPES tree cl; @@ -2637,7 +2637,7 @@ parse_error_context VPROTO ((tree cl, const char *msg, ...)) /* Issue a warning at a current source line CL */ static void -parse_warning_context VPROTO ((tree cl, const char *msg, ...)) +parse_warning_context VPARAMS ((tree cl, const char *msg, ...)) { #ifndef ANSI_PROTOTYPES tree cl; diff --git a/gcc/java/typeck.c b/gcc/java/typeck.c index c536efd..e76a318 100644 --- a/gcc/java/typeck.c +++ b/gcc/java/typeck.c @@ -1,5 +1,5 @@ /* Handle types for the GNU compiler for the Java(TM) language. - Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc. + Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -34,8 +34,8 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "convert.h" #include "toplev.h" -static tree convert_ieee_real_to_integer PROTO ((tree, tree)); -static tree parse_signature_type PROTO ((const unsigned char **, +static tree convert_ieee_real_to_integer PARAMS ((tree, tree)); +static tree parse_signature_type PARAMS ((const unsigned char **, const unsigned char *)); tree * type_map; diff --git a/gcc/java/verify.c b/gcc/java/verify.c index d17a184..97c78ec 100644 --- a/gcc/java/verify.c +++ b/gcc/java/verify.c @@ -1,6 +1,6 @@ /* Handle verification of bytecoded methods for the GNU compiler for the Java(TM) language. - Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -33,11 +33,11 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "java-except.h" #include "toplev.h" -static void push_pending_label PROTO ((tree)); -static tree merge_types PROTO ((tree, tree)); -static const char *check_pending_block PROTO ((tree)); -static void type_stack_dup PROTO ((int, int)); -static int start_pc_cmp PROTO ((const PTR, const PTR)); +static void push_pending_label PARAMS ((tree)); +static tree merge_types PARAMS ((tree, tree)); +static const char *check_pending_block PARAMS ((tree)); +static void type_stack_dup PARAMS ((int, int)); +static int start_pc_cmp PARAMS ((const PTR, const PTR)); extern int stack_pointer; diff --git a/gcc/java/xref.c b/gcc/java/xref.c index 57241c6..b44fcc5 100644 --- a/gcc/java/xref.c +++ b/gcc/java/xref.c @@ -1,6 +1,6 @@ /* Write cross reference information extracted from Java(TM) source and bytecode files, in one of formats documented below. - Copyright (C) 1999 Free Software Foundation, Inc. + Copyright (C) 1999, 2000 Free Software Foundation, Inc. Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com) This file is part of GNU CC. @@ -81,7 +81,7 @@ expand_xref (node) { /* Maintain these two cached. */ static FILE *fp = NULL; - static void (*current_expand) PROTO ((FILE *, tree)) = NULL; + static void (*current_expand) PARAMS ((FILE *, tree)) = NULL; if ( !flag_emit_xref ) return; diff --git a/gcc/java/xref.h b/gcc/java/xref.h index f0db4ef..ef6c655 100644 --- a/gcc/java/xref.h +++ b/gcc/java/xref.h @@ -1,5 +1,5 @@ /* Definitions for the cross reference backend xref.c - Copyright (C) 1999 Free Software Foundation, Inc. + Copyright (C) 1999, 2000 Free Software Foundation, Inc. Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com) This file is part of GNU CC. @@ -24,11 +24,11 @@ of Sun Microsystems, Inc. in the United States and other countries. The Free Software Foundation is independent of Sun Microsystems, Inc. */ /* Exported functions. */ -int xref_flag_value PROTO ((const char *)); -void expand_xref PROTO ((tree)); -void xref_set_data PROTO ((int, void *)); -void *xref_get_data PROTO ((int)); -void xref_set_current_fp PROTO ((FILE *)); +int xref_flag_value PARAMS ((const char *)); +void expand_xref PARAMS ((tree)); +void xref_set_data PARAMS ((int, void *)); +void *xref_get_data PARAMS ((int)); +void xref_set_current_fp PARAMS ((FILE *)); /* flag_emit_xref range of possible values. */ @@ -40,7 +40,7 @@ enum { typedef struct { char *key; /* Activator in -fxref=<key> */ - void (*expand) PROTO ((FILE *, tree)); /* Function to write xrefs out */ + void (*expand) PARAMS ((FILE *, tree)); /* Function to write xrefs out */ FILE *fp; /* fp to use during the call. */ void *data; /* Placeholder for additional data */ } xref_flag_table; diff --git a/gcc/java/zextract.c b/gcc/java/zextract.c index d959c3b..bfe3afe 100644 --- a/gcc/java/zextract.c +++ b/gcc/java/zextract.c @@ -2,7 +2,7 @@ This extracts a member from a .zip file, but does not handle uncompression (since that is not needed for classes.zip). - Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc. + Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -210,8 +210,8 @@ typedef unsigned long ulg; /* predefined on some systems) & match zip */ /* Prototypes */ /***********************/ -static ush makeword PROTO ((const uch *)); -static ulg makelong PROTO ((const uch *)); +static ush makeword PARAMS ((const uch *)); +static ulg makelong PARAMS ((const uch *)); /***********************/ /* Function makeword() */ diff --git a/gcc/java/zipfile.h b/gcc/java/zipfile.h index 98a698f..66aa1d8 100644 --- a/gcc/java/zipfile.h +++ b/gcc/java/zipfile.h @@ -1,6 +1,6 @@ /* Definitions for using a zipped' archive. - Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc. + Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -57,9 +57,9 @@ extern struct ZipFileCache *SeenZipFiles; ((ZipDirectory*)((char*)(ZIPD)+(ZIPD)->direntry_size)) #define ZIPMAGIC 0x504b0304 -extern ZipFile * opendir_in_zip PROTO ((const char *, int)); -extern int read_zip_archive PROTO ((ZipFile *)); +extern ZipFile * opendir_in_zip PARAMS ((const char *, int)); +extern int read_zip_archive PARAMS ((ZipFile *)); #ifdef JCF_ZIP -extern int open_in_zip PROTO ((struct JCF *, const char *, +extern int open_in_zip PARAMS ((struct JCF *, const char *, const char *, int)); #endif |