diff options
Diffstat (limited to 'gcc/java')
38 files changed, 865 insertions, 911 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index eb1f9bd..34d39a4 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,5 +1,7 @@ 2003-01-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> + * All Files: Remove PARAMS macro. + * expr.c, gjavah.c, javaop.h, jcf-dump.c, jcf-io.c, jcf-reader.c, jcf-write.c, jcf.h, jv-scan.c: Don't rely on the `DEFUN', `AND' or `__STDC__' macros. diff --git a/gcc/java/boehm.c b/gcc/java/boehm.c index f38ee78..8bf7650 100644 --- a/gcc/java/boehm.c +++ b/gcc/java/boehm.c @@ -34,16 +34,11 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "parse.h" #include "toplev.h" -static void mark_reference_fields PARAMS ((tree, - unsigned HOST_WIDE_INT *, - unsigned HOST_WIDE_INT *, - unsigned int, - int *, int *, - int *, - HOST_WIDE_INT *)); -static void set_bit PARAMS ((unsigned HOST_WIDE_INT *, - unsigned HOST_WIDE_INT *, - unsigned int)); +static void mark_reference_fields (tree, unsigned HOST_WIDE_INT *, + unsigned HOST_WIDE_INT *, unsigned int, + int *, int *, int *, HOST_WIDE_INT *); +static void set_bit (unsigned HOST_WIDE_INT *, unsigned HOST_WIDE_INT *, + unsigned int); /* Treat two HOST_WIDE_INT's as a contiguous bitmap, with bit 0 being the least significant. This function sets bit N in the bitmap. */ diff --git a/gcc/java/buffer.h b/gcc/java/buffer.h index d6547e5..bb7bcb5 100644 --- a/gcc/java/buffer.h +++ b/gcc/java/buffer.h @@ -43,4 +43,4 @@ struct buffer #define BUFFER_RESET(BUFP) ((BUFP)->ptr = (BUFP)->data) -extern void buffer_grow PARAMS ((struct buffer*, int)); +extern void buffer_grow (struct buffer*, int); diff --git a/gcc/java/builtins.c b/gcc/java/builtins.c index eba6fa5..d2de912 100644 --- a/gcc/java/builtins.c +++ b/gcc/java/builtins.c @@ -61,19 +61,17 @@ enum builtin_type BT_LAST }; -static tree max_builtin PARAMS ((tree, tree)); -static tree min_builtin PARAMS ((tree, tree)); -static tree abs_builtin PARAMS ((tree, tree)); -static tree cos_builtin PARAMS ((tree, tree)); -static tree sin_builtin PARAMS ((tree, tree)); -static tree sqrt_builtin PARAMS ((tree, tree)); - -static tree build_function_call_expr PARAMS ((tree, tree)); -static void define_builtin PARAMS ((enum built_in_function, - const char *, - enum built_in_class, - tree, int)); -static tree define_builtin_type PARAMS ((int, int, int, int, int)); +static tree max_builtin (tree, tree); +static tree min_builtin (tree, tree); +static tree abs_builtin (tree, tree); +static tree cos_builtin (tree, tree); +static tree sin_builtin (tree, tree); +static tree sqrt_builtin (tree, tree); + +static tree build_function_call_expr (tree, tree); +static void define_builtin (enum built_in_function, const char *, + enum built_in_class, tree, int); +static tree define_builtin_type (int, int, int, int, int); diff --git a/gcc/java/check-init.c b/gcc/java/check-init.c index 0e91077..ecb16eb 100644 --- a/gcc/java/check-init.c +++ b/gcc/java/check-init.c @@ -102,15 +102,15 @@ static tree wfl; #define WORD_SIZE ((unsigned int)(sizeof(word) * BITS_PER_UNIT)) -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)); +static void check_bool_init (tree, words, words, words); +static void check_init (tree, words); +static void check_cond_init (tree, tree, tree, words, words, words); +static void check_bool2_init (enum tree_code, tree, tree, words, words, words); struct alternatives; -static void done_alternative PARAMS ((words, struct alternatives *)); -static tree get_variable_decl PARAMS ((tree)); -static void final_assign_error PARAMS ((tree)); -static void check_final_reassigned PARAMS ((tree, words)); +static void done_alternative (words, struct alternatives *); +static tree get_variable_decl (tree); +static void final_assign_error (tree); +static void check_final_reassigned (tree, words); #define ALLOC_WORDS(NUM) (xmalloc ((NUM) * sizeof (word))) #define FREE_WORDS(PTR) (free (PTR)) diff --git a/gcc/java/class.c b/gcc/java/class.c index 0818bc2..29a3aa7 100644 --- a/gcc/java/class.c +++ b/gcc/java/class.c @@ -48,16 +48,16 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #define O_BINARY 0 /* MS-DOS brain-damage */ #endif -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 add_interface_do PARAMS ((tree, tree, int)); -static tree maybe_layout_super_class PARAMS ((tree, tree)); -static int assume_compiled PARAMS ((const char *)); -static tree build_method_symbols_entry PARAMS ((tree)); +static tree make_method_value (tree); +static tree build_java_method_type (tree, tree, int); +static int32 hashUtf8String (const char *, int); +static tree make_field_value (tree); +static tree get_dispatch_vector (tree); +static tree get_dispatch_table (tree, tree); +static void add_interface_do (tree, tree, int); +static tree maybe_layout_super_class (tree, tree); +static int assume_compiled (const char *); +static tree build_method_symbols_entry (tree); static GTY(()) rtx registerClass_libfunc; static GTY(()) rtx registerResource_libfunc; @@ -86,8 +86,8 @@ typedef struct assume_compiled_node_struct struct assume_compiled_node_struct *child; } assume_compiled_node; -static assume_compiled_node *find_assume_compiled_node - PARAMS ((assume_compiled_node *, const char *)); +static assume_compiled_node *find_assume_compiled_node (assume_compiled_node *, + const char *); /* This is the root of the include/exclude tree. */ @@ -2134,7 +2134,7 @@ emit_register_classes () } else { - extern tree get_file_function_name PARAMS ((int)); + extern tree get_file_function_name (int); tree init_name = get_file_function_name ('I'); tree init_type = build_function_type (void_type_node, end_params_node); tree init_decl; @@ -2270,8 +2270,8 @@ init_class_processing () gcc_obstack_init (&temporary_obstack); } -static hashval_t java_treetreehash_hash PARAMS ((const void *)); -static int java_treetreehash_compare PARAMS ((const void *, const void *)); +static hashval_t java_treetreehash_hash (const void *); +static int java_treetreehash_compare (const void *, const void *); /* A hash table mapping trees to trees. Used generally. */ diff --git a/gcc/java/constants.c b/gcc/java/constants.c index 6fd1cef..11efc2b 100644 --- a/gcc/java/constants.c +++ b/gcc/java/constants.c @@ -31,11 +31,11 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "toplev.h" #include "ggc.h" -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)); +static void set_constant_entry (CPool *, int, int, jword); +static int find_class_or_string_constant (CPool *, int, tree); +static int find_name_and_type_constant (CPool *, tree, tree); +static tree get_tag_node (int); +static tree build_constant_data_ref (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 f9f3a34..bcdaf18 100644 --- a/gcc/java/convert.h +++ b/gcc/java/convert.h @@ -20,8 +20,8 @@ Boston, MA 02111-1307, USA. */ /* Written by Jeffrey Hsu <hsu@cygnus.com> */ -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)); +extern tree convert_to_boolean (tree, tree); +extern tree convert_to_char (tree, tree); +extern tree convert_to_integer (tree type, tree expr); +extern tree convert_to_real (tree type, tree expr); +extern tree convert_to_pointer (tree type, tree expr); diff --git a/gcc/java/decl.c b/gcc/java/decl.c index c3422c7..fa69066 100644 --- a/gcc/java/decl.c +++ b/gcc/java/decl.c @@ -47,17 +47,17 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "tree-inline.h" #if defined (DEBUG_JAVA_BINDING_LEVELS) -extern void indent PARAMS ((void)); +extern void indent (void); #endif -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)); -static tree create_primitive_vtable PARAMS ((const char *)); -static tree check_local_named_variable PARAMS ((tree, tree, int, int *)); -static tree check_local_unnamed_variable PARAMS ((tree, tree, tree)); -static void dump_function PARAMS ((enum tree_dump_index, tree)); +static tree push_jvm_slot (int, tree); +static tree lookup_name_current_level (tree); +static tree push_promoted_type (const char *, tree); +static struct binding_level *make_binding_level (void); +static tree create_primitive_vtable (const char *); +static tree check_local_named_variable (tree, tree, int, int *); +static tree check_local_unnamed_variable (tree, tree, tree); +static void dump_function (enum tree_dump_index, tree); /* Name of the Cloneable class. */ tree java_lang_cloneable_identifier_node; diff --git a/gcc/java/except.c b/gcc/java/except.c index 5c9fe01..59b7fdf 100644 --- a/gcc/java/except.c +++ b/gcc/java/except.c @@ -39,13 +39,13 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "java-except.h" #include "toplev.h" -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 PARAMS ((struct eh_range *, struct eh_range *)); -static void check_start_handlers PARAMS ((struct eh_range *, int)); -static void free_eh_ranges PARAMS ((struct eh_range *range)); +static void expand_start_java_handler (struct eh_range *); +static void expand_end_java_handler (struct eh_range *); +static struct eh_range *find_handler_in_range (int, struct eh_range *, + struct eh_range *); +static void link_handler (struct eh_range *, struct eh_range *); +static void check_start_handlers (struct eh_range *, int); +static void free_eh_ranges (struct eh_range *range); struct eh_range *current_method_handlers; diff --git a/gcc/java/expr.c b/gcc/java/expr.c index 7980a46..cd6c1b1 100644 --- a/gcc/java/expr.c +++ b/gcc/java/expr.c @@ -44,48 +44,47 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "except.h" #include "ggc.h" -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 ((int, int)); -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_load_internal PARAMS ((int, tree, int)); -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)); +static void flush_quick_stack (void); +static void push_value (tree); +static tree pop_value (tree); +static void java_stack_swap (void); +static void java_stack_dup (int, int); +static void build_java_athrow (tree); +static void build_java_jsr (int, int); +static void build_java_ret (tree); +static void expand_java_multianewarray (tree, int); +static void expand_java_arraystore (tree); +static void expand_java_arrayload (tree); +static void expand_java_array_length (void); +static tree build_java_monitor (tree, tree); +static void expand_java_pushc (int, tree); +static void expand_java_return (tree); +static void expand_load_internal (int, tree, int); +static void expand_java_NEW (tree); +static void expand_java_INSTANCEOF (tree); +static void expand_java_CHECKCAST (tree); +static void expand_iinc (unsigned int, int, int); +static void expand_java_binop (tree, enum tree_code); +static void note_label (int, int); +static void expand_compare (enum tree_code, tree, tree, int); +static void expand_test (enum tree_code, tree, int); +static void expand_cond (enum tree_code, tree, int); +static void expand_java_goto (int); #if 0 -static void expand_java_call PARAMS ((int, int)); -static void expand_java_ret PARAMS ((tree)); +static void expand_java_call (int, int); +static void expand_java_ret (tree); #endif -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 case_identity PARAMS ((tree, tree)); -static unsigned char peek_opcode_at_pc PARAMS ((struct JCF *, int, int)); -static int emit_init_test_initialization PARAMS ((void **entry, - void * ptr)); -static int get_offset_table_index PARAMS ((tree)); +static tree pop_arguments (tree); +static void expand_invoke (int, int, int); +static void expand_java_field_op (int, int, int); +static void java_push_constant_from_pool (struct JCF *, int); +static void java_stack_pop (int); +static tree build_java_throw_out_of_bounds_exception (tree); +static tree build_java_check_indexed_type (tree, tree); +static tree case_identity (tree, tree); +static unsigned char peek_opcode_at_pc (struct JCF *, int, int); +static int emit_init_test_initialization (void **entry, void * ptr); +static int get_offset_table_index (tree); static GTY(()) tree operand_type[59]; diff --git a/gcc/java/gjavah.c b/gcc/java/gjavah.c index 32aa5f1..4550997 100644 --- a/gcc/java/gjavah.c +++ b/gcc/java/gjavah.c @@ -123,43 +123,41 @@ struct method_name /* List of method names we've seen. */ static struct method_name *method_name_list; -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, 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 *, - int)); -static void print_stub_or_jni PARAMS ((FILE*, JCF*, int, int, int, - const char *, int)); -static void print_full_cxx_name PARAMS ((FILE*, JCF*, int, int, int, - const char *, int)); -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 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 int gcjh_streq PARAMS ((const void *p1, const void *p2)); -static int throwable_p PARAMS ((const unsigned char *signature)); -static const unsigned char *decode_signature_piece - 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 version PARAMS ((void)) ATTRIBUTE_NORETURN; -static int overloaded_jni_method_exists_p PARAMS ((const unsigned char *, int, - const char *, int)); -static void jni_print_char PARAMS ((FILE *, int)); -static void decompile_return_statement PARAMS ((FILE *, JCF *, int, int, int)); +static void print_field_info (FILE*, JCF*, int, int, JCF_u2); +static void print_mangled_classname (FILE*, JCF*, const char*, int); +static int print_cxx_classname (FILE*, const char*, JCF*, int, int); +static void print_method_info (FILE*, JCF*, int, int, JCF_u2); +static void print_c_decl (FILE*, JCF*, int, int, int, const char *, int); +static void print_stub_or_jni (FILE*, JCF*, int, int, int, const char *, int); +static void print_full_cxx_name (FILE*, JCF*, int, int, int, const char *, int); +static void decompile_method (FILE*, JCF*, int); +static void add_class_decl (FILE*, JCF*, JCF_u2); + +static int java_float_finite (jfloat); +static int java_double_finite (jdouble); +static void print_name (FILE *, JCF *, int); +static void print_base_classname (FILE *, JCF *, int); +static int utf8_cmp (const unsigned char *, int, const char *); +static char *cxx_keyword_subst (const unsigned char *, int); +static void generate_access (FILE *, JCF_u2); +static int name_is_method_p (const unsigned char *, int); +static char *get_field_name (JCF *, int, JCF_u2); +static void print_field_name (FILE *, JCF *, int, JCF_u2); +static const unsigned char *super_class_name (JCF *, int *); +static void print_include (FILE *, const unsigned char *, int); +static int gcjh_streq (const void *p1, const void *p2); +static int throwable_p (const unsigned char *signature); +static const unsigned char * + decode_signature_piece (FILE *, const unsigned char *, + const unsigned char *, int *); +static void print_class_decls (FILE *, JCF *, int); +static void usage (void) ATTRIBUTE_NORETURN; +static void help (void) ATTRIBUTE_NORETURN; +static void version (void) ATTRIBUTE_NORETURN; +static int overloaded_jni_method_exists_p (const unsigned char *, int, + const char *, int); +static void jni_print_char (FILE *, int); +static void decompile_return_statement (FILE *, JCF *, int, int, int); JCF_u2 current_field_name; JCF_u2 current_field_value; @@ -1755,9 +1753,9 @@ struct namelet struct namelet *next; }; -static void add_namelet PARAMS ((const unsigned char *, - const unsigned char *, struct namelet *)); -static void print_namelet PARAMS ((FILE *, struct namelet *, int)); +static void add_namelet (const unsigned char *, const unsigned char *, + struct namelet *); +static void print_namelet (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 e71d5d9..27a34d1 100644 --- a/gcc/java/java-except.h +++ b/gcc/java/java-except.h @@ -57,18 +57,11 @@ extern struct eh_range whole_range; #define NULL_EH_RANGE (&whole_range) -extern struct eh_range * find_handler PARAMS ((int)); - -extern void method_init_exceptions PARAMS ((void)); - -extern void emit_handlers PARAMS ((void)); - -extern void maybe_start_try PARAMS ((int, int)); - -extern void maybe_end_try PARAMS ((int, int)); - -extern void add_handler PARAMS ((int, int, tree, tree)); - -extern void handle_nested_ranges PARAMS ((void)); - -extern void expand_resume_after_catch PARAMS ((void)); +extern struct eh_range * find_handler (int); +extern void method_init_exceptions (void); +extern void emit_handlers (void); +extern void maybe_start_try (int, int); +extern void maybe_end_try (int, int); +extern void add_handler (int, int, tree, tree); +extern void handle_nested_ranges (void); +extern void expand_resume_after_catch (void); diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h index 1a85979..b4ed394 100644 --- a/gcc/java/java-tree.h +++ b/gcc/java/java-tree.h @@ -1001,9 +1001,9 @@ struct treetreehash_entry GTY(()) tree value; }; -extern tree java_treetreehash_find PARAMS ((htab_t, tree)); -extern tree * java_treetreehash_new PARAMS ((htab_t, tree)); -extern htab_t java_treetreehash_create PARAMS ((size_t size, int ggc)); +extern tree java_treetreehash_find (htab_t, tree); +extern tree * java_treetreehash_new (htab_t, tree); +extern htab_t java_treetreehash_create (size_t size, int ggc); /* DECL_LANG_SPECIFIC for VAR_DECL, PARM_DECL and sometimes FIELD_DECL (access methods on outer class fields) and final fields. */ @@ -1088,221 +1088,216 @@ struct lang_type GTY(()) #define JCF_u4 unsigned long #define JCF_u2 unsigned short -extern void java_parse_file PARAMS ((int)); -extern bool java_mark_addressable PARAMS ((tree)); -extern tree java_type_for_mode PARAMS ((enum machine_mode, int)); -extern tree java_type_for_size PARAMS ((unsigned int, int)); -extern tree java_unsigned_type PARAMS ((tree)); -extern tree java_signed_type PARAMS ((tree)); -extern tree java_signed_or_unsigned_type PARAMS ((int, tree)); -extern tree java_truthvalue_conversion PARAMS ((tree)); -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 lookup_argument_method2 PARAMS ((tree, tree, tree)); -extern int has_method PARAMS ((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 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 void compile_resource_file PARAMS ((char *, const char *)); -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 PARAMS ((const tree, - const char *, int, int, const char *)); -extern int global_bindings_p PARAMS ((void)); -extern int kept_level_p PARAMS ((void)); -extern tree getdecls PARAMS ((void)); -extern void pushlevel PARAMS ((int)); -extern tree poplevel PARAMS ((int,int, int)); -extern void insert_block PARAMS ((tree)); -extern void set_block PARAMS ((tree)); -extern tree pushdecl PARAMS ((tree)); -extern void java_init_decl_processing PARAMS ((void)); -extern void java_dup_lang_specific_decl PARAMS ((tree)); -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, char**)); -extern tree pop_type 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 check_for_builtin PARAMS ((tree, tree)); -extern void initialize_builtins PARAMS ((void)); - -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)); -extern tree build_jni_stub PARAMS ((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_java_arraystore_check PARAMS ((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 build_java_indirect_ref PARAMS ((tree, tree, int)); -extern tree java_check_reference PARAMS ((tree, int)); -extern tree build_get_class PARAMS ((tree)); -extern tree build_instanceof PARAMS ((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 tree build_exception_object_ref PARAMS ((tree)); -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 void set_class_decl_access_flags PARAMS ((int, tree)); -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 int common_enclosing_context_p PARAMS ((tree, tree)); -extern int enclosing_context_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 emit_offset_symbol_table 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 *, ...)) +extern void java_parse_file (int); +extern bool java_mark_addressable (tree); +extern tree java_type_for_mode (enum machine_mode, int); +extern tree java_type_for_size (unsigned int, int); +extern tree java_unsigned_type (tree); +extern tree java_signed_type (tree); +extern tree java_signed_or_unsigned_type (int, tree); +extern tree java_truthvalue_conversion (tree); +extern void add_assume_compiled (const char *, int); +extern tree lookup_class (tree); +extern tree lookup_java_constructor (tree, tree); +extern tree lookup_java_method (tree, tree, tree); +extern tree lookup_argument_method (tree, tree, tree); +extern tree lookup_argument_method2 (tree, tree, tree); +extern int has_method (tree, tree); +extern tree promote_type (tree); +extern tree get_constant (struct JCF*, int); +extern tree get_name_constant (struct JCF*, int); +extern tree get_class_constant (struct JCF*, int); +extern tree parse_signature (struct JCF *jcf, int sig_index); +extern tree add_field (tree, tree, tree, int); +extern tree add_method (tree, int, tree, tree); +extern tree add_method_1 (tree, int, tree, tree); +extern tree make_class (void); +extern tree push_class (tree, tree); +extern tree unmangle_classname (const char *name, int name_length); +extern tree parse_signature_string (const unsigned char *, int); +extern tree get_type_from_signature (tree); +extern void layout_class (tree); +extern tree layout_class_method (tree, tree, tree, tree); +extern void layout_class_methods (tree); +extern tree build_class_ref (tree); +extern tree build_dtable_decl (tree); +extern tree build_internal_class_name (tree); +extern tree build_constants_constructor (void); +extern tree build_ref_from_constant_pool (int); +extern void compile_resource_file (char *, const char *); +extern tree build_utf8_ref (tree); +extern tree ident_subst (const char*, int, const char*, int, int, const char*); +extern tree identifier_subst (const tree, const char *, int, int, const char *); +extern int global_bindings_p (void); +extern int kept_level_p (void); +extern tree getdecls (void); +extern void pushlevel (int); +extern tree poplevel (int,int, int); +extern void insert_block (tree); +extern void set_block (tree); +extern tree pushdecl (tree); +extern void java_init_decl_processing (void); +extern void java_dup_lang_specific_decl (tree); +extern tree build_java_signature (tree); +extern tree build_java_argument_signature (tree); +extern void set_java_signature (tree, tree); +extern tree build_static_field_ref (tree); +extern tree build_address_of (tree); +extern tree find_local_variable (int index, tree type, int pc); +extern tree find_stack_slot (int index, tree type); +extern tree build_prim_array_type (tree, HOST_WIDE_INT); +extern tree build_java_array_type (tree, HOST_WIDE_INT); +extern int is_compiled_class (tree); +extern tree mangled_classname (const char*, tree); +extern tree lookup_label (int); +extern tree pop_type_0 (tree, char**); +extern tree pop_type (tree); +extern tree decode_newarray_type (int); +extern tree lookup_field (tree*, tree); +extern int is_array_type_p (tree); +extern HOST_WIDE_INT java_array_type_length (tree); +extern int read_class (tree); +extern void load_class (tree, int); + +extern tree check_for_builtin (tree, tree); +extern void initialize_builtins (void); + +extern tree lookup_name (tree); +extern tree build_known_method_ref (tree, tree, tree, tree, tree); +extern tree build_class_init (tree, tree); +extern tree build_invokevirtual (tree, tree); +extern tree build_invokeinterface (tree, tree); +extern tree build_jni_stub (tree); +extern tree invoke_build_dtable (int, tree); +extern tree build_field_ref (tree, tree, tree); +extern void pushdecl_force_head (tree); +extern tree build_java_binop (enum tree_code, tree, tree, tree); +extern tree build_java_soft_divmod (enum tree_code, tree, tree, tree); +extern tree binary_numeric_promotion (tree, tree, tree *, tree *); +extern tree build_java_arrayaccess (tree, tree, tree); +extern tree build_java_arraystore_check (tree, tree); +extern tree build_newarray (int, tree); +extern tree build_anewarray (tree, tree); +extern tree build_new_array (tree, tree); +extern tree build_java_array_length_access (tree); +extern tree build_java_arraynull_check (tree, tree, tree); +extern tree build_java_indirect_ref (tree, tree, int); +extern tree java_check_reference (tree, int); +extern tree build_get_class (tree); +extern tree build_instanceof (tree, tree); +extern tree create_label_decl (tree); +extern void push_labeled_block (tree); +extern tree prepare_eh_table_type (tree); +extern tree build_exception_object_ref (tree); +extern tree generate_name (void); +extern void pop_labeled_block (void); +extern const char *lang_printable_name (tree, int); +extern tree maybe_add_interface (tree, tree); +extern void set_super_info (int, tree, tree, int); +extern void set_class_decl_access_flags (int, tree); +extern int get_access_flags_from_decl (tree); +extern int interface_of_p (tree, tree); +extern int inherits_from_p (tree, tree); +extern int common_enclosing_context_p (tree, tree); +extern int enclosing_context_p (tree, tree); +extern void complete_start_java_method (tree); +extern tree build_result_decl (tree); +extern void emit_handlers (void); +extern void init_outgoing_cpool (void); +extern void make_class_data (tree); +extern void register_class (void); +extern int alloc_name_constant (int, tree); +extern void emit_register_classes (void); +extern void emit_offset_symbol_table (void); +extern void lang_init_source (int); +extern void write_classfile (tree); +extern char *print_int_node (tree); +extern void parse_error_context (tree cl, const char *, ...) ATTRIBUTE_PRINTF_2; -extern void finish_class PARAMS ((void)); -extern void java_layout_seen_class_methods PARAMS ((void)); -extern void check_for_initialization PARAMS ((tree, tree)); - -extern tree pushdecl_top_level PARAMS ((tree)); -extern int alloc_class_constant PARAMS ((tree)); -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 void force_poplevels PARAMS ((int)); -extern int process_jvm_instruction PARAMS ((int, const unsigned char *, long)); -extern int maybe_adjust_start_pc PARAMS ((struct JCF *, int, int, int)); -extern void set_local_type PARAMS ((int, tree)); -extern int merge_type_state PARAMS ((tree)); -extern int push_type_0 PARAMS ((tree)); -extern void push_type PARAMS ((tree)); -extern void load_type_state PARAMS ((tree)); -extern void add_interface PARAMS ((tree, tree)); -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 note_instructions PARAMS ((struct JCF *, tree)); -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)); +extern void finish_class (void); +extern void java_layout_seen_class_methods (void); +extern void check_for_initialization (tree, tree); + +extern tree pushdecl_top_level (tree); +extern int alloc_class_constant (tree); +extern void init_expr_processing (void); +extern void push_super_field (tree, tree); +extern void init_class_processing (void); +extern int can_widen_reference_to (tree, tree); +extern int class_depth (tree); +extern int verify_jvm_instructions (struct JCF *, const unsigned char *, long); +extern void maybe_pushlevels (int); +extern void maybe_poplevels (int); +extern void force_poplevels (int); +extern int process_jvm_instruction (int, const unsigned char *, long); +extern int maybe_adjust_start_pc (struct JCF *, int, int, int); +extern void set_local_type (int, tree); +extern int merge_type_state (tree); +extern int push_type_0 (tree); +extern void push_type (tree); +extern void load_type_state (tree); +extern void add_interface (tree, tree); +extern tree force_evaluation_order (tree); +extern int verify_constant_pool (struct JCF *); +extern void start_java_method (tree); +extern void end_java_method (void); +extern void give_name_to_locals (struct JCF *); +extern void note_instructions (struct JCF *, tree); +extern void expand_byte_code (struct JCF *, tree); +extern int open_in_zip (struct JCF *, const char *, const char *, int); +extern void set_constant_value (tree, tree); #ifdef jword -extern int find_constant1 PARAMS ((struct CPool *, int, jword)); -extern int find_constant2 PARAMS ((struct CPool *, int, jword, jword)); +extern int find_constant1 (struct CPool *, int, jword); +extern int find_constant2 (struct CPool *, int, jword, jword); #endif -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 int find_methodref_with_class_index PARAMS ((struct CPool *, tree, 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)); +extern int find_utf8_constant (struct CPool *, tree); +extern int find_string_constant (struct CPool *, tree); +extern int find_class_constant (struct CPool *, tree); +extern int find_fieldref_index (struct CPool *, tree); +extern int find_methodref_index (struct CPool *, tree); +extern int find_methodref_with_class_index (struct CPool *, tree, tree); +extern void write_constant_pool (struct CPool *, unsigned char *, int); +extern int count_constant_pool_bytes (struct CPool *); +extern int encode_newarray_type (tree); #ifdef uint64 -extern void format_int PARAMS ((char *, jlong, int)); -extern void format_uint PARAMS ((char *, uint64, int)); +extern void format_int (char *, jlong, int); +extern void format_uint (char *, uint64, int); #endif -extern void jcf_trim_old_input PARAMS ((struct JCF *)); +extern void jcf_trim_old_input (struct JCF *); #ifdef BUFSIZ -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)); -extern const char* open_class PARAMS ((const char *, struct JCF *, - int, const char *)); +extern void jcf_print_utf8 (FILE *, const unsigned char *, int); +extern void jcf_print_char (FILE *, int); +extern void jcf_print_utf8_replace (FILE *, const unsigned char *, int, int, int); +extern const char* open_class (const char *, struct JCF *, int, const char *); #endif -extern void java_debug_context PARAMS ((void)); -extern void safe_layout_class PARAMS ((tree)); +extern void java_debug_context (void); +extern void safe_layout_class (tree); -extern tree get_boehm_type_descriptor PARAMS ((tree)); -extern bool class_has_finalize_method PARAMS ((tree)); -extern void java_check_methods PARAMS ((tree)); -extern void init_jcf_parse PARAMS((void)); -extern void init_src_parse PARAMS((void)); +extern tree get_boehm_type_descriptor (tree); +extern bool class_has_finalize_method (tree); +extern void java_check_methods (tree); +extern void init_jcf_parse (void); +extern void init_src_parse (void); -extern int cxx_keyword_p PARAMS ((const char *, int)); -extern tree java_mangle_decl PARAMS ((struct obstack *, tree)); -extern tree java_mangle_class_field PARAMS ((struct obstack *, tree)); -extern tree java_mangle_class_field_from_string PARAMS ((struct obstack *, char *)); -extern tree java_mangle_vtable PARAMS ((struct obstack *, tree)); -extern const char *lang_printable_name_wls PARAMS ((tree, int)); -extern void append_gpp_mangled_name PARAMS ((const char *, int)); +extern int cxx_keyword_p (const char *, int); +extern tree java_mangle_decl (struct obstack *, tree); +extern tree java_mangle_class_field (struct obstack *, tree); +extern tree java_mangle_class_field_from_string (struct obstack *, char *); +extern tree java_mangle_vtable (struct obstack *, tree); +extern const char *lang_printable_name_wls (tree, int); +extern void append_gpp_mangled_name (const char *, int); -extern void add_predefined_file PARAMS ((tree)); -extern int predefined_filename_p PARAMS ((tree)); +extern void add_predefined_file (tree); +extern int predefined_filename_p (tree); -extern void java_optimize_inline PARAMS ((tree)); -extern tree decl_constant_value PARAMS ((tree)); +extern void java_optimize_inline (tree); +extern tree decl_constant_value (tree); #if defined(RTX_CODE) && defined (HAVE_MACHINE_MODES) -struct rtx_def * java_expand_expr PARAMS ((tree, rtx, enum machine_mode, - int)); +struct rtx_def * java_expand_expr (tree, rtx, enum machine_mode, int); #endif -extern void java_inlining_merge_static_initializers PARAMS ((tree, void *)); -extern void java_inlining_map_static_initializers PARAMS ((tree, void *)); +extern void java_inlining_merge_static_initializers (tree, void *); +extern void java_inlining_map_static_initializers (tree, void *); #define DECL_FINAL(DECL) DECL_LANG_FLAG_3 (DECL) diff --git a/gcc/java/jcf-dump.c b/gcc/java/jcf-dump.c index afe472f..e780b84 100644 --- a/gcc/java/jcf-dump.c +++ b/gcc/java/jcf-dump.c @@ -91,21 +91,21 @@ int class_access_flags = 0; /* Print in format similar to javap. VERY IMCOMPLETE. */ int flag_javap_compatible = 0; -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 void usage PARAMS ((void)) ATTRIBUTE_NORETURN; -static void help PARAMS ((void)) ATTRIBUTE_NORETURN; -static void version 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)); +static void print_access_flags (FILE *, uint16, char); +static void print_constant_terse (FILE*, JCF*, int, int); +static void print_constant (FILE *, JCF *, int, int); +static void print_constant_ref (FILE *, JCF *, int); +static void disassemble_method (JCF*, const unsigned char *, int); +static void print_name (FILE*, JCF*, int); +static void print_signature (FILE*, JCF*, int, int); +static int utf8_equal_string (struct JCF*, int, const char *); +static void usage (void) ATTRIBUTE_NORETURN; +static void help (void) ATTRIBUTE_NORETURN; +static void version (void) ATTRIBUTE_NORETURN; +static void process_class (struct JCF *); +static void print_constant_pool (struct JCF *); +static void print_exception_table (struct JCF *, const unsigned char *entries, + int); #define PRINT_SIGNATURE_RESULT_ONLY 1 #define PRINT_SIGNATURE_ARGS_ONLY 2 diff --git a/gcc/java/jcf-parse.c b/gcc/java/jcf-parse.c index 2d0fa45..9379826 100644 --- a/gcc/java/jcf-parse.c +++ b/gcc/java/jcf-parse.c @@ -91,18 +91,18 @@ static struct JCF main_jcf[1]; static struct ZipFile *localToFile; /* Declarations of some functions used here. */ -static void handle_innerclass_attribute PARAMS ((int count, JCF *)); -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 ((FILE *)); -static void parse_source_file_1 PARAMS ((tree, FILE *)); -static void parse_source_file_2 PARAMS ((void)); -static void parse_source_file_3 PARAMS ((void)); -static void parse_class_file PARAMS ((void)); -static void set_source_filename PARAMS ((JCF *, int)); -static void ggc_mark_jcf PARAMS ((void**)); -static void jcf_parse PARAMS ((struct JCF*)); -static void load_inner_classes PARAMS ((tree)); +static void handle_innerclass_attribute (int count, JCF *); +static tree give_name_to_class (JCF *jcf, int index); +static void parse_zip_file_entries (void); +static void process_zip_dir (FILE *); +static void parse_source_file_1 (tree, FILE *); +static void parse_source_file_2 (void); +static void parse_source_file_3 (void); +static void parse_class_file (void); +static void set_source_filename (JCF *, int); +static void ggc_mark_jcf (void**); +static void jcf_parse (struct JCF*); +static void load_inner_classes (tree); /* Mark (for garbage collection) all the tree nodes that are referenced from JCF's constant pool table. Do that only if the JCF diff --git a/gcc/java/jcf-path.c b/gcc/java/jcf-path.c index ddb31a5..4e34f7a 100644 --- a/gcc/java/jcf-path.c +++ b/gcc/java/jcf-path.c @@ -62,10 +62,10 @@ struct entry struct entry *next; }; -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)); +static void free_entry (struct entry **); +static void append_entry (struct entry **, struct entry *); +static void add_entry (struct entry **, const char *, int); +static void add_path (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 6514a0e..1bd5299 100644 --- a/gcc/java/jcf-reader.c +++ b/gcc/java/jcf-reader.c @@ -28,19 +28,19 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "jcf.h" #include "zipfile.h" -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 get_attribute (JCF *); +static int jcf_parse_preamble (JCF *); +static int jcf_parse_constant_pool (JCF *); +static void jcf_parse_class (JCF *); +static int jcf_parse_fields (JCF *); +static int jcf_parse_one_method (JCF *); +static int jcf_parse_methods (JCF *); +static int jcf_parse_final_attributes (JCF *); #ifdef NEED_PEEK_ATTRIBUTE -static int peek_attribute PARAMS ((JCF *, int, const char *, int)); +static int peek_attribute (JCF *, int, const char *, int); #endif #ifdef NEED_SKIP_ATTRIBUTE -static void skip_attribute PARAMS ((JCF *, int)); +static void skip_attribute (JCF *, int); #endif /* Go through all available attribute (ATTRIBUTE_NUMER) and try to diff --git a/gcc/java/jcf-write.c b/gcc/java/jcf-write.c index aa4366a..15035c0 100644 --- a/gcc/java/jcf-write.c +++ b/gcc/java/jcf-write.c @@ -280,81 +280,76 @@ struct jcf_partial struct jcf_switch_state *sw_state; }; -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 PARAMS ((unsigned char *, int, - struct jcf_partial *)); -static void append_chunk_copy PARAMS ((unsigned char *, int, - struct jcf_partial *)); -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 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 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 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 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 PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT, - struct jcf_partial *)); -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 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 PARAMS ((struct jcf_block *, - struct jcf_partial *)); -static void emit_case_reloc PARAMS ((struct jcf_relocation *, - struct jcf_partial *)); -static void emit_if PARAMS ((struct jcf_block *, int, int, - struct jcf_partial *)); -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)); -static unsigned char *append_synthetic_attribute PARAMS ((struct jcf_partial *)); -static void append_innerclasses_attribute PARAMS ((struct jcf_partial *, tree)); -static void append_innerclasses_attribute_entry PARAMS ((struct jcf_partial *, tree, tree)); -static void append_gcj_attribute PARAMS ((struct jcf_partial *, tree)); +static void generate_bytecode_insns (tree, int, struct jcf_partial *); +static struct chunk * alloc_chunk (struct chunk *, unsigned char *, + int, struct obstack *); +static unsigned char * append_chunk (unsigned char *, int, + struct jcf_partial *); +static void append_chunk_copy (unsigned char *, int, struct jcf_partial *); +static struct jcf_block * gen_jcf_label (struct jcf_partial *); +static void finish_jcf_block (struct jcf_partial *); +static void define_jcf_label (struct jcf_block *, struct jcf_partial *); +static struct jcf_block * get_jcf_label_here (struct jcf_partial *); +static void put_linenumber (int, struct jcf_partial *); +static void localvar_alloc (tree, struct jcf_partial *); +static void localvar_free (tree, struct jcf_partial *); +static int get_access_flags (tree); +static void write_chunks (FILE *, struct chunk *); +static int adjust_typed_op (tree, int); +static void generate_bytecode_conditional (tree, struct jcf_block *, + struct jcf_block *, int, + struct jcf_partial *); +static void generate_bytecode_return (tree, struct jcf_partial *); +static void perform_relocations (struct jcf_partial *); +static void init_jcf_state (struct jcf_partial *, struct obstack *); +static void init_jcf_method (struct jcf_partial *, tree); +static void release_jcf_state (struct jcf_partial *); +static struct chunk * generate_classfile (tree, struct jcf_partial *); +static struct jcf_handler *alloc_handler (struct jcf_block *, + struct jcf_block *, + struct jcf_partial *); +static void emit_iinc (tree, HOST_WIDE_INT, struct jcf_partial *); +static void emit_reloc (HOST_WIDE_INT, int, struct jcf_block *, + struct jcf_partial *); +static void push_constant1 (HOST_WIDE_INT, struct jcf_partial *); +static void push_constant2 (HOST_WIDE_INT, struct jcf_partial *); +static void push_int_const (HOST_WIDE_INT, struct jcf_partial *); +static int find_constant_wide (HOST_WIDE_INT, HOST_WIDE_INT, + struct jcf_partial *); +static void push_long_const (HOST_WIDE_INT, HOST_WIDE_INT, + struct jcf_partial *); +static int find_constant_index (tree, struct jcf_partial *); +static void push_long_const (HOST_WIDE_INT, HOST_WIDE_INT, + struct jcf_partial *); +static void field_op (tree, int, struct jcf_partial *); +static void maybe_wide (int, int, struct jcf_partial *); +static void emit_dup (int, int, struct jcf_partial *); +static void emit_pop (int, struct jcf_partial *); +static void emit_load_or_store (tree, int, struct jcf_partial *); +static void emit_load (tree, struct jcf_partial *); +static void emit_store (tree, struct jcf_partial *); +static void emit_unop (enum java_opcode, tree, struct jcf_partial *); +static void emit_binop (enum java_opcode, tree, struct jcf_partial *); +static void emit_reloc (HOST_WIDE_INT, int, struct jcf_block *, + struct jcf_partial *); +static void emit_switch_reloc (struct jcf_block *, struct jcf_partial *); +static void emit_case_reloc (struct jcf_relocation *, struct jcf_partial *); +static void emit_if (struct jcf_block *, int, int, struct jcf_partial *); +static void emit_goto (struct jcf_block *, struct jcf_partial *); +static void emit_jsr (struct jcf_block *, struct jcf_partial *); +static void call_cleanups (struct jcf_block *, struct jcf_partial *); +static char *make_class_file_name (tree); +static unsigned char *append_synthetic_attribute (struct jcf_partial *); +static void append_innerclasses_attribute (struct jcf_partial *, tree); +static void append_innerclasses_attribute_entry (struct jcf_partial *, tree, tree); +static void append_gcj_attribute (struct jcf_partial *, tree); /* Utility macros for appending (big-endian) data to a buffer. We assume a local variable 'ptr' points into where we want to write next, and we assume enough space has been allocated. */ #ifdef ENABLE_JC1_CHECKING -static int CHECK_PUT PARAMS ((void *, struct jcf_partial *, int)); +static int CHECK_PUT (void *, struct jcf_partial *, int); static int CHECK_PUT (ptr, state, i) @@ -411,7 +406,7 @@ alloc_chunk (last, data, size, work) } #ifdef ENABLE_JC1_CHECKING -static int CHECK_OP PARAMS ((struct jcf_partial *)); +static int CHECK_OP (struct jcf_partial *); static int CHECK_OP (state) diff --git a/gcc/java/jcf.h b/gcc/java/jcf.h index 63f5871..0555f36 100644 --- a/gcc/java/jcf.h +++ b/gcc/java/jcf.h @@ -55,7 +55,7 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #endif struct JCF; -typedef int (*jcf_filbuf_t) PARAMS ((struct JCF*, int needed)); +typedef int (*jcf_filbuf_t) (struct JCF*, int needed); typedef struct CPool { /* Available number of elements in the constants array, before it @@ -217,10 +217,10 @@ typedef struct JCF { #define DEFAULT_CLASS_PATH "." -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; +extern const char *find_class (const char *, int, JCF*, int); +extern const char *find_classfile (char *, JCF*, const char *); +extern int jcf_filbuf_from_stdio (JCF *jcf, int count); +extern int jcf_unexpected_eof (JCF*, int) ATTRIBUTE_NORETURN; /* Extract a character from a Java-style Utf8 string. * PTR points to the current character. @@ -251,27 +251,27 @@ extern int quiet_flag; #endif /* Declarations for dependency code. */ -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)); -extern void jcf_dependency_print_dummies PARAMS ((void)); +extern void jcf_dependency_reset (void); +extern void jcf_dependency_set_target (const char *); +extern void jcf_dependency_add_target (const char *); +extern void jcf_dependency_set_dep_file (const char *); +extern void jcf_dependency_add_file (const char *, int); +extern void jcf_dependency_write (void); +extern void jcf_dependency_init (int); +extern void jcf_dependency_print_dummies (void); /* Declarations for path handling code. */ -extern void jcf_path_init PARAMS ((void)); -extern void jcf_path_classpath_arg PARAMS ((const char *)); -extern void jcf_path_bootclasspath_arg PARAMS ((const char *)); -extern void jcf_path_extdirs_arg PARAMS ((const char *)); -extern void jcf_path_include_arg PARAMS ((const char *)); -extern void jcf_path_seal PARAMS ((int)); -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)); +extern void jcf_path_init (void); +extern void jcf_path_classpath_arg (const char *); +extern void jcf_path_bootclasspath_arg (const char *); +extern void jcf_path_extdirs_arg (const char *); +extern void jcf_path_include_arg (const char *); +extern void jcf_path_seal (int); +extern void *jcf_path_start (void); +extern void *jcf_path_next (void *); +extern char *jcf_path_name (void *); +extern int jcf_path_is_zipfile (void *); +extern int jcf_path_is_system (void *); +extern int jcf_path_max_len (void); #endif /* ! GCC_JCF_H */ diff --git a/gcc/java/jv-scan.c b/gcc/java/jv-scan.c index 4d13451..6707173 100644 --- a/gcc/java/jv-scan.c +++ b/gcc/java/jv-scan.c @@ -39,15 +39,15 @@ Boston, MA 02111-1307, USA. */ #include <getopt.h> -extern void fatal_error PARAMS ((const char *s, ...)) +extern void fatal_error (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)); -void report PARAMS ((void)); +void warning (const char *s, ...) ATTRIBUTE_PRINTF_1; +void gcc_obstack_init (struct obstack *obstack); +void report (void); -static void usage PARAMS ((void)) ATTRIBUTE_NORETURN; -static void help PARAMS ((void)) ATTRIBUTE_NORETURN; -static void version PARAMS ((void)) ATTRIBUTE_NORETURN; +static void usage (void) ATTRIBUTE_NORETURN; +static void help (void) ATTRIBUTE_NORETURN; +static void version (void) ATTRIBUTE_NORETURN; #define JC1_LITE #include "jcf.h" diff --git a/gcc/java/jvgenmain.c b/gcc/java/jvgenmain.c index ca2ad0e..61e70a7 100644 --- a/gcc/java/jvgenmain.c +++ b/gcc/java/jvgenmain.c @@ -34,7 +34,7 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "tree.h" #include "java-tree.h" -static char * do_mangle_classname PARAMS ((const char *string)); +static char * do_mangle_classname (const char *string); struct obstack name_obstack; struct obstack *mangle_obstack = &name_obstack; @@ -55,8 +55,8 @@ gcc_obstack_init (obstack) #define OBSTACK_CHUNK_FREE free #endif _obstack_begin (obstack, OBSTACK_CHUNK_SIZE, 0, - (void *(*) PARAMS ((long))) OBSTACK_CHUNK_ALLOC, - (void (*) PARAMS ((void *))) OBSTACK_CHUNK_FREE); + (void *(*) (long)) OBSTACK_CHUNK_ALLOC, + (void (*) (void *)) OBSTACK_CHUNK_FREE); } static void usage (const char *) ATTRIBUTE_NORETURN; diff --git a/gcc/java/keyword.gperf b/gcc/java/keyword.gperf index 0902482..4127588 100644 --- a/gcc/java/keyword.gperf +++ b/gcc/java/keyword.gperf @@ -30,11 +30,11 @@ struct java_keyword { const char *const name; const int token; }; #ifdef __GNUC__ __inline #endif -static unsigned int hash PARAMS ((const char *, unsigned int)); +static unsigned int hash (const char *, unsigned int); #ifdef __GNUC__ __inline #endif -const struct java_keyword *java_keyword PARAMS ((const char *, unsigned int)); +const struct java_keyword *java_keyword (const char *, unsigned int); %% abstract, ABSTRACT_TK default, DEFAULT_TK diff --git a/gcc/java/keyword.h b/gcc/java/keyword.h index 2f85f17..1b20f7c 100644 --- a/gcc/java/keyword.h +++ b/gcc/java/keyword.h @@ -30,11 +30,11 @@ struct java_keyword { const char *const name; const int token; }; #ifdef __GNUC__ __inline #endif -static unsigned int hash PARAMS ((const char *, unsigned int)); +static unsigned int hash (const char *, unsigned int); #ifdef __GNUC__ __inline #endif -const struct java_keyword *java_keyword PARAMS ((const char *, unsigned int)); +const struct java_keyword *java_keyword (const char *, unsigned int); #define TOTAL_KEYWORDS 52 #define MIN_WORD_LENGTH 2 diff --git a/gcc/java/lang.c b/gcc/java/lang.c index 60a3845..239e82b 100644 --- a/gcc/java/lang.c +++ b/gcc/java/lang.c @@ -53,32 +53,24 @@ struct string_option const int on_value; }; -static const char *java_init PARAMS ((const char *)); -static void java_finish PARAMS ((void)); -static void java_init_options PARAMS ((void)); -static bool java_post_options PARAMS ((void)); - -static int java_decode_option PARAMS ((int, char **)); -static void put_decl_string PARAMS ((const char *, int)); -static void put_decl_node PARAMS ((tree)); -static void java_print_error_function PARAMS ((diagnostic_context *, - const char *)); -static int process_option_with_no PARAMS ((const char *, - const struct string_option *, - int)); -static tree java_tree_inlining_walk_subtrees PARAMS ((tree *, - int *, - walk_tree_fn, - void *, - void *)); -static int java_unsafe_for_reeval PARAMS ((tree)); -static int merge_init_test_initialization PARAMS ((void * *, - void *)); -static int inline_init_test_initialization PARAMS ((void * *, - void *)); -static bool java_can_use_bit_fields_p PARAMS ((void)); -static int java_dump_tree PARAMS ((void *, tree)); -static void dump_compound_expr PARAMS ((dump_info_p, tree)); +static const char *java_init (const char *); +static void java_finish (void); +static void java_init_options (void); +static bool java_post_options (void); + +static int java_decode_option (int, char **); +static void put_decl_string (const char *, int); +static void put_decl_node (tree); +static void java_print_error_function (diagnostic_context *, const char *); +static int process_option_with_no (const char *, const struct string_option *, int); +static tree java_tree_inlining_walk_subtrees (tree *, int *, walk_tree_fn, + void *, void *); +static int java_unsafe_for_reeval (tree); +static int merge_init_test_initialization (void * *, void *); +static int inline_init_test_initialization (void * *, void *); +static bool java_can_use_bit_fields_p (void); +static int java_dump_tree (void *, tree); +static void dump_compound_expr (dump_info_p, tree); #ifndef TARGET_OBJECT_SUFFIX # define TARGET_OBJECT_SUFFIX ".o" diff --git a/gcc/java/lex.c b/gcc/java/lex.c index d1344b5..c6744f4 100644 --- a/gcc/java/lex.c +++ b/gcc/java/lex.c @@ -40,35 +40,34 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "chartables.h" /* Function declarations. */ -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)); +static char *java_sprint_unicode (struct java_line *, int); +static void java_unicode_2_utf8 (unicode_t); +static void java_lex_error (const char *, int); #ifndef JC1_LITE -static int java_is_eol PARAMS ((FILE *, int)); -static tree build_wfl_node PARAMS ((tree)); +static int java_is_eol (FILE *, int); +static tree build_wfl_node (tree); #endif -static void java_store_unicode PARAMS ((struct java_line *, unicode_t, int)); -static int java_parse_escape_sequence PARAMS ((void)); -static int java_start_char_p PARAMS ((unicode_t)); -static int java_part_char_p PARAMS ((unicode_t)); -static int java_parse_doc_section PARAMS ((int)); -static void java_parse_end_comment PARAMS ((int)); -static int java_get_unicode PARAMS ((void)); -static int java_read_unicode PARAMS ((java_lexer *, int *)); -static int java_read_unicode_collapsing_terminators PARAMS ((java_lexer *, - int *)); -static void java_store_unicode PARAMS ((struct java_line *, unicode_t, int)); -static int java_read_char PARAMS ((java_lexer *)); -static void java_allocate_new_line PARAMS ((void)); -static void java_unget_unicode PARAMS ((void)); -static unicode_t java_sneak_unicode PARAMS ((void)); +static void java_store_unicode (struct java_line *, unicode_t, int); +static int java_parse_escape_sequence (void); +static int java_start_char_p (unicode_t); +static int java_part_char_p (unicode_t); +static int java_parse_doc_section (int); +static void java_parse_end_comment (int); +static int java_get_unicode (void); +static int java_read_unicode (java_lexer *, int *); +static int java_read_unicode_collapsing_terminators (java_lexer *, int *); +static void java_store_unicode (struct java_line *, unicode_t, int); +static int java_read_char (java_lexer *); +static void java_allocate_new_line (void); +static void java_unget_unicode (void); +static unicode_t java_sneak_unicode (void); #ifndef JC1_LITE -static int utf8_cmp PARAMS ((const unsigned char *, int, const char *)); +static int utf8_cmp (const unsigned char *, int, const char *); #endif -java_lexer *java_new_lexer PARAMS ((FILE *, const char *)); +java_lexer *java_new_lexer (FILE *, const char *); #ifndef JC1_LITE -static void error_if_numeric_overflow PARAMS ((tree)); +static void error_if_numeric_overflow (tree); #endif #ifdef HAVE_ICONV @@ -838,7 +837,7 @@ java_parse_escape_sequence () with an 'f', indicating it is of type 'float'; NUMBER_BEGINNING is the line number on which to report any error. */ -static void java_perform_atof PARAMS ((YYSTYPE *, char *, int, int)); +static void java_perform_atof (YYSTYPE *, char *, int, int); static void java_perform_atof (java_lval, literal_token, fflag, number_beginning) @@ -888,7 +887,7 @@ java_perform_atof (java_lval, literal_token, fflag, number_beginning) } #endif -static int yylex PARAMS ((YYSTYPE *)); +static int yylex (YYSTYPE *); static int #ifdef JC1_LITE diff --git a/gcc/java/lex.h b/gcc/java/lex.h index 7f42fb4..9579036 100644 --- a/gcc/java/lex.h +++ b/gcc/java/lex.h @@ -158,7 +158,7 @@ typedef struct java_lexer } java_lexer; /* Destroy a lexer object. */ -extern void java_destroy_lexer PARAMS ((java_lexer *)); +extern void java_destroy_lexer (java_lexer *); #define JAVA_LINE_MAX 80 diff --git a/gcc/java/mangle.c b/gcc/java/mangle.c index 2930e06..9a6b802 100644 --- a/gcc/java/mangle.c +++ b/gcc/java/mangle.c @@ -38,28 +38,28 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "obstack.h" #include "ggc.h" -static void mangle_field_decl PARAMS ((tree)); -static void mangle_method_decl PARAMS ((tree)); +static void mangle_field_decl (tree); +static void mangle_method_decl (tree); -static void mangle_type PARAMS ((tree)); -static void mangle_pointer_type PARAMS ((tree)); -static void mangle_array_type PARAMS ((tree)); -static int mangle_record_type PARAMS ((tree, int)); +static void mangle_type (tree); +static void mangle_pointer_type (tree); +static void mangle_array_type (tree); +static int mangle_record_type (tree, int); -static int find_compression_pointer_match PARAMS ((tree)); -static int find_compression_array_match PARAMS ((tree)); -static int find_compression_record_match PARAMS ((tree, tree *)); -static int find_compression_array_template_match PARAMS ((tree)); +static int find_compression_pointer_match (tree); +static int find_compression_array_match (tree); +static int find_compression_record_match (tree, tree *); +static int find_compression_array_template_match (tree); -static void set_type_package_list PARAMS ((tree)); -static int entry_match_pointer_p PARAMS ((tree, int)); -static void emit_compression_string PARAMS ((int)); +static void set_type_package_list (tree); +static int entry_match_pointer_p (tree, int); +static void emit_compression_string (int); -static void init_mangling PARAMS ((struct obstack *)); -static tree finish_mangling PARAMS ((void)); -static void compression_table_add PARAMS ((tree)); +static void init_mangling (struct obstack *); +static tree finish_mangling (void); +static void compression_table_add (tree); -static void mangle_member_name PARAMS ((tree)); +static void mangle_member_name (tree); /* We use an incoming obstack, always to be provided to the interface functions. */ diff --git a/gcc/java/mangle_name.c b/gcc/java/mangle_name.c index e306df8..864ac4d 100644 --- a/gcc/java/mangle_name.c +++ b/gcc/java/mangle_name.c @@ -35,9 +35,9 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "obstack.h" #include "toplev.h" -static void append_unicode_mangled_name PARAMS ((const char *, int)); +static void append_unicode_mangled_name (const char *, int); #ifndef HAVE_AS_UTF8 -static int unicode_mangling_length PARAMS ((const char *, int)); +static int unicode_mangling_length (const char *, int); #endif extern struct obstack *mangle_obstack; diff --git a/gcc/java/parse-scan.y b/gcc/java/parse-scan.y index 4fb83ed..2411b11 100644 --- a/gcc/java/parse-scan.y +++ b/gcc/java/parse-scan.y @@ -116,15 +116,15 @@ struct method_declarator { } /* Two actions for this grammar */ -static int make_class_name_recursive PARAMS ((struct obstack *stack, - struct class_context *ctx)); -static char *get_class_name PARAMS ((void)); -static void report_class_declaration PARAMS ((const char *)); -static void report_main_declaration PARAMS ((struct method_declarator *)); -static void push_class_context PARAMS ((const char *)); -static void pop_class_context PARAMS ((void)); - -void report PARAMS ((void)); +static int make_class_name_recursive (struct obstack *stack, + struct class_context *ctx); +static char *get_class_name (void); +static void report_class_declaration (const char *); +static void report_main_declaration (struct method_declarator *); +static void push_class_context (const char *); +static void pop_class_context (void); + +void report (void); #include "lex.h" #include "parse.h" diff --git a/gcc/java/parse.h b/gcc/java/parse.h index 6612e3a..37731fb 100644 --- a/gcc/java/parse.h +++ b/gcc/java/parse.h @@ -36,8 +36,8 @@ extern int quiet_flag; #ifndef JC1_LITE /* Function extern to java/ */ -extern int int_fits_type_p PARAMS ((tree, tree)); -extern tree stabilize_reference PARAMS ((tree)); +extern int int_fits_type_p (tree, tree); +extern tree stabilize_reference (tree); #endif /* Macros for verbose debug info */ @@ -920,32 +920,32 @@ struct parser_ctxt { #define JAVA_RADIX10_FLAG(NODE) TREE_LANG_FLAG_0(NODE) #ifndef JC1_LITE -void java_complete_class PARAMS ((void)); -void java_check_circular_reference PARAMS ((void)); -void java_fix_constructors PARAMS ((void)); -void java_layout_classes PARAMS ((void)); -void java_reorder_fields PARAMS ((void)); -tree java_method_add_stmt PARAMS ((tree, tree)); -int java_report_errors PARAMS ((void)); -extern tree do_resolve_class PARAMS ((tree, tree, tree, tree)); +void java_complete_class (void); +void java_check_circular_reference (void); +void java_fix_constructors (void); +void java_layout_classes (void); +void java_reorder_fields (void); +tree java_method_add_stmt (tree, tree); +int java_report_errors (void); +extern tree do_resolve_class (tree, tree, tree, tree); #endif -char *java_get_line_col PARAMS ((const char *, int, int)); -extern void reset_report PARAMS ((void)); +char *java_get_line_col (const char *, int, int); +extern void reset_report (void); /* Always in use, no matter what you compile */ -void java_push_parser_context PARAMS ((void)); -void java_pop_parser_context PARAMS ((int)); -void java_init_lex PARAMS ((FILE *, const char *)); -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)); -extern void yyerror PARAMS ((const char *)) +void java_push_parser_context (void); +void java_pop_parser_context (int); +void java_init_lex (FILE *, const char *); +extern void java_parser_context_save_global (void); +extern void java_parser_context_restore_global (void); +int yyparse (void); +extern int java_parse (void); +extern void yyerror (const char *) #ifdef JC1_LITE ATTRIBUTE_NORETURN #endif ; -extern void java_expand_classes PARAMS ((void)); +extern void java_expand_classes (void); extern struct parser_ctxt *ctxp; extern struct parser_ctxt *ctxp_for_generation; diff --git a/gcc/java/parse.y b/gcc/java/parse.y index 4da4b5f..3dbe3b3 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -73,272 +73,261 @@ definitions and other extensions. */ #include "tree-inline.h" /* Local function prototypes */ -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 tree create_class PARAMS ((int, tree, tree, tree)); -static tree create_interface PARAMS ((int, tree, tree)); -static void end_class_declaration PARAMS ((int)); -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, ...)) +static char *java_accstring_lookup (int); +static void classitf_redefinition_error (const char *,tree, tree, tree); +static void variable_redefinition_error (tree, tree, tree, int); +static tree create_class (int, tree, tree, tree); +static tree create_interface (int, tree, tree); +static void end_class_declaration (int); +static tree find_field (tree, tree); +static tree lookup_field_wrapper (tree, tree); +static int duplicate_declaration_error_p (tree, tree, tree); +static void register_fields (int, tree, tree); +static tree parser_qualified_classname (tree); +static int parser_check_super (tree, tree, tree); +static int parser_check_super_interface (tree, tree, tree); +static void check_modifiers_consistency (int); +static tree lookup_cl (tree); +static tree lookup_java_method2 (tree, tree, int); +static tree method_header (int, tree, tree, tree); +static void fix_method_argument_names (tree ,tree); +static tree method_declarator (tree, tree); +static void parse_warning_context (tree cl, const char *msg, ...) ATTRIBUTE_PRINTF_2; -static void issue_warning_error_from_context PARAMS ((tree, const char *msg, va_list)) +static void issue_warning_error_from_context (tree, const char *msg, va_list) ATTRIBUTE_PRINTF (2, 0); -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, tree)); -static void find_in_imports PARAMS ((tree, tree)); -static void check_inner_class_access PARAMS ((tree, tree, tree)); -static int check_pkg_class_access PARAMS ((tree, tree, bool)); -static void register_package PARAMS ((tree)); -static tree resolve_package PARAMS ((tree, tree *, tree *)); -static tree resolve_class PARAMS ((tree, tree, tree, tree)); -static void declare_local_variables PARAMS ((int, tree, tree)); -static void dump_java_tree PARAMS ((enum tree_dump_index, tree)); -static void source_start_java_method PARAMS ((tree)); -static void source_end_java_method PARAMS ((void)); -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, tree)); -static int check_class_interface_creation PARAMS ((int, int, tree, - tree, tree, tree)); -static tree patch_method_invocation PARAMS ((tree, tree, tree, int, - int *, tree *)); -static int breakdown_qualified PARAMS ((tree *, tree *, tree)); -static int in_same_package PARAMS ((tree, tree)); -static tree resolve_and_layout PARAMS ((tree, tree)); -static tree qualify_and_find PARAMS ((tree, 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 PARAMS ((int, tree, tree, tree, - 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 int maybe_use_access_method PARAMS ((int, 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 check_inner_circular_reference PARAMS ((tree, tree)); -static tree check_circular_reference PARAMS ((tree)); -static tree obtain_incomplete_type PARAMS ((tree)); -static tree java_complete_lhs PARAMS ((tree)); -static tree java_complete_tree PARAMS ((tree)); -static tree maybe_generate_pre_expand_clinit PARAMS ((tree)); -static int analyze_clinit_body PARAMS ((tree, tree)); -static int maybe_yank_clinit PARAMS ((tree)); -static void start_complete_expand_method PARAMS ((tree)); -static void java_complete_expand_method PARAMS ((tree)); -static void java_expand_method_bodies 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 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 tree patch_assignment PARAMS ((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 int build_type_name_from_array_name PARAMS ((tree, 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 PARAMS ((tree)); -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_wfl_wrap PARAMS ((tree, 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, 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 encapsulate_with_try_catch PARAMS ((int, tree, tree, tree)); -static tree build_assertion PARAMS ((int, tree, 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 bool ctors_unchecked_throws_clause_p 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 PARAMS ((tree)); -static tree patch_conditional_expr PARAMS ((tree, tree, tree)); -static tree generate_finit PARAMS ((tree)); -static tree generate_instinit PARAMS ((tree)); -static tree build_instinit_invocation PARAMS ((tree)); -static void fix_constructors PARAMS ((tree)); -static tree build_alias_initializer_parameter_list PARAMS ((int, tree, - tree, int *)); -static tree craft_constructor PARAMS ((tree, tree)); -static int verify_constructor_super PARAMS ((tree)); -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 check_method_types_complete PARAMS ((tree)); -static void java_check_regular_methods PARAMS ((tree)); -static void java_check_abstract_methods PARAMS ((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_classes PARAMS ((void)); -static void java_complete_expand_class PARAMS ((tree)); -static void java_complete_expand_methods PARAMS ((tree)); -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 int 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)); -static void java_parser_context_push_initialized_field PARAMS ((void)); -static void java_parser_context_pop_initialized_field PARAMS ((void)); -static tree reorder_static_initialized PARAMS ((tree)); -static void java_parser_context_suspend PARAMS ((void)); -static void java_parser_context_resume PARAMS ((void)); -static int pop_current_osb PARAMS ((struct parser_ctxt *)); +static void parse_ctor_invocation_error (void); +static tree parse_jdk1_1_error (const char *); +static void complete_class_report_errors (jdep *); +static int process_imports (void); +static void read_import_dir (tree); +static int find_in_imports_on_demand (tree, tree); +static void find_in_imports (tree, tree); +static void check_inner_class_access (tree, tree, tree); +static int check_pkg_class_access (tree, tree, bool); +static void register_package (tree); +static tree resolve_package (tree, tree *, tree *); +static tree resolve_class (tree, tree, tree, tree); +static void declare_local_variables (int, tree, tree); +static void dump_java_tree (enum tree_dump_index, tree); +static void source_start_java_method (tree); +static void source_end_java_method (void); +static tree find_name_in_single_imports (tree); +static void check_abstract_method_header (tree); +static tree lookup_java_interface_method2 (tree, tree); +static tree resolve_expression_name (tree, tree *); +static tree maybe_create_class_interface_decl (tree, tree, tree, tree); +static int check_class_interface_creation (int, int, tree, tree, tree, tree); +static tree patch_method_invocation (tree, tree, tree, int, int *, tree *); +static int breakdown_qualified (tree *, tree *, tree); +static int in_same_package (tree, tree); +static tree resolve_and_layout (tree, tree); +static tree qualify_and_find (tree, tree, tree); +static tree resolve_no_layout (tree, tree); +static int invocation_mode (tree, int); +static tree find_applicable_accessible_methods_list (int, tree, tree, tree); +static void search_applicable_methods_list (int, tree, tree, tree, tree *, tree *); +static tree find_most_specific_methods_list (tree); +static int argument_types_convertible (tree, tree); +static tree patch_invoke (tree, tree, tree); +static int maybe_use_access_method (int, tree *, tree *); +static tree lookup_method_invoke (int, tree, tree, tree, tree); +static tree register_incomplete_type (int, tree, tree, tree); +static tree check_inner_circular_reference (tree, tree); +static tree check_circular_reference (tree); +static tree obtain_incomplete_type (tree); +static tree java_complete_lhs (tree); +static tree java_complete_tree (tree); +static tree maybe_generate_pre_expand_clinit (tree); +static int analyze_clinit_body (tree, tree); +static int maybe_yank_clinit (tree); +static void start_complete_expand_method (tree); +static void java_complete_expand_method (tree); +static void java_expand_method_bodies (tree); +static int unresolved_type_p (tree, tree *); +static void create_jdep_list (struct parser_ctxt *); +static tree build_expr_block (tree, tree); +static tree enter_block (void); +static tree exit_block (void); +static tree lookup_name_in_blocks (tree); +static void maybe_absorb_scoping_blocks (void); +static tree build_method_invocation (tree, tree); +static tree build_new_invocation (tree, tree); +static tree build_assignment (int, int, tree, tree); +static tree build_binop (enum tree_code, int, tree, tree); +static tree patch_assignment (tree, tree); +static tree patch_binop (tree, tree, tree); +static tree build_unaryop (int, int, tree); +static tree build_incdec (int, int, tree, int); +static tree patch_unaryop (tree, tree); +static tree build_cast (int, tree, tree); +static tree build_null_of_type (tree); +static tree patch_cast (tree, tree); +static int valid_ref_assignconv_cast_p (tree, tree, int); +static int valid_builtin_assignconv_identity_widening_p (tree, tree); +static int valid_cast_to_p (tree, tree); +static int valid_method_invocation_conversion_p (tree, tree); +static tree try_builtin_assignconv (tree, tree, tree); +static tree try_reference_assignconv (tree, tree); +static tree build_unresolved_array_type (tree); +static int build_type_name_from_array_name (tree, tree *); +static tree build_array_from_name (tree, tree, tree, tree *); +static tree build_array_ref (int, tree, tree); +static tree patch_array_ref (tree); +static tree make_qualified_name (tree, tree, int); +static tree merge_qualified_name (tree, tree); +static tree make_qualified_primary (tree, tree, int); +static int resolve_qualified_expression_name (tree, tree *, tree *, tree *); +static void qualify_ambiguous_name (tree); +static tree resolve_field_access (tree, tree *, tree *); +static tree build_newarray_node (tree, tree, int); +static tree patch_newarray (tree); +static tree resolve_type_during_patch (tree); +static tree build_this (int); +static tree build_wfl_wrap (tree, int); +static tree build_return (int, tree); +static tree patch_return (tree); +static tree maybe_access_field (tree, tree, tree); +static int complete_function_arguments (tree); +static int check_for_static_method_reference (tree, tree, tree, tree, tree); +static int not_accessible_p (tree, tree, tree, int); +static void check_deprecation (tree, tree); +static int class_in_current_package (tree); +static tree build_if_else_statement (int, tree, tree, tree); +static tree patch_if_else_statement (tree); +static tree add_stmt_to_compound (tree, tree, tree); +static tree add_stmt_to_block (tree, tree, tree); +static tree patch_exit_expr (tree); +static tree build_labeled_block (int, tree); +static tree finish_labeled_statement (tree, tree); +static tree build_bc_statement (int, int, tree); +static tree patch_bc_statement (tree); +static tree patch_loop_statement (tree); +static tree build_new_loop (tree); +static tree build_loop_body (int, tree, int); +static tree finish_loop_body (int, tree, tree, int); +static tree build_debugable_stmt (int, tree); +static tree finish_for_loop (int, tree, tree, tree); +static tree patch_switch_statement (tree); +static tree string_constant_concatenation (tree, tree); +static tree build_string_concatenation (tree, tree); +static tree patch_string_cst (tree); +static tree patch_string (tree); +static tree encapsulate_with_try_catch (int, tree, tree, tree); +static tree build_assertion (int, tree, tree); +static tree build_try_statement (int, tree, tree); +static tree build_try_finally_statement (int, tree, tree); +static tree patch_try_statement (tree); +static tree patch_synchronized_statement (tree, tree); +static tree patch_throw_statement (tree, tree); +static void check_thrown_exceptions (int, tree); +static int check_thrown_exceptions_do (tree); +static void purge_unchecked_exceptions (tree); +static bool ctors_unchecked_throws_clause_p (tree); +static void check_throws_clauses (tree, tree, tree); +static void finish_method_declaration (tree); +static tree build_super_invocation (tree); +static int verify_constructor_circularity (tree, tree); +static char *constructor_circularity_msg (tree, tree); +static tree build_this_super_qualified_invocation (int, tree, tree, int, int); +static const char *get_printable_method_name (tree); +static tree patch_conditional_expr (tree, tree, tree); +static tree generate_finit (tree); +static tree generate_instinit (tree); +static tree build_instinit_invocation (tree); +static void fix_constructors (tree); +static tree build_alias_initializer_parameter_list (int, tree, tree, int *); +static tree craft_constructor (tree, tree); +static int verify_constructor_super (tree); +static tree create_artificial_method (tree, int, tree, tree, tree); +static void start_artificial_method_body (tree); +static void end_artificial_method_body (tree); +static int check_method_redefinition (tree, tree); +static int check_method_types_complete (tree); +static void java_check_regular_methods (tree); +static void java_check_abstract_methods (tree); +static void unreachable_stmt_error (tree); +static tree find_expr_with_wfl (tree); +static void missing_return_error (tree); +static tree build_new_array_init (int, tree); +static tree patch_new_array_init (tree, tree); +static tree maybe_build_array_element_wfl (tree); +static int array_constructor_check_entry (tree, tree); +static const char *purify_type_name (const char *); +static tree fold_constant_for_init (tree, tree); +static tree strip_out_static_field_access_decl (tree); +static jdeplist *reverse_jdep_list (struct parser_ctxt *); +static void static_ref_err (tree, tree, tree); +static void parser_add_interface (tree, tree, tree); +static void add_superinterfaces (tree, tree); +static tree jdep_resolve_class (jdep *); +static int note_possible_classname (const char *, int); +static void java_complete_expand_classes (void); +static void java_complete_expand_class (tree); +static void java_complete_expand_methods (tree); +static tree cut_identifier_in_qualified (tree); +static tree java_stabilize_reference (tree); +static tree do_unary_numeric_promotion (tree); +static char * operator_string (tree); +static tree do_merge_string_cste (tree, const char *, int, int); +static tree merge_string_cste (tree, tree, int); +static tree java_refold (tree); +static int java_decl_equiv (tree, tree); +static int binop_compound_p (enum tree_code); +static tree search_loop (tree); +static int labeled_block_contains_loop_p (tree, tree); +static int check_abstract_method_definitions (int, tree, tree); +static void java_check_abstract_method_definitions (tree); +static void java_debug_context_do (int); +static void java_parser_context_push_initialized_field (void); +static void java_parser_context_pop_initialized_field (void); +static tree reorder_static_initialized (tree); +static void java_parser_context_suspend (void); +static void java_parser_context_resume (void); +static int pop_current_osb (struct parser_ctxt *); /* JDK 1.1 work. FIXME */ -static tree maybe_make_nested_class_name PARAMS ((tree)); -static int make_nested_class_name PARAMS ((tree)); -static void set_nested_class_simple_name_value PARAMS ((tree, int)); -static void link_nested_class_to_enclosing PARAMS ((void)); -static tree resolve_inner_class PARAMS ((htab_t, tree, tree *, tree *, tree)); -static tree find_as_inner_class PARAMS ((tree, tree, tree)); -static tree find_as_inner_class_do PARAMS ((tree, tree)); -static int check_inner_class_redefinition PARAMS ((tree, tree)); - -static tree build_thisn_assign PARAMS ((void)); -static tree build_current_thisn PARAMS ((tree)); -static tree build_access_to_thisn PARAMS ((tree, tree, int)); -static tree maybe_build_thisn_access_method PARAMS ((tree)); - -static tree build_outer_field_access PARAMS ((tree, tree)); -static tree build_outer_field_access_methods PARAMS ((tree)); -static tree build_outer_field_access_expr PARAMS ((int, tree, tree, - tree, tree)); -static tree build_outer_method_access_method PARAMS ((tree)); -static tree build_new_access_id PARAMS ((void)); -static tree build_outer_field_access_method PARAMS ((tree, tree, tree, - tree, tree)); - -static int outer_field_access_p PARAMS ((tree, tree)); -static int outer_field_expanded_access_p PARAMS ((tree, tree *, - tree *, tree *)); -static tree outer_field_access_fix PARAMS ((tree, tree, tree)); -static tree build_incomplete_class_ref PARAMS ((int, tree)); -static tree patch_incomplete_class_ref PARAMS ((tree)); -static tree create_anonymous_class PARAMS ((int, tree)); -static void patch_anonymous_class PARAMS ((tree, tree, tree)); -static void add_inner_class_fields PARAMS ((tree, tree)); - -static tree build_dot_class_method PARAMS ((tree)); -static tree build_dot_class_method_invocation PARAMS ((tree)); -static void create_new_parser_context PARAMS ((int)); -static void mark_parser_ctxt PARAMS ((void *)); -static tree maybe_build_class_init_for_field PARAMS ((tree, tree)); - -static int attach_init_test_initialization_flags PARAMS ((PTR *, PTR)); -static int emit_test_initialization PARAMS ((PTR *, PTR)); - -static char *string_convert_int_cst PARAMS ((tree)); +static tree maybe_make_nested_class_name (tree); +static int make_nested_class_name (tree); +static void set_nested_class_simple_name_value (tree, int); +static void link_nested_class_to_enclosing (void); +static tree resolve_inner_class (htab_t, tree, tree *, tree *, tree); +static tree find_as_inner_class (tree, tree, tree); +static tree find_as_inner_class_do (tree, tree); +static int check_inner_class_redefinition (tree, tree); + +static tree build_thisn_assign (void); +static tree build_current_thisn (tree); +static tree build_access_to_thisn (tree, tree, int); +static tree maybe_build_thisn_access_method (tree); + +static tree build_outer_field_access (tree, tree); +static tree build_outer_field_access_methods (tree); +static tree build_outer_field_access_expr (int, tree, tree, tree, tree); +static tree build_outer_method_access_method (tree); +static tree build_new_access_id (void); +static tree build_outer_field_access_method (tree, tree, tree, tree, tree); + +static int outer_field_access_p (tree, tree); +static int outer_field_expanded_access_p (tree, tree *, tree *, tree *); +static tree outer_field_access_fix (tree, tree, tree); +static tree build_incomplete_class_ref (int, tree); +static tree patch_incomplete_class_ref (tree); +static tree create_anonymous_class (int, tree); +static void patch_anonymous_class (tree, tree, tree); +static void add_inner_class_fields (tree, tree); + +static tree build_dot_class_method (tree); +static tree build_dot_class_method_invocation (tree); +static void create_new_parser_context (int); +static void mark_parser_ctxt (void *); +static tree maybe_build_class_init_for_field (tree, tree); + +static int attach_init_test_initialization_flags (PTR *, PTR); +static int emit_test_initialization (PTR *, PTR); + +static char *string_convert_int_cst (tree); /* Number of error found so far. */ int java_error_count; diff --git a/gcc/java/typeck.c b/gcc/java/typeck.c index 4520676..5b40c0a 100644 --- a/gcc/java/typeck.c +++ b/gcc/java/typeck.c @@ -39,11 +39,11 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "toplev.h" #include "ggc.h" -static tree convert_ieee_real_to_integer PARAMS ((tree, tree)); -static tree parse_signature_type PARAMS ((const unsigned char **, - const unsigned char *)); -static tree lookup_do PARAMS ((tree, tree, tree, tree, tree (*)(tree))); -static tree build_null_signature PARAMS ((tree)); +static tree convert_ieee_real_to_integer (tree, tree); +static tree parse_signature_type (const unsigned char **, + const unsigned char *); +static tree lookup_do (tree, tree, tree, tree, tree (*)(tree)); +static tree build_null_signature (tree); tree * type_map; @@ -790,7 +790,7 @@ has_method (class, method_name) static tree lookup_do (searched_class, searched_interface, method_name, signature, signature_builder) tree searched_class, searched_interface, method_name, signature; - tree (*signature_builder) PARAMS ((tree)); + tree (*signature_builder) (tree); { tree method; diff --git a/gcc/java/verify.c b/gcc/java/verify.c index 585cd17..a21cb83 100644 --- a/gcc/java/verify.c +++ b/gcc/java/verify.c @@ -36,12 +36,12 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "java-except.h" #include "toplev.h" -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)); -static char *pop_argument_types PARAMS ((tree)); +static void push_pending_label (tree); +static tree merge_types (tree, tree); +static const char *check_pending_block (tree); +static void type_stack_dup (int, int); +static int start_pc_cmp (const PTR, const PTR); +static char *pop_argument_types (tree); extern int stack_pointer; diff --git a/gcc/java/xref.c b/gcc/java/xref.c index 2d88e99..cc1b475 100644 --- a/gcc/java/xref.c +++ b/gcc/java/xref.c @@ -81,7 +81,7 @@ expand_xref (node) { /* Maintain these two cached. */ static FILE *fp = NULL; - static void (*current_expand) PARAMS ((FILE *, tree)) = NULL; + static void (*current_expand) (FILE *, tree) = NULL; if ( !flag_emit_xref ) return; diff --git a/gcc/java/xref.h b/gcc/java/xref.h index 515f3f6..227bd59 100644 --- a/gcc/java/xref.h +++ b/gcc/java/xref.h @@ -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 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 *)); +int xref_flag_value (const char *); +void expand_xref (tree); +void xref_set_data (int, void *); +void *xref_get_data (int); +void xref_set_current_fp (FILE *); /* flag_emit_xref range of possible values. */ @@ -40,7 +40,7 @@ enum { typedef struct { char *key; /* Activator in -fxref=<key> */ - void (*expand) PARAMS ((FILE *, tree)); /* Function to write xrefs out */ + void (*expand) (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 1dbcc32..148c77e 100644 --- a/gcc/java/zextract.c +++ b/gcc/java/zextract.c @@ -214,9 +214,9 @@ typedef unsigned long ulg; /* predefined on some systems) & match zip */ /* Prototypes */ /***********************/ -static ush makeword PARAMS ((const uch *)); -static ulg makelong PARAMS ((const uch *)); -static long find_zip_file_start PARAMS ((int fd, long offset)); +static ush makeword (const uch *); +static ulg makelong (const uch *); +static long find_zip_file_start (int fd, long offset); /***********************/ /* Function makeword() */ diff --git a/gcc/java/zipfile.h b/gcc/java/zipfile.h index 4911434..f4a4772 100644 --- a/gcc/java/zipfile.h +++ b/gcc/java/zipfile.h @@ -60,10 +60,9 @@ extern struct ZipFile *SeenZipFiles; ((ZipDirectory*)((char*)(ZIPD)+(ZIPD)->direntry_size)) #define ZIPMAGIC 0x504b0304 -extern ZipFile * opendir_in_zip PARAMS ((const char *, int)); -extern int read_zip_archive PARAMS ((ZipFile *)); +extern ZipFile * opendir_in_zip (const char *, int); +extern int read_zip_archive (ZipFile *); #ifdef GCC_JCF_H -extern int read_zip_member PARAMS ((JCF*, ZipDirectory*, ZipFile *)); -extern int open_in_zip PARAMS ((struct JCF *, const char *, - const char *, int)); +extern int read_zip_member (JCF*, ZipDirectory*, ZipFile *); +extern int open_in_zip (struct JCF *, const char *, const char *, int); #endif |