buffer.h: PROTO -> PARAMS.

* buffer.h: PROTO -> PARAMS.
        * check-init.c: Likewise.
        * class.c: Likewise.
        * constants.c: Likewise.
        * convert.h: Likewise.
        * decl.c: Likewise.
        * except.c: Likewise.
        * expr.c: Likewise.
        * gjavah.c: Likewise.
        * java-except.h: Likewise.
        * java-tree.h: Likewise.
        * jcf-depend.c: Likewise.
        * jcf-dump.c: Likewise.
        * jcf-parse.c: Likewise.
        * jcf-path.c: Likewise.
        * jcf-reader.c: Likewise.
        * jcf-write.c: Likewise.
        * jcf.h: Likewise.
        * jv-scan.c: Likewise.
        * jvgenmain.c: Likewise.
        * jvspec.c: Likewise.
        * lang.c: Likewise.
        * lex.c: Likewise.
        * lex.h: Likewise.
        * parse-scan.y: Likewise.
        * parse.h: Likewise.
        * parse.y: Likewise.
        * typeck.c: Likewise.
        * verify.c: Likewise.
        * xref.c: Likewise.
        * xref.h: Likewise.
        * zextract.c: Likewise.
        * zipfile.h: Likewise.

From-SVN: r31550
This commit is contained in:
Kaveh R. Ghazi 2000-01-21 20:57:00 +00:00 committed by Kaveh Ghazi
parent 7652adb5c6
commit df32d2ce42
36 changed files with 898 additions and 862 deletions

View File

@ -1,3 +1,39 @@
Fri Jan 21 15:37:29 2000 Kaveh R. Ghazi <ghazi@versicolor.rutgers.edu>
* buffer.h: PROTO -> PARAMS.
* check-init.c: Likewise.
* class.c: Likewise.
* constants.c: Likewise.
* convert.h: Likewise.
* decl.c: Likewise.
* except.c: Likewise.
* expr.c: Likewise.
* gjavah.c: Likewise.
* java-except.h: Likewise.
* java-tree.h: Likewise.
* jcf-depend.c: Likewise.
* jcf-dump.c: Likewise.
* jcf-parse.c: Likewise.
* jcf-path.c: Likewise.
* jcf-reader.c: Likewise.
* jcf-write.c: Likewise.
* jcf.h: Likewise.
* jv-scan.c: Likewise.
* jvgenmain.c: Likewise.
* jvspec.c: Likewise.
* lang.c: Likewise.
* lex.c: Likewise.
* lex.h: Likewise.
* parse-scan.y: Likewise.
* parse.h: Likewise.
* parse.y: Likewise.
* typeck.c: Likewise.
* verify.c: Likewise.
* xref.c: Likewise.
* xref.h: Likewise.
* zextract.c: Likewise.
* zipfile.h: Likewise.
Mon Jan 17 11:58:17 2000 Joerg Brunsmann <joerg.brunsmann@fernuni-hagen.de>
* parse.y (format_parameter:): Use final: rule instead of modifiers:.

View File

@ -1,5 +1,5 @@
/* A "buffer" utility type.
Copyright (C) 1998 Free Software Foundation, Inc.
Copyright (C) 1998, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -43,4 +43,4 @@ struct buffer
#define BUFFER_RESET(BUFP) ((BUFP)->ptr = (BUFP)->data)
extern void buffer_grow PROTO ((struct buffer*, int));
extern void buffer_grow PARAMS ((struct buffer*, int));

View File

@ -1,6 +1,6 @@
/* Code to test for "definitive assignment".
Copyright (C) 1999 Free Software Foundation, Inc.
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -97,12 +97,12 @@ static tree wfl;
#define WORD_SIZE ((unsigned int)(sizeof(word) * 8))
static void check_bool_init PROTO ((tree, words, words, words));
static void check_init PROTO ((tree, words));
static void check_cond_init PROTO ((tree, tree, tree, words, words, words));
static void check_bool2_init PROTO ((enum tree_code, tree, tree, words, words, words));
static void check_bool_init PARAMS ((tree, words, words, words));
static void check_init PARAMS ((tree, words));
static void check_cond_init PARAMS ((tree, tree, tree, words, words, words));
static void check_bool2_init PARAMS ((enum tree_code, tree, tree, words, words, words));
struct alternatives;
static void done_alternative PROTO ((words, struct alternatives *));
static void done_alternative PARAMS ((words, struct alternatives *));
#if 0
#define ALLOC_WORDS(NUM) ((word*) xmalloc ((NUM) * sizeof (word)))

View File

@ -1,5 +1,5 @@
/* Functions related to building classes and their related objects.
Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc.
Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -36,18 +36,18 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "output.h"
#include "parse.h"
static tree mangle_class_field PROTO ((tree class));
static tree make_method_value PROTO ((tree));
static tree build_java_method_type PROTO ((tree, tree, int));
static int32 hashUtf8String PROTO ((const char *, int));
static tree make_field_value PROTO ((tree));
static tree get_dispatch_vector PROTO ((tree));
static tree get_dispatch_table PROTO ((tree, tree));
static void append_gpp_mangled_type PROTO ((struct obstack *, tree));
static tree mangle_static_field PROTO ((tree));
static void add_interface_do PROTO ((tree, tree, int));
static tree maybe_layout_super_class PROTO ((tree, tree));
static int assume_compiled PROTO ((const char *));
static tree mangle_class_field PARAMS ((tree class));
static tree make_method_value PARAMS ((tree));
static tree build_java_method_type PARAMS ((tree, tree, int));
static int32 hashUtf8String PARAMS ((const char *, int));
static tree make_field_value PARAMS ((tree));
static tree get_dispatch_vector PARAMS ((tree));
static tree get_dispatch_table PARAMS ((tree, tree));
static void append_gpp_mangled_type PARAMS ((struct obstack *, tree));
static tree mangle_static_field PARAMS ((tree));
static void add_interface_do PARAMS ((tree, tree, int));
static tree maybe_layout_super_class PARAMS ((tree, tree));
static int assume_compiled PARAMS ((const char *));
static rtx registerClass_libfunc;
@ -77,7 +77,7 @@ typedef struct assume_compiled_node_struct
} assume_compiled_node;
static assume_compiled_node *find_assume_compiled_node
PROTO ((assume_compiled_node *, const char *));
PARAMS ((assume_compiled_node *, const char *));
/* This is the root of the include/exclude tree. */
@ -1892,7 +1892,7 @@ register_class ()
void
emit_register_classes ()
{
extern tree get_file_function_name PROTO((int));
extern tree get_file_function_name PARAMS ((int));
tree init_name = get_file_function_name ('I');
tree init_type = build_function_type (void_type_node, end_params_node);
tree init_decl;

View File

@ -1,5 +1,5 @@
/* Handle the constant pool of the Java(TM) Virtual Machine.
Copyright (C) 1997 Free Software Foundation, Inc.
Copyright (C) 1997, 98-99, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -30,11 +30,11 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
extern struct obstack permanent_obstack;
static void set_constant_entry PROTO ((CPool *, int, int, jword));
static int find_class_or_string_constant PROTO ((CPool *, int, tree));
static int find_name_and_type_constant PROTO ((CPool *, tree, tree));
static tree get_tag_node PROTO ((int));
static tree build_constant_data_ref PROTO ((void));
static void set_constant_entry PARAMS ((CPool *, int, int, jword));
static int find_class_or_string_constant PARAMS ((CPool *, int, tree));
static int find_name_and_type_constant PARAMS ((CPool *, tree, tree));
static tree get_tag_node PARAMS ((int));
static tree build_constant_data_ref PARAMS ((void));
/* Set the INDEX'th constant in CPOOL to have the given TAG and VALUE. */

View File

@ -1,6 +1,6 @@
/* Definition of conversion functions.
Copyright (C) 1993 Free Software Foundation, Inc.
Copyright (C) 1993, 1998, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -21,8 +21,8 @@ Boston, MA 02111-1307, USA. */
/* Written by Jeffrey Hsu <hsu@cygnus.com> */
extern tree convert_to_boolean PROTO ((tree, tree));
extern tree convert_to_char PROTO ((tree, tree));
extern tree convert_to_integer PROTO ((tree type, tree expr));
extern tree convert_to_real PROTO ((tree type, tree expr));
extern tree convert_to_pointer PROTO ((tree type, tree expr));
extern tree convert_to_boolean PARAMS ((tree, tree));
extern tree convert_to_char PARAMS ((tree, tree));
extern tree convert_to_integer PARAMS ((tree type, tree expr));
extern tree convert_to_real PARAMS ((tree type, tree expr));
extern tree convert_to_pointer PARAMS ((tree type, tree expr));

View File

@ -1,7 +1,7 @@
/* Process declarations and variables for the GNU compiler for the
Java(TM) language.
Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc.
Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -36,10 +36,10 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "except.h"
#include "defaults.h"
static tree push_jvm_slot PROTO ((int, tree));
static tree lookup_name_current_level PROTO ((tree));
static tree push_promoted_type PROTO ((const char *, tree));
static struct binding_level *make_binding_level PROTO ((void));
static tree push_jvm_slot PARAMS ((int, tree));
static tree lookup_name_current_level PARAMS ((tree));
static tree push_promoted_type PARAMS ((const char *, tree));
static struct binding_level *make_binding_level PARAMS ((void));
#ifndef INT_TYPE_SIZE
#define INT_TYPE_SIZE BITS_PER_WORD

View File

@ -1,5 +1,5 @@
/* Handle exceptions for GNU compiler for the Java(TM) language.
Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1997, 98-99, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -37,12 +37,12 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "eh-common.h"
#include "toplev.h"
static void expand_start_java_handler PROTO ((struct eh_range *));
static void expand_end_java_handler PROTO ((struct eh_range *));
static struct eh_range *find_handler_in_range PROTO ((int, struct eh_range *,
static void expand_start_java_handler PARAMS ((struct eh_range *));
static void expand_end_java_handler PARAMS ((struct eh_range *));
static struct eh_range *find_handler_in_range PARAMS ((int, struct eh_range *,
struct eh_range *));
static void link_handler PROTO ((struct eh_range *, struct eh_range *));
static void check_start_handlers PROTO ((struct eh_range *, int));
static void link_handler PARAMS ((struct eh_range *, struct eh_range *));
static void check_start_handlers PARAMS ((struct eh_range *, int));
extern struct obstack permanent_obstack;

View File

@ -1,5 +1,5 @@
/* Process expressions for the GNU compiler for the Java(TM) language.
Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -41,44 +41,44 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "except.h"
#include "defaults.h"
static void flush_quick_stack PROTO ((void));
static void push_value PROTO ((tree));
static tree pop_value PROTO ((tree));
static void java_stack_swap PROTO ((void));
static void java_stack_dup PROTO ((int, int));
static void build_java_athrow PROTO ((tree));
static void build_java_jsr PROTO ((tree, tree));
static void build_java_ret PROTO ((tree));
static void expand_java_multianewarray PROTO ((tree, int));
static void expand_java_arraystore PROTO ((tree));
static void expand_java_arrayload PROTO ((tree));
static void expand_java_array_length PROTO ((void));
static tree build_java_monitor PROTO ((tree, tree));
static void expand_java_pushc PROTO ((int, tree));
static void expand_java_return PROTO ((tree));
static void expand_java_NEW PROTO ((tree));
static void expand_java_INSTANCEOF PROTO ((tree));
static void expand_java_CHECKCAST PROTO ((tree));
static void expand_iinc PROTO ((unsigned int, int, int));
static void expand_java_binop PROTO ((tree, enum tree_code));
static void note_label PROTO ((int, int));
static void expand_compare PROTO ((enum tree_code, tree, tree, int));
static void expand_test PROTO ((enum tree_code, tree, int));
static void expand_cond PROTO ((enum tree_code, tree, int));
static void expand_java_goto PROTO ((int));
static void flush_quick_stack PARAMS ((void));
static void push_value PARAMS ((tree));
static tree pop_value PARAMS ((tree));
static void java_stack_swap PARAMS ((void));
static void java_stack_dup PARAMS ((int, int));
static void build_java_athrow PARAMS ((tree));
static void build_java_jsr PARAMS ((tree, tree));
static void build_java_ret PARAMS ((tree));
static void expand_java_multianewarray PARAMS ((tree, int));
static void expand_java_arraystore PARAMS ((tree));
static void expand_java_arrayload PARAMS ((tree));
static void expand_java_array_length PARAMS ((void));
static tree build_java_monitor PARAMS ((tree, tree));
static void expand_java_pushc PARAMS ((int, tree));
static void expand_java_return PARAMS ((tree));
static void expand_java_NEW PARAMS ((tree));
static void expand_java_INSTANCEOF PARAMS ((tree));
static void expand_java_CHECKCAST PARAMS ((tree));
static void expand_iinc PARAMS ((unsigned int, int, int));
static void expand_java_binop PARAMS ((tree, enum tree_code));
static void note_label PARAMS ((int, int));
static void expand_compare PARAMS ((enum tree_code, tree, tree, int));
static void expand_test PARAMS ((enum tree_code, tree, int));
static void expand_cond PARAMS ((enum tree_code, tree, int));
static void expand_java_goto PARAMS ((int));
#if 0
static void expand_java_call PROTO ((int, int));
static void expand_java_ret PROTO ((tree));
static void expand_java_call PARAMS ((int, int));
static void expand_java_ret PARAMS ((tree));
#endif
static tree pop_arguments PROTO ((tree));
static void expand_invoke PROTO ((int, int, int));
static void expand_java_field_op PROTO ((int, int, int));
static void java_push_constant_from_pool PROTO ((struct JCF *, int));
static void java_stack_pop PROTO ((int));
static tree build_java_throw_out_of_bounds_exception PROTO ((tree));
static tree build_java_check_indexed_type PROTO ((tree, tree));
static tree java_array_data_offset PROTO ((tree));
static tree case_identity PROTO ((tree, tree));
static tree pop_arguments PARAMS ((tree));
static void expand_invoke PARAMS ((int, int, int));
static void expand_java_field_op PARAMS ((int, int, int));
static void java_push_constant_from_pool PARAMS ((struct JCF *, int));
static void java_stack_pop PARAMS ((int));
static tree build_java_throw_out_of_bounds_exception PARAMS ((tree));
static tree build_java_check_indexed_type PARAMS ((tree, tree));
static tree java_array_data_offset PARAMS ((tree));
static tree case_identity PARAMS ((tree, tree));
static tree operand_type[59];
extern struct obstack permanent_obstack;

View File

@ -107,35 +107,35 @@ struct method_name
/* List of method names we've seen. */
static struct method_name *method_name_list;
static void print_field_info PROTO ((FILE*, JCF*, int, int, JCF_u2));
static void print_mangled_classname PROTO ((FILE*, JCF*, const char*, int));
static int print_cxx_classname PROTO ((FILE*, const char*, JCF*, int));
static void print_method_info PROTO ((FILE*, JCF*, int, int, JCF_u2));
static void print_c_decl PROTO ((FILE*, JCF*, int, int, int, const char *));
static void print_stub PROTO ((FILE*, JCF*, int, int, int, const char *));
static void print_full_cxx_name PROTO ((FILE*, JCF*, int, int, int, const char *));
static void decompile_method PROTO ((FILE*, JCF*, int));
static void add_class_decl PROTO ((FILE*, JCF*, JCF_u2));
static void print_field_info PARAMS ((FILE*, JCF*, int, int, JCF_u2));
static void print_mangled_classname PARAMS ((FILE*, JCF*, const char*, int));
static int print_cxx_classname PARAMS ((FILE*, const char*, JCF*, int));
static void print_method_info PARAMS ((FILE*, JCF*, int, int, JCF_u2));
static void print_c_decl PARAMS ((FILE*, JCF*, int, int, int, const char *));
static void print_stub PARAMS ((FILE*, JCF*, int, int, int, const char *));
static void print_full_cxx_name PARAMS ((FILE*, JCF*, int, int, int, const char *));
static void decompile_method PARAMS ((FILE*, JCF*, int));
static void add_class_decl PARAMS ((FILE*, JCF*, JCF_u2));
static int java_float_finite PROTO ((jfloat));
static int java_double_finite PROTO ((jdouble));
static void print_name PROTO ((FILE *, JCF *, int));
static void print_base_classname PROTO ((FILE *, JCF *, int));
static int utf8_cmp PROTO ((const unsigned char *, int, const char *));
static const char *cxx_keyword_subst PROTO ((const unsigned char *, int));
static void generate_access PROTO ((FILE *, JCF_u2));
static int name_is_method_p PROTO ((const unsigned char *, int));
static char *get_field_name PROTO ((JCF *, int, JCF_u2));
static void print_field_name PROTO ((FILE *, JCF *, int, JCF_u2));
static const unsigned char *super_class_name PROTO ((JCF *, int *));
static void print_include PROTO ((FILE *, const unsigned char *, int));
static int java_float_finite PARAMS ((jfloat));
static int java_double_finite PARAMS ((jdouble));
static void print_name PARAMS ((FILE *, JCF *, int));
static void print_base_classname PARAMS ((FILE *, JCF *, int));
static int utf8_cmp PARAMS ((const unsigned char *, int, const char *));
static const char *cxx_keyword_subst PARAMS ((const unsigned char *, int));
static void generate_access PARAMS ((FILE *, JCF_u2));
static int name_is_method_p PARAMS ((const unsigned char *, int));
static char *get_field_name PARAMS ((JCF *, int, JCF_u2));
static void print_field_name PARAMS ((FILE *, JCF *, int, JCF_u2));
static const unsigned char *super_class_name PARAMS ((JCF *, int *));
static void print_include PARAMS ((FILE *, const unsigned char *, int));
static const unsigned char *decode_signature_piece
PROTO ((FILE *, const unsigned char *, const unsigned char *, int *));
static void print_class_decls PROTO ((FILE *, JCF *, int));
static void usage PROTO ((void)) ATTRIBUTE_NORETURN;
static void help PROTO ((void)) ATTRIBUTE_NORETURN;
static void java_no_argument PROTO ((const char *)) ATTRIBUTE_NORETURN;
static void version PROTO ((void)) ATTRIBUTE_NORETURN;
PARAMS ((FILE *, const unsigned char *, const unsigned char *, int *));
static void print_class_decls PARAMS ((FILE *, JCF *, int));
static void usage PARAMS ((void)) ATTRIBUTE_NORETURN;
static void help PARAMS ((void)) ATTRIBUTE_NORETURN;
static void java_no_argument PARAMS ((const char *)) ATTRIBUTE_NORETURN;
static void version PARAMS ((void)) ATTRIBUTE_NORETURN;
JCF_u2 current_field_name;
JCF_u2 current_field_value;
@ -1100,9 +1100,9 @@ struct namelet
struct namelet *next;
};
static void add_namelet PROTO ((const unsigned char *,
static void add_namelet PARAMS ((const unsigned char *,
const unsigned char *, struct namelet *));
static void print_namelet PROTO ((FILE *, struct namelet *, int));
static void print_namelet PARAMS ((FILE *, struct namelet *, int));
/* The special root namelet. */
static struct namelet root =

View File

@ -1,6 +1,6 @@
/* Definitions for exception handling for use by the GNU compiler
for the Java(TM) language compiler.
Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1997, 98-99, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -54,18 +54,18 @@ extern struct eh_range whole_range;
#define NULL_EH_RANGE (&whole_range)
extern struct eh_range * find_handler PROTO ((int));
extern struct eh_range * find_handler PARAMS ((int));
extern void method_init_exceptions PROTO ((void));
extern void method_init_exceptions PARAMS ((void));
extern void emit_handlers PROTO ((void));
extern void emit_handlers PARAMS ((void));
extern void maybe_start_try PROTO ((int));
extern void maybe_start_try PARAMS ((int));
extern void maybe_end_try PROTO ((int));
extern void maybe_end_try PARAMS ((int));
extern void add_handler PROTO ((int, int, tree, tree));
extern void add_handler PARAMS ((int, int, tree, tree));
extern void handle_nested_ranges PROTO ((void));
extern void handle_nested_ranges PARAMS ((void));
extern void expand_resume_after_catch PROTO ((void));
extern void expand_resume_after_catch PARAMS ((void));

View File

@ -1,6 +1,6 @@
/* Definitions for parsing and type checking for the GNU compiler for
the Java(TM) language.
Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1997, 98-99, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -479,170 +479,170 @@ struct lang_type
#define JCF_u4 unsigned long
#define JCF_u2 unsigned short
extern void add_assume_compiled PROTO ((const char *, int));
extern tree lookup_class PROTO ((tree));
extern tree lookup_java_constructor PROTO ((tree, tree));
extern tree lookup_java_method PROTO ((tree, tree, tree));
extern tree lookup_argument_method PROTO ((tree, tree, tree));
extern tree promote_type PROTO ((tree));
extern tree get_constant PROTO ((struct JCF*, int));
extern tree get_name_constant PROTO ((struct JCF*, int));
extern tree get_class_constant PROTO ((struct JCF*, int));
extern tree parse_signature PROTO ((struct JCF *jcf, int sig_index));
extern void jcf_parse PROTO ((struct JCF*));
extern tree add_field PROTO ((tree, tree, tree, int));
extern tree add_method PROTO ((tree, int, tree, tree));
extern tree add_method_1 PROTO ((tree, int, tree, tree));
extern tree make_class PROTO ((void));
extern tree push_class PROTO ((tree, tree));
extern tree unmangle_classname PROTO ((const char *name, int name_length));
extern tree parse_signature_string PROTO ((const unsigned char *, int));
extern tree get_type_from_signature PROTO ((tree));
extern void layout_class PROTO ((tree));
extern tree layout_class_method PROTO ((tree, tree, tree, tree));
extern void layout_class_methods PROTO ((tree));
extern tree build_class_ref PROTO ((tree));
extern tree build_dtable_decl PROTO ((tree));
extern tree build_internal_class_name PROTO ((tree));
extern tree build_constants_constructor PROTO ((void));
extern tree build_ref_from_constant_pool PROTO ((int));
extern tree build_utf8_ref PROTO ((tree));
extern tree ident_subst PROTO ((const char*, int,
extern void add_assume_compiled PARAMS ((const char *, int));
extern tree lookup_class PARAMS ((tree));
extern tree lookup_java_constructor PARAMS ((tree, tree));
extern tree lookup_java_method PARAMS ((tree, tree, tree));
extern tree lookup_argument_method PARAMS ((tree, tree, tree));
extern tree promote_type PARAMS ((tree));
extern tree get_constant PARAMS ((struct JCF*, int));
extern tree get_name_constant PARAMS ((struct JCF*, int));
extern tree get_class_constant PARAMS ((struct JCF*, int));
extern tree parse_signature PARAMS ((struct JCF *jcf, int sig_index));
extern void jcf_parse PARAMS ((struct JCF*));
extern tree add_field PARAMS ((tree, tree, tree, int));
extern tree add_method PARAMS ((tree, int, tree, tree));
extern tree add_method_1 PARAMS ((tree, int, tree, tree));
extern tree make_class PARAMS ((void));
extern tree push_class PARAMS ((tree, tree));
extern tree unmangle_classname PARAMS ((const char *name, int name_length));
extern tree parse_signature_string PARAMS ((const unsigned char *, int));
extern tree get_type_from_signature PARAMS ((tree));
extern void layout_class PARAMS ((tree));
extern tree layout_class_method PARAMS ((tree, tree, tree, tree));
extern void layout_class_methods PARAMS ((tree));
extern tree build_class_ref PARAMS ((tree));
extern tree build_dtable_decl PARAMS ((tree));
extern tree build_internal_class_name PARAMS ((tree));
extern tree build_constants_constructor PARAMS ((void));
extern tree build_ref_from_constant_pool PARAMS ((int));
extern tree build_utf8_ref PARAMS ((tree));
extern tree ident_subst PARAMS ((const char*, int,
const char*, int, int, const char*));
extern tree identifier_subst PROTO ((const tree,
extern tree identifier_subst PARAMS ((const tree,
const char *, int, int, const char *));
extern tree build_java_signature PROTO ((tree));
extern tree build_java_argument_signature PROTO ((tree));
extern void set_java_signature PROTO ((tree, tree));
extern tree build_static_field_ref PROTO ((tree));
extern tree build_address_of PROTO ((tree));
extern tree find_local_variable PROTO ((int index, tree type, int pc));
extern tree find_stack_slot PROTO ((int index, tree type));
extern tree build_prim_array_type PROTO ((tree, HOST_WIDE_INT));
extern tree build_java_array_type PROTO ((tree, HOST_WIDE_INT));
extern int is_compiled_class PROTO ((tree));
extern tree mangled_classname PROTO ((const char*, tree));
extern tree lookup_label PROTO ((int));
extern tree pop_type_0 PROTO ((tree));
extern tree pop_type PROTO ((tree));
extern void pop_argument_types PROTO ((tree));
extern tree decode_newarray_type PROTO ((int));
extern tree lookup_field PROTO ((tree*, tree));
extern int is_array_type_p PROTO ((tree));
extern HOST_WIDE_INT java_array_type_length PROTO ((tree));
extern int read_class PROTO ((tree));
extern void load_class PROTO ((tree, int));
extern tree build_java_signature PARAMS ((tree));
extern tree build_java_argument_signature PARAMS ((tree));
extern void set_java_signature PARAMS ((tree, tree));
extern tree build_static_field_ref PARAMS ((tree));
extern tree build_address_of PARAMS ((tree));
extern tree find_local_variable PARAMS ((int index, tree type, int pc));
extern tree find_stack_slot PARAMS ((int index, tree type));
extern tree build_prim_array_type PARAMS ((tree, HOST_WIDE_INT));
extern tree build_java_array_type PARAMS ((tree, HOST_WIDE_INT));
extern int is_compiled_class PARAMS ((tree));
extern tree mangled_classname PARAMS ((const char*, tree));
extern tree lookup_label PARAMS ((int));
extern tree pop_type_0 PARAMS ((tree));
extern tree pop_type PARAMS ((tree));
extern void pop_argument_types PARAMS ((tree));
extern tree decode_newarray_type PARAMS ((int));
extern tree lookup_field PARAMS ((tree*, tree));
extern int is_array_type_p PARAMS ((tree));
extern HOST_WIDE_INT java_array_type_length PARAMS ((tree));
extern int read_class PARAMS ((tree));
extern void load_class PARAMS ((tree, int));
extern tree lookup_name PROTO ((tree));
extern tree build_known_method_ref PROTO ((tree, tree, tree, tree, tree));
extern tree build_class_init PROTO ((tree, tree));
extern tree build_invokevirtual PROTO ((tree, tree));
extern tree build_invokeinterface PROTO ((tree, tree, tree));
extern tree invoke_build_dtable PROTO ((int, tree));
extern tree build_field_ref PROTO ((tree, tree, tree));
extern void pushdecl_force_head PROTO ((tree));
extern tree build_java_binop PROTO ((enum tree_code, tree, tree, tree));
extern tree build_java_soft_divmod PROTO ((enum tree_code, tree, tree, tree));
extern tree binary_numeric_promotion PROTO ((tree, tree, tree *, tree *));
extern tree build_java_arrayaccess PROTO ((tree, tree, tree));
extern tree build_newarray PROTO ((int, tree));
extern tree build_anewarray PROTO ((tree, tree));
extern tree build_new_array PROTO ((tree, tree));
extern tree build_java_array_length_access PROTO ((tree));
extern tree build_java_arraynull_check PROTO ((tree, tree, tree));
extern tree create_label_decl PROTO ((tree));
extern void push_labeled_block PROTO ((tree));
extern tree prepare_eh_table_type PROTO ((tree));
extern void java_set_exception_lang_code PROTO ((void));
extern tree generate_name PROTO ((void));
extern void pop_labeled_block PROTO ((void));
extern const char *lang_printable_name PROTO ((tree, int));
extern tree maybe_add_interface PROTO ((tree, tree));
extern void set_super_info PROTO ((int, tree, tree, int));
extern int get_access_flags_from_decl PROTO ((tree));
extern int interface_of_p PROTO ((tree, tree));
extern int inherits_from_p PROTO ((tree, tree));
extern void complete_start_java_method PROTO ((tree));
extern tree build_result_decl PROTO ((tree));
extern void emit_handlers PROTO ((void));
extern void init_outgoing_cpool PROTO ((void));
extern void make_class_data PROTO ((tree));
extern void register_class PROTO ((void));
extern int alloc_name_constant PROTO ((int, tree));
extern void emit_register_classes PROTO ((void));
extern void lang_init_source PROTO ((int));
extern void write_classfile PROTO ((tree));
extern char *print_int_node PROTO ((tree));
extern void parse_error_context PVPROTO ((tree cl, const char *, ...))
extern tree lookup_name PARAMS ((tree));
extern tree build_known_method_ref PARAMS ((tree, tree, tree, tree, tree));
extern tree build_class_init PARAMS ((tree, tree));
extern tree build_invokevirtual PARAMS ((tree, tree));
extern tree build_invokeinterface PARAMS ((tree, tree, tree));
extern tree invoke_build_dtable PARAMS ((int, tree));
extern tree build_field_ref PARAMS ((tree, tree, tree));
extern void pushdecl_force_head PARAMS ((tree));
extern tree build_java_binop PARAMS ((enum tree_code, tree, tree, tree));
extern tree build_java_soft_divmod PARAMS ((enum tree_code, tree, tree, tree));
extern tree binary_numeric_promotion PARAMS ((tree, tree, tree *, tree *));
extern tree build_java_arrayaccess PARAMS ((tree, tree, tree));
extern tree build_newarray PARAMS ((int, tree));
extern tree build_anewarray PARAMS ((tree, tree));
extern tree build_new_array PARAMS ((tree, tree));
extern tree build_java_array_length_access PARAMS ((tree));
extern tree build_java_arraynull_check PARAMS ((tree, tree, tree));
extern tree create_label_decl PARAMS ((tree));
extern void push_labeled_block PARAMS ((tree));
extern tree prepare_eh_table_type PARAMS ((tree));
extern void java_set_exception_lang_code PARAMS ((void));
extern tree generate_name PARAMS ((void));
extern void pop_labeled_block PARAMS ((void));
extern const char *lang_printable_name PARAMS ((tree, int));
extern tree maybe_add_interface PARAMS ((tree, tree));
extern void set_super_info PARAMS ((int, tree, tree, int));
extern int get_access_flags_from_decl PARAMS ((tree));
extern int interface_of_p PARAMS ((tree, tree));
extern int inherits_from_p PARAMS ((tree, tree));
extern void complete_start_java_method PARAMS ((tree));
extern tree build_result_decl PARAMS ((tree));
extern void emit_handlers PARAMS ((void));
extern void init_outgoing_cpool PARAMS ((void));
extern void make_class_data PARAMS ((tree));
extern void register_class PARAMS ((void));
extern int alloc_name_constant PARAMS ((int, tree));
extern void emit_register_classes PARAMS ((void));
extern void lang_init_source PARAMS ((int));
extern void write_classfile PARAMS ((tree));
extern char *print_int_node PARAMS ((tree));
extern void parse_error_context PARAMS ((tree cl, const char *, ...))
ATTRIBUTE_PRINTF_2;
extern tree build_primtype_type_ref PROTO ((const char *));
extern tree java_get_real_method_name PROTO ((tree));
extern void finish_class PROTO ((void));
extern void java_layout_seen_class_methods PROTO ((void));
extern void check_for_initialization PROTO ((tree));
extern tree build_primtype_type_ref PARAMS ((const char *));
extern tree java_get_real_method_name PARAMS ((tree));
extern void finish_class PARAMS ((void));
extern void java_layout_seen_class_methods PARAMS ((void));
extern void check_for_initialization PARAMS ((tree));
extern tree pushdecl_top_level PROTO ((tree));
extern int alloc_class_constant PROTO ((tree));
extern int unicode_mangling_length PROTO ((const char *, int));
extern void init_expr_processing PROTO ((void));
extern void push_super_field PROTO ((tree, tree));
extern void init_class_processing PROTO ((void));
extern int can_widen_reference_to PROTO ((tree, tree));
extern int class_depth PROTO ((tree));
extern int verify_jvm_instructions PROTO ((struct JCF *, const unsigned char *, long));
extern void maybe_pushlevels PROTO ((int));
extern void maybe_poplevels PROTO ((int));
extern int process_jvm_instruction PROTO ((int, const unsigned char *, long));
extern void set_local_type PROTO ((int, tree));
extern int merge_type_state PROTO ((tree));
extern void push_type PROTO ((tree));
extern void load_type_state PROTO ((tree));
extern void add_interface PROTO ((tree, tree));
extern void append_gpp_mangled_name PROTO ((struct obstack *, const char *, int));
extern void append_gpp_mangled_classtype PROTO ((struct obstack *, const char *));
extern void emit_unicode_mangled_name PROTO ((struct obstack *, const char *, int));
extern tree force_evaluation_order PROTO ((tree));
extern int verify_constant_pool PROTO ((struct JCF *));
extern void start_java_method PROTO ((tree));
extern void end_java_method PROTO ((void));
extern void give_name_to_locals PROTO ((struct JCF *));
extern void expand_byte_code PROTO ((struct JCF *, tree));
extern int open_in_zip PROTO ((struct JCF *, const char *, const char *, int));
extern void set_constant_value PROTO ((tree, tree));
extern tree pushdecl_top_level PARAMS ((tree));
extern int alloc_class_constant PARAMS ((tree));
extern int unicode_mangling_length PARAMS ((const char *, int));
extern void init_expr_processing PARAMS ((void));
extern void push_super_field PARAMS ((tree, tree));
extern void init_class_processing PARAMS ((void));
extern int can_widen_reference_to PARAMS ((tree, tree));
extern int class_depth PARAMS ((tree));
extern int verify_jvm_instructions PARAMS ((struct JCF *, const unsigned char *, long));
extern void maybe_pushlevels PARAMS ((int));
extern void maybe_poplevels PARAMS ((int));
extern int process_jvm_instruction PARAMS ((int, const unsigned char *, long));
extern void set_local_type PARAMS ((int, tree));
extern int merge_type_state PARAMS ((tree));
extern void push_type PARAMS ((tree));
extern void load_type_state PARAMS ((tree));
extern void add_interface PARAMS ((tree, tree));
extern void append_gpp_mangled_name PARAMS ((struct obstack *, const char *, int));
extern void append_gpp_mangled_classtype PARAMS ((struct obstack *, const char *));
extern void emit_unicode_mangled_name PARAMS ((struct obstack *, const char *, int));
extern tree force_evaluation_order PARAMS ((tree));
extern int verify_constant_pool PARAMS ((struct JCF *));
extern void start_java_method PARAMS ((tree));
extern void end_java_method PARAMS ((void));
extern void give_name_to_locals PARAMS ((struct JCF *));
extern void expand_byte_code PARAMS ((struct JCF *, tree));
extern int open_in_zip PARAMS ((struct JCF *, const char *, const char *, int));
extern void set_constant_value PARAMS ((tree, tree));
#ifdef jword
extern int find_constant1 PROTO ((struct CPool *, int, jword));
extern int find_constant2 PROTO ((struct CPool *, int, jword, jword));
extern int find_constant1 PARAMS ((struct CPool *, int, jword));
extern int find_constant2 PARAMS ((struct CPool *, int, jword, jword));
#endif
extern int find_utf8_constant PROTO ((struct CPool *, tree));
extern int find_string_constant PROTO ((struct CPool *, tree));
extern int find_class_constant PROTO ((struct CPool *, tree));
extern int find_fieldref_index PROTO ((struct CPool *, tree));
extern int find_methodref_index PROTO ((struct CPool *, tree));
extern void write_constant_pool PROTO ((struct CPool *, unsigned char *, int));
extern int count_constant_pool_bytes PROTO ((struct CPool *));
extern int encode_newarray_type PROTO ((tree));
extern int find_utf8_constant PARAMS ((struct CPool *, tree));
extern int find_string_constant PARAMS ((struct CPool *, tree));
extern int find_class_constant PARAMS ((struct CPool *, tree));
extern int find_fieldref_index PARAMS ((struct CPool *, tree));
extern int find_methodref_index PARAMS ((struct CPool *, tree));
extern void write_constant_pool PARAMS ((struct CPool *, unsigned char *, int));
extern int count_constant_pool_bytes PARAMS ((struct CPool *));
extern int encode_newarray_type PARAMS ((tree));
#ifdef uint64
extern void format_int PROTO ((char *, jlong, int));
extern void format_uint PROTO ((char *, uint64, int));
extern void format_int PARAMS ((char *, jlong, int));
extern void format_uint PARAMS ((char *, uint64, int));
#endif
extern void jcf_trim_old_input PROTO ((struct JCF *));
extern void jcf_trim_old_input PARAMS ((struct JCF *));
#ifdef BUFSIZ
extern void jcf_print_utf8 PROTO ((FILE *, const unsigned char *, int));
extern void jcf_print_char PROTO ((FILE *, int));
extern void jcf_print_utf8_replace PROTO ((FILE *, const unsigned char *,
extern void jcf_print_utf8 PARAMS ((FILE *, const unsigned char *, int));
extern void jcf_print_char PARAMS ((FILE *, int));
extern void jcf_print_utf8_replace PARAMS ((FILE *, const unsigned char *,
int, int, int));
# if JCF_USE_STDIO
extern char* open_class PROTO ((char *, struct JCF *, FILE *, const char *));
extern char* open_class PARAMS ((char *, struct JCF *, FILE *, const char *));
# else
extern char* open_class PROTO ((char *, struct JCF *, int, const char *));
extern char* open_class PARAMS ((char *, struct JCF *, int, const char *));
# endif /* JCF_USE_STDIO */
#endif
void java_debug_context PROTO ((void));
void java_debug_context PARAMS ((void));
/* We use ARGS_SIZE_RTX to indicate that gcc/expr.h has been included
to declare `enum expand_modifier'. */
#if defined (TREE_CODE) && defined(RTX_CODE) && defined (HAVE_MACHINE_MODES) && defined (ARGS_SIZE_RTX)
struct rtx_def * java_lang_expand_expr PROTO ((tree, rtx, enum machine_mode,
struct rtx_def * java_lang_expand_expr PARAMS ((tree, rtx, enum machine_mode,
enum expand_modifier));
#endif /* TREE_CODE && RTX_CODE && HAVE_MACHINE_MODES && ARGS_SIZE_RTX */

View File

@ -1,6 +1,6 @@
/* Functions for handling dependency tracking when reading .class files.
Copyright (C) 1998 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -39,10 +39,10 @@ struct entry
struct entry *next;
};
static void free_entry PROTO ((struct entry **));
static void add_entry PROTO ((struct entry **, const char *));
static const char *munge PROTO ((const char *));
static int print_ents PROTO ((struct entry *, int));
static void free_entry PARAMS ((struct entry **));
static void add_entry PARAMS ((struct entry **, const char *));
static const char *munge PARAMS ((const char *));
static int print_ents PARAMS ((struct entry *, int));
/* List of files. */
static struct entry *dependencies = NULL;

View File

@ -1,7 +1,7 @@
/* Program to dump out a Java(TM) .class file.
Functionally similar to Sun's javap.
Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -78,18 +78,18 @@ int class_access_flags = 0;
/* Print in format similar to javap. VERY IMCOMPLETE. */
int flag_javap_compatible = 0;
static void print_access_flags PROTO ((FILE *, uint16, char));
static void print_constant_terse PROTO ((FILE*, JCF*, int, int));
static void print_constant PROTO ((FILE *, JCF *, int, int));
static void print_constant_ref PROTO ((FILE *, JCF *, int));
static void disassemble_method PROTO ((JCF*, const unsigned char *, int));
static void print_name PROTO ((FILE*, JCF*, int));
static void print_signature PROTO ((FILE*, JCF*, int, int));
static int utf8_equal_string PROTO ((struct JCF*, int, const char *));
static int usage PROTO ((void)) ATTRIBUTE_NORETURN;
static void process_class PROTO ((struct JCF *));
static void print_constant_pool PROTO ((struct JCF *));
static void print_exception_table PROTO ((struct JCF *,
static void print_access_flags PARAMS ((FILE *, uint16, char));
static void print_constant_terse PARAMS ((FILE*, JCF*, int, int));
static void print_constant PARAMS ((FILE *, JCF *, int, int));
static void print_constant_ref PARAMS ((FILE *, JCF *, int));
static void disassemble_method PARAMS ((JCF*, const unsigned char *, int));
static void print_name PARAMS ((FILE*, JCF*, int));
static void print_signature PARAMS ((FILE*, JCF*, int, int));
static int utf8_equal_string PARAMS ((struct JCF*, int, const char *));
static int usage PARAMS ((void)) ATTRIBUTE_NORETURN;
static void process_class PARAMS ((struct JCF *));
static void print_constant_pool PARAMS ((struct JCF *));
static void print_exception_table PARAMS ((struct JCF *,
const unsigned char *entries, int));
#define PRINT_SIGNATURE_RESULT_ONLY 1

View File

@ -1,5 +1,5 @@
/* Parser for Java(TM) .class files.
Copyright (C) 1996, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1996, 1998, 1999, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -76,16 +76,16 @@ static tree current_method = NULL_TREE;
static struct JCF main_jcf[1];
/* Declarations of some functions used here. */
static tree give_name_to_class PROTO ((JCF *jcf, int index));
static void parse_zip_file_entries PROTO ((void));
static void process_zip_dir PROTO ((void));
static void parse_source_file PROTO ((tree));
static void jcf_parse_source PROTO ((void));
static int jcf_figure_file_type PROTO ((JCF *));
static int find_in_current_zip PROTO ((const char *, struct JCF **));
static void parse_class_file PROTO ((void));
static void set_source_filename PROTO ((JCF *, int));
static int predefined_filename_p PROTO ((tree));
static tree give_name_to_class PARAMS ((JCF *jcf, int index));
static void parse_zip_file_entries PARAMS ((void));
static void process_zip_dir PARAMS ((void));
static void parse_source_file PARAMS ((tree));
static void jcf_parse_source PARAMS ((void));
static int jcf_figure_file_type PARAMS ((JCF *));
static int find_in_current_zip PARAMS ((const char *, struct JCF **));
static void parse_class_file PARAMS ((void));
static void set_source_filename PARAMS ((JCF *, int));
static int predefined_filename_p PARAMS ((tree));
/* Handle "SourceFile" attribute. */

View File

@ -1,6 +1,6 @@
/* Handle CLASSPATH, -classpath, and path searching.
Copyright (C) 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -53,10 +53,10 @@ struct entry
struct entry *next;
};
static void free_entry PROTO ((struct entry **));
static void append_entry PROTO ((struct entry **, struct entry *));
static void add_entry PROTO ((struct entry **, const char *, int));
static void add_path PROTO ((struct entry **, const char *, int));
static void free_entry PARAMS ((struct entry **));
static void append_entry PARAMS ((struct entry **, struct entry *));
static void add_entry PARAMS ((struct entry **, const char *, int));
static void add_path PARAMS ((struct entry **, const char *, int));
/* We support several different ways to set the class path.

View File

@ -2,7 +2,7 @@
It is not stand-alone: It depends on tons of macros, and the
intent is you #include this file after you've defined the macros.
Copyright (C) 1996 Free Software Foundation, Inc.
Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -26,14 +26,14 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "jcf.h"
#include "zipfile.h"
static int get_attribute PROTO((JCF *));
static int jcf_parse_preamble PROTO((JCF *));
static int jcf_parse_constant_pool PROTO((JCF *));
static void jcf_parse_class PROTO((JCF *));
static int jcf_parse_fields PROTO((JCF *));
static int jcf_parse_one_method PROTO((JCF *));
static int jcf_parse_methods PROTO((JCF *));
static int jcf_parse_final_attributes PROTO((JCF *));
static int get_attribute PARAMS ((JCF *));
static int jcf_parse_preamble PARAMS ((JCF *));
static int jcf_parse_constant_pool PARAMS ((JCF *));
static void jcf_parse_class PARAMS ((JCF *));
static int jcf_parse_fields PARAMS ((JCF *));
static int jcf_parse_one_method PARAMS ((JCF *));
static int jcf_parse_methods PARAMS ((JCF *));
static int jcf_parse_final_attributes PARAMS ((JCF *));
static int
DEFUN(get_attribute, (jcf),

View File

@ -1,5 +1,5 @@
/* Write out a Java(TM) class file.
Copyright (C) 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -271,70 +271,70 @@ struct jcf_partial
struct jcf_switch_state *sw_state;
};
static void generate_bytecode_insns PROTO ((tree, int, struct jcf_partial *));
static struct chunk * alloc_chunk PROTO ((struct chunk *, unsigned char *,
static void generate_bytecode_insns PARAMS ((tree, int, struct jcf_partial *));
static struct chunk * alloc_chunk PARAMS ((struct chunk *, unsigned char *,
int, struct obstack *));
static unsigned char * append_chunk PROTO ((unsigned char *, int,
static unsigned char * append_chunk PARAMS ((unsigned char *, int,
struct jcf_partial *));
static void append_chunk_copy PROTO ((unsigned char *, int,
static void append_chunk_copy PARAMS ((unsigned char *, int,
struct jcf_partial *));
static struct jcf_block * gen_jcf_label PROTO ((struct jcf_partial *));
static void finish_jcf_block PROTO ((struct jcf_partial *));
static void define_jcf_label PROTO ((struct jcf_block *,
static struct jcf_block * gen_jcf_label PARAMS ((struct jcf_partial *));
static void finish_jcf_block PARAMS ((struct jcf_partial *));
static void define_jcf_label PARAMS ((struct jcf_block *,
struct jcf_partial *));
static struct jcf_block * get_jcf_label_here PROTO ((struct jcf_partial *));
static void put_linenumber PROTO ((int, struct jcf_partial *));
static void localvar_alloc PROTO ((tree, struct jcf_partial *));
static void localvar_free PROTO ((tree, struct jcf_partial *));
static int get_access_flags PROTO ((tree));
static void write_chunks PROTO ((FILE *, struct chunk *));
static int adjust_typed_op PROTO ((tree, int));
static void generate_bytecode_conditional PROTO ((tree, struct jcf_block *,
static struct jcf_block * get_jcf_label_here PARAMS ((struct jcf_partial *));
static void put_linenumber PARAMS ((int, struct jcf_partial *));
static void localvar_alloc PARAMS ((tree, struct jcf_partial *));
static void localvar_free PARAMS ((tree, struct jcf_partial *));
static int get_access_flags PARAMS ((tree));
static void write_chunks PARAMS ((FILE *, struct chunk *));
static int adjust_typed_op PARAMS ((tree, int));
static void generate_bytecode_conditional PARAMS ((tree, struct jcf_block *,
struct jcf_block *, int,
struct jcf_partial *));
static void generate_bytecode_return PROTO ((tree, struct jcf_partial *));
static void perform_relocations PROTO ((struct jcf_partial *));
static void init_jcf_state PROTO ((struct jcf_partial *, struct obstack *));
static void init_jcf_method PROTO ((struct jcf_partial *, tree));
static void release_jcf_state PROTO ((struct jcf_partial *));
static struct chunk * generate_classfile PROTO ((tree, struct jcf_partial *));
static struct jcf_handler *alloc_handler PROTO ((struct jcf_block *,
static void generate_bytecode_return PARAMS ((tree, struct jcf_partial *));
static void perform_relocations PARAMS ((struct jcf_partial *));
static void init_jcf_state PARAMS ((struct jcf_partial *, struct obstack *));
static void init_jcf_method PARAMS ((struct jcf_partial *, tree));
static void release_jcf_state PARAMS ((struct jcf_partial *));
static struct chunk * generate_classfile PARAMS ((tree, struct jcf_partial *));
static struct jcf_handler *alloc_handler PARAMS ((struct jcf_block *,
struct jcf_block *,
struct jcf_partial *));
static void emit_iinc PROTO ((tree, HOST_WIDE_INT, struct jcf_partial *));
static void emit_reloc PROTO ((HOST_WIDE_INT, int, struct jcf_block *,
static void emit_iinc PARAMS ((tree, HOST_WIDE_INT, struct jcf_partial *));
static void emit_reloc PARAMS ((HOST_WIDE_INT, int, struct jcf_block *,
struct jcf_partial *));
static void push_constant1 PROTO ((HOST_WIDE_INT, struct jcf_partial *));
static void push_constant2 PROTO ((HOST_WIDE_INT, struct jcf_partial *));
static void push_int_const PROTO ((HOST_WIDE_INT, struct jcf_partial *));
static int find_constant_wide PROTO ((HOST_WIDE_INT, HOST_WIDE_INT,
static void push_constant1 PARAMS ((HOST_WIDE_INT, struct jcf_partial *));
static void push_constant2 PARAMS ((HOST_WIDE_INT, struct jcf_partial *));
static void push_int_const PARAMS ((HOST_WIDE_INT, struct jcf_partial *));
static int find_constant_wide PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT,
struct jcf_partial *));
static void push_long_const PROTO ((HOST_WIDE_INT, HOST_WIDE_INT,
static void push_long_const PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT,
struct jcf_partial *));
static int find_constant_index PROTO ((tree, struct jcf_partial *));
static void push_long_const PROTO ((HOST_WIDE_INT, HOST_WIDE_INT,
static int find_constant_index PARAMS ((tree, struct jcf_partial *));
static void push_long_const PARAMS ((HOST_WIDE_INT, HOST_WIDE_INT,
struct jcf_partial *));
static void field_op PROTO ((tree, int, struct jcf_partial *));
static void maybe_wide PROTO ((int, int, struct jcf_partial *));
static void emit_dup PROTO ((int, int, struct jcf_partial *));
static void emit_pop PROTO ((int, struct jcf_partial *));
static void emit_load_or_store PROTO ((tree, int, struct jcf_partial *));
static void emit_load PROTO ((tree, struct jcf_partial *));
static void emit_store PROTO ((tree, struct jcf_partial *));
static void emit_unop PROTO ((enum java_opcode, tree, struct jcf_partial *));
static void emit_binop PROTO ((enum java_opcode, tree, struct jcf_partial *));
static void emit_reloc PROTO ((HOST_WIDE_INT, int, struct jcf_block *,
static void field_op PARAMS ((tree, int, struct jcf_partial *));
static void maybe_wide PARAMS ((int, int, struct jcf_partial *));
static void emit_dup PARAMS ((int, int, struct jcf_partial *));
static void emit_pop PARAMS ((int, struct jcf_partial *));
static void emit_load_or_store PARAMS ((tree, int, struct jcf_partial *));
static void emit_load PARAMS ((tree, struct jcf_partial *));
static void emit_store PARAMS ((tree, struct jcf_partial *));
static void emit_unop PARAMS ((enum java_opcode, tree, struct jcf_partial *));
static void emit_binop PARAMS ((enum java_opcode, tree, struct jcf_partial *));
static void emit_reloc PARAMS ((HOST_WIDE_INT, int, struct jcf_block *,
struct jcf_partial *));
static void emit_switch_reloc PROTO ((struct jcf_block *,
static void emit_switch_reloc PARAMS ((struct jcf_block *,
struct jcf_partial *));
static void emit_case_reloc PROTO ((struct jcf_relocation *,
static void emit_case_reloc PARAMS ((struct jcf_relocation *,
struct jcf_partial *));
static void emit_if PROTO ((struct jcf_block *, int, int,
static void emit_if PARAMS ((struct jcf_block *, int, int,
struct jcf_partial *));
static void emit_goto PROTO ((struct jcf_block *, struct jcf_partial *));
static void emit_jsr PROTO ((struct jcf_block *, struct jcf_partial *));
static void call_cleanups PROTO ((struct jcf_block *, struct jcf_partial *));
static char *make_class_file_name PROTO ((tree));
static void emit_goto PARAMS ((struct jcf_block *, struct jcf_partial *));
static void emit_jsr PARAMS ((struct jcf_block *, struct jcf_partial *));
static void call_cleanups PARAMS ((struct jcf_block *, struct jcf_partial *));
static char *make_class_file_name PARAMS ((tree));
/* Utility macros for appending (big-endian) data to a buffer.
We assume a local variable 'ptr' points into where we want to

View File

@ -1,6 +1,6 @@
/* Utility macros to read Java(TM) .class files and byte codes.
Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc.
Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -38,11 +38,11 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#endif
#endif /* !DEFUN */
#ifndef PROTO
#ifndef PARAMS
#if defined (__STDC__)
#define PROTO(paramlist) paramlist
#define PARAMS (paramlist) paramlist
#else
#define PROTO(paramlist) ()
#define PARAMS (paramlist) ()
#endif
#endif
@ -68,7 +68,7 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#define JCF_SOURCE 3
struct JCF;
typedef int (*jcf_filbuf_t) PROTO ((struct JCF*, int needed));
typedef int (*jcf_filbuf_t) PARAMS ((struct JCF*, int needed));
typedef struct CPool {
/* Available number of elements in the constants array, before it
@ -221,10 +221,10 @@ typedef struct JCF {
#define DEFAULT_CLASS_PATH "."
extern const char *find_class PROTO ((const char *, int, JCF*, int));
extern const char *find_classfile PROTO ((char *, JCF*, const char *));
extern int jcf_filbuf_from_stdio PROTO ((JCF *jcf, int count));
extern int jcf_unexpected_eof PROTO ((JCF*, int)) ATTRIBUTE_NORETURN;
extern const char *find_class PARAMS ((const char *, int, JCF*, int));
extern const char *find_classfile PARAMS ((char *, JCF*, const char *));
extern int jcf_filbuf_from_stdio PARAMS ((JCF *jcf, int count));
extern int jcf_unexpected_eof PARAMS ((JCF*, int)) ATTRIBUTE_NORETURN;
/* Extract a character from a Java-style Utf8 string.
* PTR points to the current character.
@ -255,25 +255,25 @@ extern int quiet_flag;
#endif
/* Declarations for dependency code. */
extern void jcf_dependency_reset PROTO ((void));
extern void jcf_dependency_set_target PROTO ((const char *));
extern void jcf_dependency_add_target PROTO ((const char *));
extern void jcf_dependency_set_dep_file PROTO ((const char *));
extern void jcf_dependency_add_file PROTO ((const char *, int));
extern void jcf_dependency_write PROTO ((void));
extern void jcf_dependency_init PROTO ((int));
extern void jcf_dependency_reset PARAMS ((void));
extern void jcf_dependency_set_target PARAMS ((const char *));
extern void jcf_dependency_add_target PARAMS ((const char *));
extern void jcf_dependency_set_dep_file PARAMS ((const char *));
extern void jcf_dependency_add_file PARAMS ((const char *, int));
extern void jcf_dependency_write PARAMS ((void));
extern void jcf_dependency_init PARAMS ((int));
/* Declarations for path handling code. */
extern void jcf_path_init PROTO ((void));
extern void jcf_path_classpath_arg PROTO ((const char *));
extern void jcf_path_CLASSPATH_arg PROTO ((const char *));
extern void jcf_path_include_arg PROTO ((const char *));
extern void jcf_path_seal PROTO ((void));
extern void *jcf_path_start PROTO ((void));
extern void *jcf_path_next PROTO ((void *));
extern char *jcf_path_name PROTO ((void *));
extern int jcf_path_is_zipfile PROTO ((void *));
extern int jcf_path_is_system PROTO ((void *));
extern int jcf_path_max_len PROTO ((void));
extern void jcf_path_init PARAMS ((void));
extern void jcf_path_classpath_arg PARAMS ((const char *));
extern void jcf_path_CLASSPATH_arg PARAMS ((const char *));
extern void jcf_path_include_arg PARAMS ((const char *));
extern void jcf_path_seal PARAMS ((void));
extern void *jcf_path_start PARAMS ((void));
extern void *jcf_path_next PARAMS ((void *));
extern char *jcf_path_name PARAMS ((void *));
extern int jcf_path_is_zipfile PARAMS ((void *));
extern int jcf_path_is_system PARAMS ((void *));
extern int jcf_path_max_len PARAMS ((void));
#endif

View File

@ -1,5 +1,5 @@
/* Main for jv-scan
Copyright (C) 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com)
This file is part of GNU CC.
@ -24,9 +24,9 @@ Boston, MA 02111-1307, USA. */
#include "obstack.h" /* We use obstacks in lex.c */
void fatal VPROTO((const char *s, ...)) ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN;
void warning VPROTO((const char *s, ...)) ATTRIBUTE_PRINTF_1;
void gcc_obstack_init PROTO ((struct obstack *obstack));
void fatal PARAMS ((const char *s, ...)) ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN;
void warning PARAMS ((const char *s, ...)) ATTRIBUTE_PRINTF_1;
void gcc_obstack_init PARAMS ((struct obstack *obstack));
#define JC1_LITE
#include "jcf.h"
@ -140,7 +140,7 @@ DEFUN (main, (argc, argv),
functions */
void
fatal VPROTO((const char *s, ...))
fatal VPARAMS ((const char *s, ...))
{
#ifndef ANSI_PROTOTYPES
const char *s;
@ -161,7 +161,7 @@ fatal VPROTO((const char *s, ...))
}
void
warning VPROTO((const char *s, ...))
warning VPARAMS ((const char *s, ...))
{
#ifndef ANSI_PROTOTYPES
const char *s;

View File

@ -1,5 +1,5 @@
/* Program to generate "main" a Java(TM) class containing a main method.
Copyright (C) 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -38,11 +38,11 @@ const char class_mangling_prefix[] = "_CL_";
struct obstack name_obstack;
extern void error PVPROTO ((const char *, ...))
extern void error PARAMS ((const char *, ...))
ATTRIBUTE_PRINTF_1;
void
error VPROTO((const char *msgid, ...))
error VPARAMS ((const char *msgid, ...))
{
#ifndef ANSI_PROTOTYPES
const char *msgid;
@ -75,8 +75,8 @@ gcc_obstack_init (obstack)
#define OBSTACK_CHUNK_FREE free
#endif
_obstack_begin (obstack, OBSTACK_CHUNK_SIZE, 0,
(void *(*) PROTO((long))) OBSTACK_CHUNK_ALLOC,
(void (*) PROTO((void *))) OBSTACK_CHUNK_FREE);
(void *(*) PARAMS ((long))) OBSTACK_CHUNK_ALLOC,
(void (*) PARAMS ((void *))) OBSTACK_CHUNK_FREE);
}
static void usage (const char *) ATTRIBUTE_NORETURN;

View File

@ -1,6 +1,6 @@
/* Specific flags and argument handling of the front-end of the
GNU compiler for the Java(TM) language.
Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -39,7 +39,7 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
/* True if this arg is a .class input file name. */
#define CLASS_FILE_ARG (1<<4)
static char *find_spec_file PROTO ((const char *));
static char *find_spec_file PARAMS ((const char *));
static const char *main_class_name = NULL;
int lang_specific_extra_outfiles = 0;

View File

@ -1,5 +1,5 @@
/* Java(TM) language-specific utility routines.
Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc.
Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -36,10 +36,10 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "flags.h"
#include "xref.h"
static void put_decl_string PROTO ((const char *, int));
static void put_decl_node PROTO ((tree));
static void java_dummy_print PROTO ((const char *));
static void lang_print_error PROTO ((const char *));
static void put_decl_string PARAMS ((const char *, int));
static void put_decl_node PARAMS ((tree));
static void java_dummy_print PARAMS ((const char *));
static void lang_print_error PARAMS ((const char *));
#ifndef OBJECT_SUFFIX
# define OBJECT_SUFFIX ".o"

View File

@ -1,5 +1,5 @@
/* Language lexer for the GNU compiler for the Java(TM) language.
Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com)
This file is part of GNU CC.
@ -41,26 +41,26 @@ extern struct obstack *expression_obstack;
#endif
/* Function declaration */
static int java_lineterminator PROTO ((unicode_t));
static char *java_sprint_unicode PROTO ((struct java_line *, int));
static void java_unicode_2_utf8 PROTO ((unicode_t));
static void java_lex_error PROTO ((const char *, int));
static int java_lineterminator PARAMS ((unicode_t));
static char *java_sprint_unicode PARAMS ((struct java_line *, int));
static void java_unicode_2_utf8 PARAMS ((unicode_t));
static void java_lex_error PARAMS ((const char *, int));
#ifndef JC1_LITE
static int java_is_eol PROTO ((FILE *, int));
static tree build_wfl_node PROTO ((tree));
static int java_is_eol PARAMS ((FILE *, int));
static tree build_wfl_node PARAMS ((tree));
#endif
static void java_store_unicode PROTO ((struct java_line *, unicode_t, int));
static unicode_t java_parse_escape_sequence PROTO ((void));
static int java_letter_or_digit_p PROTO ((unicode_t));
static int java_parse_doc_section PROTO ((unicode_t));
static void java_parse_end_comment PROTO ((unicode_t));
static unicode_t java_get_unicode PROTO ((void));
static unicode_t java_read_unicode PROTO ((int, int *));
static void java_store_unicode PROTO ((struct java_line *, unicode_t, int));
static unicode_t java_read_char PROTO ((void));
static void java_allocate_new_line PROTO ((void));
static void java_unget_unicode PROTO ((void));
static unicode_t java_sneak_unicode PROTO ((void));
static void java_store_unicode PARAMS ((struct java_line *, unicode_t, int));
static unicode_t java_parse_escape_sequence PARAMS ((void));
static int java_letter_or_digit_p PARAMS ((unicode_t));
static int java_parse_doc_section PARAMS ((unicode_t));
static void java_parse_end_comment PARAMS ((unicode_t));
static unicode_t java_get_unicode PARAMS ((void));
static unicode_t java_read_unicode PARAMS ((int, int *));
static void java_store_unicode PARAMS ((struct java_line *, unicode_t, int));
static unicode_t java_read_char PARAMS ((void));
static void java_allocate_new_line PARAMS ((void));
static void java_unget_unicode PARAMS ((void));
static unicode_t java_sneak_unicode PARAMS ((void));
void
java_init_lex ()

View File

@ -1,5 +1,5 @@
/* Language lexer definitions for the GNU compiler for the Java(TM) language.
Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com)
This file is part of GNU CC.
@ -132,7 +132,7 @@ typedef struct _java_lc {
#else
extern void set_float_handler PROTO((jmp_buf));
extern void set_float_handler PARAMS ((jmp_buf));
#define SET_FLOAT_HANDLER(H) set_float_handler ((H))
#define DCONST0 dconst0
#define GET_IDENTIFIER(S) get_identifier ((S))

View File

@ -170,8 +170,8 @@ struct method_declarator {
}
/* Two actions for this grammar */
static void report_class_declaration PROTO ((const char *));
static void report_main_declaration PROTO ((struct method_declarator *));
static void report_class_declaration PARAMS ((const char *));
static void report_main_declaration PARAMS ((struct method_declarator *));
#include "lex.h"
#include "parse.h"

View File

@ -1,5 +1,5 @@
/* Parser grammar for quick source code scan of Java(TM) language programs.
Copyright (C) 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com)
This file is part of GNU CC.
@ -90,8 +90,8 @@ struct method_declarator {
}
/* Two actions for this grammar */
static void report_class_declaration PROTO ((const char *));
static void report_main_declaration PROTO ((struct method_declarator *));
static void report_class_declaration PARAMS ((const char *));
static void report_main_declaration PARAMS ((struct method_declarator *));
#include "lex.h"
#include "parse.h"

View File

@ -143,202 +143,202 @@
#include "defaults.h"
/* Local function prototypes */
static char *java_accstring_lookup PROTO ((int));
static void classitf_redefinition_error PROTO ((const char *,tree, tree, tree));
static void variable_redefinition_error PROTO ((tree, tree, tree, int));
static void check_modifiers PROTO ((const char *, int, int));
static tree create_class PROTO ((int, tree, tree, tree));
static tree create_interface PROTO ((int, tree, tree));
static tree find_field PROTO ((tree, tree));
static tree lookup_field_wrapper PROTO ((tree, tree));
static int duplicate_declaration_error_p PROTO ((tree, tree, tree));
static void register_fields PROTO ((int, tree, tree));
static tree parser_qualified_classname PROTO ((tree));
static int parser_check_super PROTO ((tree, tree, tree));
static int parser_check_super_interface PROTO ((tree, tree, tree));
static void check_modifiers_consistency PROTO ((int));
static tree lookup_cl PROTO ((tree));
static tree lookup_java_method2 PROTO ((tree, tree, int));
static tree method_header PROTO ((int, tree, tree, tree));
static void fix_method_argument_names PROTO ((tree ,tree));
static tree method_declarator PROTO ((tree, tree));
static void parse_warning_context PVPROTO ((tree cl, const char *msg, ...))
static char *java_accstring_lookup PARAMS ((int));
static void classitf_redefinition_error PARAMS ((const char *,tree, tree, tree));
static void variable_redefinition_error PARAMS ((tree, tree, tree, int));
static void check_modifiers PARAMS ((const char *, int, int));
static tree create_class PARAMS ((int, tree, tree, tree));
static tree create_interface PARAMS ((int, tree, tree));
static tree find_field PARAMS ((tree, tree));
static tree lookup_field_wrapper PARAMS ((tree, tree));
static int duplicate_declaration_error_p PARAMS ((tree, tree, tree));
static void register_fields PARAMS ((int, tree, tree));
static tree parser_qualified_classname PARAMS ((tree));
static int parser_check_super PARAMS ((tree, tree, tree));
static int parser_check_super_interface PARAMS ((tree, tree, tree));
static void check_modifiers_consistency PARAMS ((int));
static tree lookup_cl PARAMS ((tree));
static tree lookup_java_method2 PARAMS ((tree, tree, int));
static tree method_header PARAMS ((int, tree, tree, tree));
static void fix_method_argument_names PARAMS ((tree ,tree));
static tree method_declarator PARAMS ((tree, tree));
static void parse_warning_context PARAMS ((tree cl, const char *msg, ...))
ATTRIBUTE_PRINTF_2;
static void issue_warning_error_from_context PROTO ((tree, const char *msg, va_list));
static void parse_ctor_invocation_error PROTO ((void));
static tree parse_jdk1_1_error PROTO ((const char *));
static void complete_class_report_errors PROTO ((jdep *));
static int process_imports PROTO ((void));
static void read_import_dir PROTO ((tree));
static int find_in_imports_on_demand PROTO ((tree));
static int find_in_imports PROTO ((tree));
static int check_pkg_class_access PROTO ((tree, tree));
static tree resolve_package PROTO ((tree, tree *));
static tree lookup_package_type PROTO ((const char *, int));
static tree lookup_package_type_and_set_next PROTO ((const char *, int, tree *));
static tree resolve_class PROTO ((tree, tree, tree));
static void declare_local_variables PROTO ((int, tree, tree));
static void source_start_java_method PROTO ((tree));
static void source_end_java_method PROTO ((void));
static void expand_start_java_method PROTO ((tree));
static tree find_name_in_single_imports PROTO ((tree));
static void check_abstract_method_header PROTO ((tree));
static tree lookup_java_interface_method2 PROTO ((tree, tree));
static tree resolve_expression_name PROTO ((tree, tree *));
static tree maybe_create_class_interface_decl PROTO ((tree, tree, tree));
static int check_class_interface_creation PROTO ((int, int, tree,
static void issue_warning_error_from_context PARAMS ((tree, const char *msg, va_list));
static void parse_ctor_invocation_error PARAMS ((void));
static tree parse_jdk1_1_error PARAMS ((const char *));
static void complete_class_report_errors PARAMS ((jdep *));
static int process_imports PARAMS ((void));
static void read_import_dir PARAMS ((tree));
static int find_in_imports_on_demand PARAMS ((tree));
static int find_in_imports PARAMS ((tree));
static int check_pkg_class_access PARAMS ((tree, tree));
static tree resolve_package PARAMS ((tree, tree *));
static tree lookup_package_type PARAMS ((const char *, int));
static tree lookup_package_type_and_set_next PARAMS ((const char *, int, tree *));
static tree resolve_class PARAMS ((tree, tree, tree));
static void declare_local_variables PARAMS ((int, tree, tree));
static void source_start_java_method PARAMS ((tree));
static void source_end_java_method PARAMS ((void));
static void expand_start_java_method PARAMS ((tree));
static tree find_name_in_single_imports PARAMS ((tree));
static void check_abstract_method_header PARAMS ((tree));
static tree lookup_java_interface_method2 PARAMS ((tree, tree));
static tree resolve_expression_name PARAMS ((tree, tree *));
static tree maybe_create_class_interface_decl PARAMS ((tree, tree, tree));
static int check_class_interface_creation PARAMS ((int, int, tree,
tree, tree, tree));
static tree patch_method_invocation PROTO ((tree, tree, tree,
static tree patch_method_invocation PARAMS ((tree, tree, tree,
int *, tree *));
static int breakdown_qualified PROTO ((tree *, tree *, tree));
static tree resolve_and_layout PROTO ((tree, tree));
static tree resolve_no_layout PROTO ((tree, tree));
static int invocation_mode PROTO ((tree, int));
static tree find_applicable_accessible_methods_list PROTO ((int, tree,
static int breakdown_qualified PARAMS ((tree *, tree *, tree));
static tree resolve_and_layout PARAMS ((tree, tree));
static tree resolve_no_layout PARAMS ((tree, tree));
static int invocation_mode PARAMS ((tree, int));
static tree find_applicable_accessible_methods_list PARAMS ((int, tree,
tree, tree));
static void search_applicable_methods_list PROTO ((int, tree, tree, tree,
static void search_applicable_methods_list PARAMS ((int, tree, tree, tree,
tree *, tree *));
static tree find_most_specific_methods_list PROTO ((tree));
static int argument_types_convertible PROTO ((tree, tree));
static tree patch_invoke PROTO ((tree, tree, tree));
static tree lookup_method_invoke PROTO ((int, tree, tree, tree, tree));
static tree register_incomplete_type PROTO ((int, tree, tree, tree));
static tree obtain_incomplete_type PROTO ((tree));
static tree java_complete_lhs PROTO ((tree));
static tree java_complete_tree PROTO ((tree));
static int java_pre_expand_clinit PROTO ((tree));
static void java_complete_expand_method PROTO ((tree));
static int unresolved_type_p PROTO ((tree, tree *));
static void create_jdep_list PROTO ((struct parser_ctxt *));
static tree build_expr_block PROTO ((tree, tree));
static tree enter_block PROTO ((void));
static tree enter_a_block PROTO ((tree));
static tree exit_block PROTO ((void));
static tree lookup_name_in_blocks PROTO ((tree));
static void maybe_absorb_scoping_blocks PROTO ((void));
static tree build_method_invocation PROTO ((tree, tree));
static tree build_new_invocation PROTO ((tree, tree));
static tree build_assignment PROTO ((int, int, tree, tree));
static tree build_binop PROTO ((enum tree_code, int, tree, tree));
static int check_final_assignment PROTO ((tree ,tree));
static tree patch_assignment PROTO ((tree, tree, tree ));
static tree patch_binop PROTO ((tree, tree, tree));
static tree build_unaryop PROTO ((int, int, tree));
static tree build_incdec PROTO ((int, int, tree, int));
static tree patch_unaryop PROTO ((tree, tree));
static tree build_cast PROTO ((int, tree, tree));
static tree build_null_of_type PROTO ((tree));
static tree patch_cast PROTO ((tree, tree));
static int valid_ref_assignconv_cast_p PROTO ((tree, tree, int));
static int valid_builtin_assignconv_identity_widening_p PROTO ((tree, tree));
static int valid_cast_to_p PROTO ((tree, tree));
static int valid_method_invocation_conversion_p PROTO ((tree, tree));
static tree try_builtin_assignconv PROTO ((tree, tree, tree));
static tree try_reference_assignconv PROTO ((tree, tree));
static tree build_unresolved_array_type PROTO ((tree));
static tree build_array_from_name PROTO ((tree, tree, tree, tree *));
static tree build_array_ref PROTO ((int, tree, tree));
static tree patch_array_ref PROTO ((tree));
static tree make_qualified_name PROTO ((tree, tree, int));
static tree merge_qualified_name PROTO ((tree, tree));
static tree make_qualified_primary PROTO ((tree, tree, int));
static int resolve_qualified_expression_name PROTO ((tree, tree *,
static tree find_most_specific_methods_list PARAMS ((tree));
static int argument_types_convertible PARAMS ((tree, tree));
static tree patch_invoke PARAMS ((tree, tree, tree));
static tree lookup_method_invoke PARAMS ((int, tree, tree, tree, tree));
static tree register_incomplete_type PARAMS ((int, tree, tree, tree));
static tree obtain_incomplete_type PARAMS ((tree));
static tree java_complete_lhs PARAMS ((tree));
static tree java_complete_tree PARAMS ((tree));
static int java_pre_expand_clinit PARAMS ((tree));
static void java_complete_expand_method PARAMS ((tree));
static int unresolved_type_p PARAMS ((tree, tree *));
static void create_jdep_list PARAMS ((struct parser_ctxt *));
static tree build_expr_block PARAMS ((tree, tree));
static tree enter_block PARAMS ((void));
static tree enter_a_block PARAMS ((tree));
static tree exit_block PARAMS ((void));
static tree lookup_name_in_blocks PARAMS ((tree));
static void maybe_absorb_scoping_blocks PARAMS ((void));
static tree build_method_invocation PARAMS ((tree, tree));
static tree build_new_invocation PARAMS ((tree, tree));
static tree build_assignment PARAMS ((int, int, tree, tree));
static tree build_binop PARAMS ((enum tree_code, int, tree, tree));
static int check_final_assignment PARAMS ((tree ,tree));
static tree patch_assignment PARAMS ((tree, tree, tree ));
static tree patch_binop PARAMS ((tree, tree, tree));
static tree build_unaryop PARAMS ((int, int, tree));
static tree build_incdec PARAMS ((int, int, tree, int));
static tree patch_unaryop PARAMS ((tree, tree));
static tree build_cast PARAMS ((int, tree, tree));
static tree build_null_of_type PARAMS ((tree));
static tree patch_cast PARAMS ((tree, tree));
static int valid_ref_assignconv_cast_p PARAMS ((tree, tree, int));
static int valid_builtin_assignconv_identity_widening_p PARAMS ((tree, tree));
static int valid_cast_to_p PARAMS ((tree, tree));
static int valid_method_invocation_conversion_p PARAMS ((tree, tree));
static tree try_builtin_assignconv PARAMS ((tree, tree, tree));
static tree try_reference_assignconv PARAMS ((tree, tree));
static tree build_unresolved_array_type PARAMS ((tree));
static tree build_array_from_name PARAMS ((tree, tree, tree, tree *));
static tree build_array_ref PARAMS ((int, tree, tree));
static tree patch_array_ref PARAMS ((tree));
static tree make_qualified_name PARAMS ((tree, tree, int));
static tree merge_qualified_name PARAMS ((tree, tree));
static tree make_qualified_primary PARAMS ((tree, tree, int));
static int resolve_qualified_expression_name PARAMS ((tree, tree *,
tree *, tree *));
static void qualify_ambiguous_name PROTO ((tree));
static void maybe_generate_clinit PROTO ((void));
static tree resolve_field_access PROTO ((tree, tree *, tree *));
static tree build_newarray_node PROTO ((tree, tree, int));
static tree patch_newarray PROTO ((tree));
static tree resolve_type_during_patch PROTO ((tree));
static tree build_this PROTO ((int));
static tree build_return PROTO ((int, tree));
static tree patch_return PROTO ((tree));
static tree maybe_access_field PROTO ((tree, tree, tree));
static int complete_function_arguments PROTO ((tree));
static int check_for_static_method_reference PROTO ((tree, tree, tree, tree, tree));
static int not_accessible_p PROTO ((tree, tree, int));
static void check_deprecation PROTO ((tree, tree));
static int class_in_current_package PROTO ((tree));
static tree build_if_else_statement PROTO ((int, tree, tree, tree));
static tree patch_if_else_statement PROTO ((tree));
static tree add_stmt_to_compound PROTO ((tree, tree, tree));
static tree add_stmt_to_block PROTO ((tree, tree, tree));
static tree patch_exit_expr PROTO ((tree));
static tree build_labeled_block PROTO ((int, tree));
static tree finish_labeled_statement PROTO ((tree, tree));
static tree build_bc_statement PROTO ((int, int, tree));
static tree patch_bc_statement PROTO ((tree));
static tree patch_loop_statement PROTO ((tree));
static tree build_new_loop PROTO ((tree));
static tree build_loop_body PROTO ((int, tree, int));
static tree finish_loop_body PROTO ((int, tree, tree, int));
static tree build_debugable_stmt PROTO ((int, tree));
static tree finish_for_loop PROTO ((int, tree, tree, tree));
static tree patch_switch_statement PROTO ((tree));
static tree string_constant_concatenation PROTO ((tree, tree));
static tree build_string_concatenation PROTO ((tree, tree));
static tree patch_string_cst PROTO ((tree));
static tree patch_string PROTO ((tree));
static tree build_try_statement PROTO ((int, tree, tree));
static tree build_try_finally_statement PROTO ((int, tree, tree));
static tree patch_try_statement PROTO ((tree));
static tree patch_synchronized_statement PROTO ((tree, tree));
static tree patch_throw_statement PROTO ((tree, tree));
static void check_thrown_exceptions PROTO ((int, tree));
static int check_thrown_exceptions_do PROTO ((tree));
static void purge_unchecked_exceptions PROTO ((tree));
static void check_throws_clauses PROTO ((tree, tree, tree));
static void finish_method_declaration PROTO ((tree));
static tree build_super_invocation PROTO ((tree));
static int verify_constructor_circularity PROTO ((tree, tree));
static char *constructor_circularity_msg PROTO ((tree, tree));
static tree build_this_super_qualified_invocation PROTO ((int, tree, tree,
static void qualify_ambiguous_name PARAMS ((tree));
static void maybe_generate_clinit PARAMS ((void));
static tree resolve_field_access PARAMS ((tree, tree *, tree *));
static tree build_newarray_node PARAMS ((tree, tree, int));
static tree patch_newarray PARAMS ((tree));
static tree resolve_type_during_patch PARAMS ((tree));
static tree build_this PARAMS ((int));
static tree build_return PARAMS ((int, tree));
static tree patch_return PARAMS ((tree));
static tree maybe_access_field PARAMS ((tree, tree, tree));
static int complete_function_arguments PARAMS ((tree));
static int check_for_static_method_reference PARAMS ((tree, tree, tree, tree, tree));
static int not_accessible_p PARAMS ((tree, tree, int));
static void check_deprecation PARAMS ((tree, tree));
static int class_in_current_package PARAMS ((tree));
static tree build_if_else_statement PARAMS ((int, tree, tree, tree));
static tree patch_if_else_statement PARAMS ((tree));
static tree add_stmt_to_compound PARAMS ((tree, tree, tree));
static tree add_stmt_to_block PARAMS ((tree, tree, tree));
static tree patch_exit_expr PARAMS ((tree));
static tree build_labeled_block PARAMS ((int, tree));
static tree finish_labeled_statement PARAMS ((tree, tree));
static tree build_bc_statement PARAMS ((int, int, tree));
static tree patch_bc_statement PARAMS ((tree));
static tree patch_loop_statement PARAMS ((tree));
static tree build_new_loop PARAMS ((tree));
static tree build_loop_body PARAMS ((int, tree, int));
static tree finish_loop_body PARAMS ((int, tree, tree, int));
static tree build_debugable_stmt PARAMS ((int, tree));
static tree finish_for_loop PARAMS ((int, tree, tree, tree));
static tree patch_switch_statement PARAMS ((tree));
static tree string_constant_concatenation PARAMS ((tree, tree));
static tree build_string_concatenation PARAMS ((tree, tree));
static tree patch_string_cst PARAMS ((tree));
static tree patch_string PARAMS ((tree));
static tree build_try_statement PARAMS ((int, tree, tree));
static tree build_try_finally_statement PARAMS ((int, tree, tree));
static tree patch_try_statement PARAMS ((tree));
static tree patch_synchronized_statement PARAMS ((tree, tree));
static tree patch_throw_statement PARAMS ((tree, tree));
static void check_thrown_exceptions PARAMS ((int, tree));
static int check_thrown_exceptions_do PARAMS ((tree));
static void purge_unchecked_exceptions PARAMS ((tree));
static void check_throws_clauses PARAMS ((tree, tree, tree));
static void finish_method_declaration PARAMS ((tree));
static tree build_super_invocation PARAMS ((tree));
static int verify_constructor_circularity PARAMS ((tree, tree));
static char *constructor_circularity_msg PARAMS ((tree, tree));
static tree build_this_super_qualified_invocation PARAMS ((int, tree, tree,
int, int));
static const char *get_printable_method_name PROTO ((tree));
static tree patch_conditional_expr PROTO ((tree, tree, tree));
static void maybe_generate_finit PROTO ((void));
static void fix_constructors PROTO ((tree));
static int verify_constructor_super PROTO ((void));
static tree create_artificial_method PROTO ((tree, int, tree, tree, tree));
static void start_artificial_method_body PROTO ((tree));
static void end_artificial_method_body PROTO ((tree));
static int check_method_redefinition PROTO ((tree, tree));
static int reset_method_name PROTO ((tree));
static void java_check_regular_methods PROTO ((tree));
static void java_check_abstract_methods PROTO ((tree));
static tree maybe_build_primttype_type_ref PROTO ((tree, tree));
static void unreachable_stmt_error PROTO ((tree));
static tree find_expr_with_wfl PROTO ((tree));
static void missing_return_error PROTO ((tree));
static tree build_new_array_init PROTO ((int, tree));
static tree patch_new_array_init PROTO ((tree, tree));
static tree maybe_build_array_element_wfl PROTO ((tree));
static int array_constructor_check_entry PROTO ((tree, tree));
static const char *purify_type_name PROTO ((const char *));
static tree fold_constant_for_init PROTO ((tree, tree));
static tree strip_out_static_field_access_decl PROTO ((tree));
static jdeplist *reverse_jdep_list PROTO ((struct parser_ctxt *));
static void static_ref_err PROTO ((tree, tree, tree));
static void parser_add_interface PROTO ((tree, tree, tree));
static void add_superinterfaces PROTO ((tree, tree));
static tree jdep_resolve_class PROTO ((jdep *));
static int note_possible_classname PROTO ((const char *, int));
static void java_complete_expand_methods PROTO ((void));
static void java_expand_finals PROTO ((void));
static tree cut_identifier_in_qualified PROTO ((tree));
static tree java_stabilize_reference PROTO ((tree));
static tree do_unary_numeric_promotion PROTO ((tree));
static char * operator_string PROTO ((tree));
static tree do_merge_string_cste PROTO ((tree, const char *, int, int));
static tree merge_string_cste PROTO ((tree, tree, int));
static tree java_refold PROTO ((tree));
static int java_decl_equiv PROTO ((tree, tree));
static int binop_compound_p PROTO ((enum tree_code));
static tree search_loop PROTO ((tree));
static int labeled_block_contains_loop_p PROTO ((tree, tree));
static void check_abstract_method_definitions PROTO ((int, tree, tree));
static void java_check_abstract_method_definitions PROTO ((tree));
static void java_debug_context_do PROTO ((int));
static const char *get_printable_method_name PARAMS ((tree));
static tree patch_conditional_expr PARAMS ((tree, tree, tree));
static void maybe_generate_finit PARAMS ((void));
static void fix_constructors PARAMS ((tree));
static int verify_constructor_super PARAMS ((void));
static tree create_artificial_method PARAMS ((tree, int, tree, tree, tree));
static void start_artificial_method_body PARAMS ((tree));
static void end_artificial_method_body PARAMS ((tree));
static int check_method_redefinition PARAMS ((tree, tree));
static int reset_method_name PARAMS ((tree));
static void java_check_regular_methods PARAMS ((tree));
static void java_check_abstract_methods PARAMS ((tree));
static tree maybe_build_primttype_type_ref PARAMS ((tree, tree));
static void unreachable_stmt_error PARAMS ((tree));
static tree find_expr_with_wfl PARAMS ((tree));
static void missing_return_error PARAMS ((tree));
static tree build_new_array_init PARAMS ((int, tree));
static tree patch_new_array_init PARAMS ((tree, tree));
static tree maybe_build_array_element_wfl PARAMS ((tree));
static int array_constructor_check_entry PARAMS ((tree, tree));
static const char *purify_type_name PARAMS ((const char *));
static tree fold_constant_for_init PARAMS ((tree, tree));
static tree strip_out_static_field_access_decl PARAMS ((tree));
static jdeplist *reverse_jdep_list PARAMS ((struct parser_ctxt *));
static void static_ref_err PARAMS ((tree, tree, tree));
static void parser_add_interface PARAMS ((tree, tree, tree));
static void add_superinterfaces PARAMS ((tree, tree));
static tree jdep_resolve_class PARAMS ((jdep *));
static int note_possible_classname PARAMS ((const char *, int));
static void java_complete_expand_methods PARAMS ((void));
static void java_expand_finals PARAMS ((void));
static tree cut_identifier_in_qualified PARAMS ((tree));
static tree java_stabilize_reference PARAMS ((tree));
static tree do_unary_numeric_promotion PARAMS ((tree));
static char * operator_string PARAMS ((tree));
static tree do_merge_string_cste PARAMS ((tree, const char *, int, int));
static tree merge_string_cste PARAMS ((tree, tree, int));
static tree java_refold PARAMS ((tree));
static int java_decl_equiv PARAMS ((tree, tree));
static int binop_compound_p PARAMS ((enum tree_code));
static tree search_loop PARAMS ((tree));
static int labeled_block_contains_loop_p PARAMS ((tree, tree));
static void check_abstract_method_definitions PARAMS ((int, tree, tree));
static void java_check_abstract_method_definitions PARAMS ((tree));
static void java_debug_context_do PARAMS ((int));
/* Number of error found so far. */
int java_error_count;
@ -5211,7 +5211,7 @@ issue_warning_error_from_context (cl, msg, ap)
/* Issue an error message at a current source line CL */
void
parse_error_context VPROTO ((tree cl, const char *msg, ...))
parse_error_context VPARAMS ((tree cl, const char *msg, ...))
{
#ifndef ANSI_PROTOTYPES
tree cl;
@ -5231,7 +5231,7 @@ parse_error_context VPROTO ((tree cl, const char *msg, ...))
/* Issue a warning at a current source line CL */
static void
parse_warning_context VPROTO ((tree cl, const char *msg, ...))
parse_warning_context VPARAMS ((tree cl, const char *msg, ...))
{
#ifndef ANSI_PROTOTYPES
tree cl;

View File

@ -1,5 +1,5 @@
/* Language parser definitions for the GNU compiler for the Java(TM) language.
Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com)
This file is part of GNU CC.
@ -36,8 +36,8 @@ extern int quiet_flag;
#ifndef JC1_LITE
/* Function extern to java/ */
extern int int_fits_type_p PROTO ((tree, tree));
extern tree stabilize_reference PROTO ((tree));
extern int int_fits_type_p PARAMS ((tree, tree));
extern tree stabilize_reference PARAMS ((tree));
#endif
/* Macros for verbose debug info */
@ -671,28 +671,28 @@ struct parser_ctxt {
};
#ifndef JC1_LITE
void safe_layout_class PROTO ((tree));
void java_complete_class PROTO ((void));
void java_check_circular_reference PROTO ((void));
void java_fix_constructors PROTO ((void));
void java_check_final PROTO ((void));
void java_layout_classes PROTO ((void));
tree java_method_add_stmt PROTO ((tree, tree));
void java_expand_switch PROTO ((tree));
int java_report_errors PROTO ((void));
extern tree do_resolve_class PROTO ((tree, tree, tree));
void safe_layout_class PARAMS ((tree));
void java_complete_class PARAMS ((void));
void java_check_circular_reference PARAMS ((void));
void java_fix_constructors PARAMS ((void));
void java_check_final PARAMS ((void));
void java_layout_classes PARAMS ((void));
tree java_method_add_stmt PARAMS ((tree, tree));
void java_expand_switch PARAMS ((tree));
int java_report_errors PARAMS ((void));
extern tree do_resolve_class PARAMS ((tree, tree, tree));
#endif
char *java_get_line_col PROTO ((char *, int, int));
extern void reset_report PROTO ((void));
char *java_get_line_col PARAMS ((char *, int, int));
extern void reset_report PARAMS ((void));
/* Always in use, no matter what you compile */
void java_push_parser_context PROTO ((void));
void java_pop_parser_context PROTO ((int));
void java_init_lex PROTO ((void));
extern void java_parser_context_save_global PROTO ((void));
extern void java_parser_context_restore_global PROTO ((void));
int yyparse PROTO ((void));
extern int java_parse PROTO ((void));
void yyerror PROTO ((const char *));
extern void java_expand_classes PROTO ((void));
void java_push_parser_context PARAMS ((void));
void java_pop_parser_context PARAMS ((int));
void java_init_lex PARAMS ((void));
extern void java_parser_context_save_global PARAMS ((void));
extern void java_parser_context_restore_global PARAMS ((void));
int yyparse PARAMS ((void));
extern int java_parse PARAMS ((void));
void yyerror PARAMS ((const char *));
extern void java_expand_classes PARAMS ((void));
#endif

View File

@ -1,6 +1,6 @@
/* Source code parsing and tree node generation for the GNU compiler
for the Java(TM) language.
Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com)
This file is part of GNU CC.
@ -67,202 +67,202 @@ definitions and other extensions. */
#include "defaults.h"
/* Local function prototypes */
static char *java_accstring_lookup PROTO ((int));
static void classitf_redefinition_error PROTO ((const char *,tree, tree, tree));
static void variable_redefinition_error PROTO ((tree, tree, tree, int));
static void check_modifiers PROTO ((const char *, int, int));
static tree create_class PROTO ((int, tree, tree, tree));
static tree create_interface PROTO ((int, tree, tree));
static tree find_field PROTO ((tree, tree));
static tree lookup_field_wrapper PROTO ((tree, tree));
static int duplicate_declaration_error_p PROTO ((tree, tree, tree));
static void register_fields PROTO ((int, tree, tree));
static tree parser_qualified_classname PROTO ((tree));
static int parser_check_super PROTO ((tree, tree, tree));
static int parser_check_super_interface PROTO ((tree, tree, tree));
static void check_modifiers_consistency PROTO ((int));
static tree lookup_cl PROTO ((tree));
static tree lookup_java_method2 PROTO ((tree, tree, int));
static tree method_header PROTO ((int, tree, tree, tree));
static void fix_method_argument_names PROTO ((tree ,tree));
static tree method_declarator PROTO ((tree, tree));
static void parse_warning_context PVPROTO ((tree cl, const char *msg, ...))
static char *java_accstring_lookup PARAMS ((int));
static void classitf_redefinition_error PARAMS ((const char *,tree, tree, tree));
static void variable_redefinition_error PARAMS ((tree, tree, tree, int));
static void check_modifiers PARAMS ((const char *, int, int));
static tree create_class PARAMS ((int, tree, tree, tree));
static tree create_interface PARAMS ((int, tree, tree));
static tree find_field PARAMS ((tree, tree));
static tree lookup_field_wrapper PARAMS ((tree, tree));
static int duplicate_declaration_error_p PARAMS ((tree, tree, tree));
static void register_fields PARAMS ((int, tree, tree));
static tree parser_qualified_classname PARAMS ((tree));
static int parser_check_super PARAMS ((tree, tree, tree));
static int parser_check_super_interface PARAMS ((tree, tree, tree));
static void check_modifiers_consistency PARAMS ((int));
static tree lookup_cl PARAMS ((tree));
static tree lookup_java_method2 PARAMS ((tree, tree, int));
static tree method_header PARAMS ((int, tree, tree, tree));
static void fix_method_argument_names PARAMS ((tree ,tree));
static tree method_declarator PARAMS ((tree, tree));
static void parse_warning_context PARAMS ((tree cl, const char *msg, ...))
ATTRIBUTE_PRINTF_2;
static void issue_warning_error_from_context PROTO ((tree, const char *msg, va_list));
static void parse_ctor_invocation_error PROTO ((void));
static tree parse_jdk1_1_error PROTO ((const char *));
static void complete_class_report_errors PROTO ((jdep *));
static int process_imports PROTO ((void));
static void read_import_dir PROTO ((tree));
static int find_in_imports_on_demand PROTO ((tree));
static int find_in_imports PROTO ((tree));
static int check_pkg_class_access PROTO ((tree, tree));
static tree resolve_package PROTO ((tree, tree *));
static tree lookup_package_type PROTO ((const char *, int));
static tree lookup_package_type_and_set_next PROTO ((const char *, int, tree *));
static tree resolve_class PROTO ((tree, tree, tree));
static void declare_local_variables PROTO ((int, tree, tree));
static void source_start_java_method PROTO ((tree));
static void source_end_java_method PROTO ((void));
static void expand_start_java_method PROTO ((tree));
static tree find_name_in_single_imports PROTO ((tree));
static void check_abstract_method_header PROTO ((tree));
static tree lookup_java_interface_method2 PROTO ((tree, tree));
static tree resolve_expression_name PROTO ((tree, tree *));
static tree maybe_create_class_interface_decl PROTO ((tree, tree, tree));
static int check_class_interface_creation PROTO ((int, int, tree,
static void issue_warning_error_from_context PARAMS ((tree, const char *msg, va_list));
static void parse_ctor_invocation_error PARAMS ((void));
static tree parse_jdk1_1_error PARAMS ((const char *));
static void complete_class_report_errors PARAMS ((jdep *));
static int process_imports PARAMS ((void));
static void read_import_dir PARAMS ((tree));
static int find_in_imports_on_demand PARAMS ((tree));
static int find_in_imports PARAMS ((tree));
static int check_pkg_class_access PARAMS ((tree, tree));
static tree resolve_package PARAMS ((tree, tree *));
static tree lookup_package_type PARAMS ((const char *, int));
static tree lookup_package_type_and_set_next PARAMS ((const char *, int, tree *));
static tree resolve_class PARAMS ((tree, tree, tree));
static void declare_local_variables PARAMS ((int, tree, tree));
static void source_start_java_method PARAMS ((tree));
static void source_end_java_method PARAMS ((void));
static void expand_start_java_method PARAMS ((tree));
static tree find_name_in_single_imports PARAMS ((tree));
static void check_abstract_method_header PARAMS ((tree));
static tree lookup_java_interface_method2 PARAMS ((tree, tree));
static tree resolve_expression_name PARAMS ((tree, tree *));
static tree maybe_create_class_interface_decl PARAMS ((tree, tree, tree));
static int check_class_interface_creation PARAMS ((int, int, tree,
tree, tree, tree));
static tree patch_method_invocation PROTO ((tree, tree, tree,
static tree patch_method_invocation PARAMS ((tree, tree, tree,
int *, tree *));
static int breakdown_qualified PROTO ((tree *, tree *, tree));
static tree resolve_and_layout PROTO ((tree, tree));
static tree resolve_no_layout PROTO ((tree, tree));
static int invocation_mode PROTO ((tree, int));
static tree find_applicable_accessible_methods_list PROTO ((int, tree,
static int breakdown_qualified PARAMS ((tree *, tree *, tree));
static tree resolve_and_layout PARAMS ((tree, tree));
static tree resolve_no_layout PARAMS ((tree, tree));
static int invocation_mode PARAMS ((tree, int));
static tree find_applicable_accessible_methods_list PARAMS ((int, tree,
tree, tree));
static void search_applicable_methods_list PROTO ((int, tree, tree, tree,
static void search_applicable_methods_list PARAMS ((int, tree, tree, tree,
tree *, tree *));
static tree find_most_specific_methods_list PROTO ((tree));
static int argument_types_convertible PROTO ((tree, tree));
static tree patch_invoke PROTO ((tree, tree, tree));
static tree lookup_method_invoke PROTO ((int, tree, tree, tree, tree));
static tree register_incomplete_type PROTO ((int, tree, tree, tree));
static tree obtain_incomplete_type PROTO ((tree));
static tree java_complete_lhs PROTO ((tree));
static tree java_complete_tree PROTO ((tree));
static int java_pre_expand_clinit PROTO ((tree));
static void java_complete_expand_method PROTO ((tree));
static int unresolved_type_p PROTO ((tree, tree *));
static void create_jdep_list PROTO ((struct parser_ctxt *));
static tree build_expr_block PROTO ((tree, tree));
static tree enter_block PROTO ((void));
static tree enter_a_block PROTO ((tree));
static tree exit_block PROTO ((void));
static tree lookup_name_in_blocks PROTO ((tree));
static void maybe_absorb_scoping_blocks PROTO ((void));
static tree build_method_invocation PROTO ((tree, tree));
static tree build_new_invocation PROTO ((tree, tree));
static tree build_assignment PROTO ((int, int, tree, tree));
static tree build_binop PROTO ((enum tree_code, int, tree, tree));
static int check_final_assignment PROTO ((tree ,tree));
static tree patch_assignment PROTO ((tree, tree, tree ));
static tree patch_binop PROTO ((tree, tree, tree));
static tree build_unaryop PROTO ((int, int, tree));
static tree build_incdec PROTO ((int, int, tree, int));
static tree patch_unaryop PROTO ((tree, tree));
static tree build_cast PROTO ((int, tree, tree));
static tree build_null_of_type PROTO ((tree));
static tree patch_cast PROTO ((tree, tree));
static int valid_ref_assignconv_cast_p PROTO ((tree, tree, int));
static int valid_builtin_assignconv_identity_widening_p PROTO ((tree, tree));
static int valid_cast_to_p PROTO ((tree, tree));
static int valid_method_invocation_conversion_p PROTO ((tree, tree));
static tree try_builtin_assignconv PROTO ((tree, tree, tree));
static tree try_reference_assignconv PROTO ((tree, tree));
static tree build_unresolved_array_type PROTO ((tree));
static tree build_array_from_name PROTO ((tree, tree, tree, tree *));
static tree build_array_ref PROTO ((int, tree, tree));
static tree patch_array_ref PROTO ((tree));
static tree make_qualified_name PROTO ((tree, tree, int));
static tree merge_qualified_name PROTO ((tree, tree));
static tree make_qualified_primary PROTO ((tree, tree, int));
static int resolve_qualified_expression_name PROTO ((tree, tree *,
static tree find_most_specific_methods_list PARAMS ((tree));
static int argument_types_convertible PARAMS ((tree, tree));
static tree patch_invoke PARAMS ((tree, tree, tree));
static tree lookup_method_invoke PARAMS ((int, tree, tree, tree, tree));
static tree register_incomplete_type PARAMS ((int, tree, tree, tree));
static tree obtain_incomplete_type PARAMS ((tree));
static tree java_complete_lhs PARAMS ((tree));
static tree java_complete_tree PARAMS ((tree));
static int java_pre_expand_clinit PARAMS ((tree));
static void java_complete_expand_method PARAMS ((tree));
static int unresolved_type_p PARAMS ((tree, tree *));
static void create_jdep_list PARAMS ((struct parser_ctxt *));
static tree build_expr_block PARAMS ((tree, tree));
static tree enter_block PARAMS ((void));
static tree enter_a_block PARAMS ((tree));
static tree exit_block PARAMS ((void));
static tree lookup_name_in_blocks PARAMS ((tree));
static void maybe_absorb_scoping_blocks PARAMS ((void));
static tree build_method_invocation PARAMS ((tree, tree));
static tree build_new_invocation PARAMS ((tree, tree));
static tree build_assignment PARAMS ((int, int, tree, tree));
static tree build_binop PARAMS ((enum tree_code, int, tree, tree));
static int check_final_assignment PARAMS ((tree ,tree));
static tree patch_assignment PARAMS ((tree, tree, tree ));
static tree patch_binop PARAMS ((tree, tree, tree));
static tree build_unaryop PARAMS ((int, int, tree));
static tree build_incdec PARAMS ((int, int, tree, int));
static tree patch_unaryop PARAMS ((tree, tree));
static tree build_cast PARAMS ((int, tree, tree));
static tree build_null_of_type PARAMS ((tree));
static tree patch_cast PARAMS ((tree, tree));
static int valid_ref_assignconv_cast_p PARAMS ((tree, tree, int));
static int valid_builtin_assignconv_identity_widening_p PARAMS ((tree, tree));
static int valid_cast_to_p PARAMS ((tree, tree));
static int valid_method_invocation_conversion_p PARAMS ((tree, tree));
static tree try_builtin_assignconv PARAMS ((tree, tree, tree));
static tree try_reference_assignconv PARAMS ((tree, tree));
static tree build_unresolved_array_type PARAMS ((tree));
static tree build_array_from_name PARAMS ((tree, tree, tree, tree *));
static tree build_array_ref PARAMS ((int, tree, tree));
static tree patch_array_ref PARAMS ((tree));
static tree make_qualified_name PARAMS ((tree, tree, int));
static tree merge_qualified_name PARAMS ((tree, tree));
static tree make_qualified_primary PARAMS ((tree, tree, int));
static int resolve_qualified_expression_name PARAMS ((tree, tree *,
tree *, tree *));
static void qualify_ambiguous_name PROTO ((tree));
static void maybe_generate_clinit PROTO ((void));
static tree resolve_field_access PROTO ((tree, tree *, tree *));
static tree build_newarray_node PROTO ((tree, tree, int));
static tree patch_newarray PROTO ((tree));
static tree resolve_type_during_patch PROTO ((tree));
static tree build_this PROTO ((int));
static tree build_return PROTO ((int, tree));
static tree patch_return PROTO ((tree));
static tree maybe_access_field PROTO ((tree, tree, tree));
static int complete_function_arguments PROTO ((tree));
static int check_for_static_method_reference PROTO ((tree, tree, tree, tree, tree));
static int not_accessible_p PROTO ((tree, tree, int));
static void check_deprecation PROTO ((tree, tree));
static int class_in_current_package PROTO ((tree));
static tree build_if_else_statement PROTO ((int, tree, tree, tree));
static tree patch_if_else_statement PROTO ((tree));
static tree add_stmt_to_compound PROTO ((tree, tree, tree));
static tree add_stmt_to_block PROTO ((tree, tree, tree));
static tree patch_exit_expr PROTO ((tree));
static tree build_labeled_block PROTO ((int, tree));
static tree finish_labeled_statement PROTO ((tree, tree));
static tree build_bc_statement PROTO ((int, int, tree));
static tree patch_bc_statement PROTO ((tree));
static tree patch_loop_statement PROTO ((tree));
static tree build_new_loop PROTO ((tree));
static tree build_loop_body PROTO ((int, tree, int));
static tree finish_loop_body PROTO ((int, tree, tree, int));
static tree build_debugable_stmt PROTO ((int, tree));
static tree finish_for_loop PROTO ((int, tree, tree, tree));
static tree patch_switch_statement PROTO ((tree));
static tree string_constant_concatenation PROTO ((tree, tree));
static tree build_string_concatenation PROTO ((tree, tree));
static tree patch_string_cst PROTO ((tree));
static tree patch_string PROTO ((tree));
static tree build_try_statement PROTO ((int, tree, tree));
static tree build_try_finally_statement PROTO ((int, tree, tree));
static tree patch_try_statement PROTO ((tree));
static tree patch_synchronized_statement PROTO ((tree, tree));
static tree patch_throw_statement PROTO ((tree, tree));
static void check_thrown_exceptions PROTO ((int, tree));
static int check_thrown_exceptions_do PROTO ((tree));
static void purge_unchecked_exceptions PROTO ((tree));
static void check_throws_clauses PROTO ((tree, tree, tree));
static void finish_method_declaration PROTO ((tree));
static tree build_super_invocation PROTO ((tree));
static int verify_constructor_circularity PROTO ((tree, tree));
static char *constructor_circularity_msg PROTO ((tree, tree));
static tree build_this_super_qualified_invocation PROTO ((int, tree, tree,
static void qualify_ambiguous_name PARAMS ((tree));
static void maybe_generate_clinit PARAMS ((void));
static tree resolve_field_access PARAMS ((tree, tree *, tree *));
static tree build_newarray_node PARAMS ((tree, tree, int));
static tree patch_newarray PARAMS ((tree));
static tree resolve_type_during_patch PARAMS ((tree));
static tree build_this PARAMS ((int));
static tree build_return PARAMS ((int, tree));
static tree patch_return PARAMS ((tree));
static tree maybe_access_field PARAMS ((tree, tree, tree));
static int complete_function_arguments PARAMS ((tree));
static int check_for_static_method_reference PARAMS ((tree, tree, tree, tree, tree));
static int not_accessible_p PARAMS ((tree, tree, int));
static void check_deprecation PARAMS ((tree, tree));
static int class_in_current_package PARAMS ((tree));
static tree build_if_else_statement PARAMS ((int, tree, tree, tree));
static tree patch_if_else_statement PARAMS ((tree));
static tree add_stmt_to_compound PARAMS ((tree, tree, tree));
static tree add_stmt_to_block PARAMS ((tree, tree, tree));
static tree patch_exit_expr PARAMS ((tree));
static tree build_labeled_block PARAMS ((int, tree));
static tree finish_labeled_statement PARAMS ((tree, tree));
static tree build_bc_statement PARAMS ((int, int, tree));
static tree patch_bc_statement PARAMS ((tree));
static tree patch_loop_statement PARAMS ((tree));
static tree build_new_loop PARAMS ((tree));
static tree build_loop_body PARAMS ((int, tree, int));
static tree finish_loop_body PARAMS ((int, tree, tree, int));
static tree build_debugable_stmt PARAMS ((int, tree));
static tree finish_for_loop PARAMS ((int, tree, tree, tree));
static tree patch_switch_statement PARAMS ((tree));
static tree string_constant_concatenation PARAMS ((tree, tree));
static tree build_string_concatenation PARAMS ((tree, tree));
static tree patch_string_cst PARAMS ((tree));
static tree patch_string PARAMS ((tree));
static tree build_try_statement PARAMS ((int, tree, tree));
static tree build_try_finally_statement PARAMS ((int, tree, tree));
static tree patch_try_statement PARAMS ((tree));
static tree patch_synchronized_statement PARAMS ((tree, tree));
static tree patch_throw_statement PARAMS ((tree, tree));
static void check_thrown_exceptions PARAMS ((int, tree));
static int check_thrown_exceptions_do PARAMS ((tree));
static void purge_unchecked_exceptions PARAMS ((tree));
static void check_throws_clauses PARAMS ((tree, tree, tree));
static void finish_method_declaration PARAMS ((tree));
static tree build_super_invocation PARAMS ((tree));
static int verify_constructor_circularity PARAMS ((tree, tree));
static char *constructor_circularity_msg PARAMS ((tree, tree));
static tree build_this_super_qualified_invocation PARAMS ((int, tree, tree,
int, int));
static const char *get_printable_method_name PROTO ((tree));
static tree patch_conditional_expr PROTO ((tree, tree, tree));
static void maybe_generate_finit PROTO ((void));
static void fix_constructors PROTO ((tree));
static int verify_constructor_super PROTO ((void));
static tree create_artificial_method PROTO ((tree, int, tree, tree, tree));
static void start_artificial_method_body PROTO ((tree));
static void end_artificial_method_body PROTO ((tree));
static int check_method_redefinition PROTO ((tree, tree));
static int reset_method_name PROTO ((tree));
static void java_check_regular_methods PROTO ((tree));
static void java_check_abstract_methods PROTO ((tree));
static tree maybe_build_primttype_type_ref PROTO ((tree, tree));
static void unreachable_stmt_error PROTO ((tree));
static tree find_expr_with_wfl PROTO ((tree));
static void missing_return_error PROTO ((tree));
static tree build_new_array_init PROTO ((int, tree));
static tree patch_new_array_init PROTO ((tree, tree));
static tree maybe_build_array_element_wfl PROTO ((tree));
static int array_constructor_check_entry PROTO ((tree, tree));
static const char *purify_type_name PROTO ((const char *));
static tree fold_constant_for_init PROTO ((tree, tree));
static tree strip_out_static_field_access_decl PROTO ((tree));
static jdeplist *reverse_jdep_list PROTO ((struct parser_ctxt *));
static void static_ref_err PROTO ((tree, tree, tree));
static void parser_add_interface PROTO ((tree, tree, tree));
static void add_superinterfaces PROTO ((tree, tree));
static tree jdep_resolve_class PROTO ((jdep *));
static int note_possible_classname PROTO ((const char *, int));
static void java_complete_expand_methods PROTO ((void));
static void java_expand_finals PROTO ((void));
static tree cut_identifier_in_qualified PROTO ((tree));
static tree java_stabilize_reference PROTO ((tree));
static tree do_unary_numeric_promotion PROTO ((tree));
static char * operator_string PROTO ((tree));
static tree do_merge_string_cste PROTO ((tree, const char *, int, int));
static tree merge_string_cste PROTO ((tree, tree, int));
static tree java_refold PROTO ((tree));
static int java_decl_equiv PROTO ((tree, tree));
static int binop_compound_p PROTO ((enum tree_code));
static tree search_loop PROTO ((tree));
static int labeled_block_contains_loop_p PROTO ((tree, tree));
static void check_abstract_method_definitions PROTO ((int, tree, tree));
static void java_check_abstract_method_definitions PROTO ((tree));
static void java_debug_context_do PROTO ((int));
static const char *get_printable_method_name PARAMS ((tree));
static tree patch_conditional_expr PARAMS ((tree, tree, tree));
static void maybe_generate_finit PARAMS ((void));
static void fix_constructors PARAMS ((tree));
static int verify_constructor_super PARAMS ((void));
static tree create_artificial_method PARAMS ((tree, int, tree, tree, tree));
static void start_artificial_method_body PARAMS ((tree));
static void end_artificial_method_body PARAMS ((tree));
static int check_method_redefinition PARAMS ((tree, tree));
static int reset_method_name PARAMS ((tree));
static void java_check_regular_methods PARAMS ((tree));
static void java_check_abstract_methods PARAMS ((tree));
static tree maybe_build_primttype_type_ref PARAMS ((tree, tree));
static void unreachable_stmt_error PARAMS ((tree));
static tree find_expr_with_wfl PARAMS ((tree));
static void missing_return_error PARAMS ((tree));
static tree build_new_array_init PARAMS ((int, tree));
static tree patch_new_array_init PARAMS ((tree, tree));
static tree maybe_build_array_element_wfl PARAMS ((tree));
static int array_constructor_check_entry PARAMS ((tree, tree));
static const char *purify_type_name PARAMS ((const char *));
static tree fold_constant_for_init PARAMS ((tree, tree));
static tree strip_out_static_field_access_decl PARAMS ((tree));
static jdeplist *reverse_jdep_list PARAMS ((struct parser_ctxt *));
static void static_ref_err PARAMS ((tree, tree, tree));
static void parser_add_interface PARAMS ((tree, tree, tree));
static void add_superinterfaces PARAMS ((tree, tree));
static tree jdep_resolve_class PARAMS ((jdep *));
static int note_possible_classname PARAMS ((const char *, int));
static void java_complete_expand_methods PARAMS ((void));
static void java_expand_finals PARAMS ((void));
static tree cut_identifier_in_qualified PARAMS ((tree));
static tree java_stabilize_reference PARAMS ((tree));
static tree do_unary_numeric_promotion PARAMS ((tree));
static char * operator_string PARAMS ((tree));
static tree do_merge_string_cste PARAMS ((tree, const char *, int, int));
static tree merge_string_cste PARAMS ((tree, tree, int));
static tree java_refold PARAMS ((tree));
static int java_decl_equiv PARAMS ((tree, tree));
static int binop_compound_p PARAMS ((enum tree_code));
static tree search_loop PARAMS ((tree));
static int labeled_block_contains_loop_p PARAMS ((tree, tree));
static void check_abstract_method_definitions PARAMS ((int, tree, tree));
static void java_check_abstract_method_definitions PARAMS ((tree));
static void java_debug_context_do PARAMS ((int));
/* Number of error found so far. */
int java_error_count;
@ -2617,7 +2617,7 @@ issue_warning_error_from_context (cl, msg, ap)
/* Issue an error message at a current source line CL */
void
parse_error_context VPROTO ((tree cl, const char *msg, ...))
parse_error_context VPARAMS ((tree cl, const char *msg, ...))
{
#ifndef ANSI_PROTOTYPES
tree cl;
@ -2637,7 +2637,7 @@ parse_error_context VPROTO ((tree cl, const char *msg, ...))
/* Issue a warning at a current source line CL */
static void
parse_warning_context VPROTO ((tree cl, const char *msg, ...))
parse_warning_context VPARAMS ((tree cl, const char *msg, ...))
{
#ifndef ANSI_PROTOTYPES
tree cl;

View File

@ -1,5 +1,5 @@
/* Handle types for the GNU compiler for the Java(TM) language.
Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc.
Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -34,8 +34,8 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "convert.h"
#include "toplev.h"
static tree convert_ieee_real_to_integer PROTO ((tree, tree));
static tree parse_signature_type PROTO ((const unsigned char **,
static tree convert_ieee_real_to_integer PARAMS ((tree, tree));
static tree parse_signature_type PARAMS ((const unsigned char **,
const unsigned char *));
tree * type_map;

View File

@ -1,6 +1,6 @@
/* Handle verification of bytecoded methods for the GNU compiler for
the Java(TM) language.
Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -33,11 +33,11 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "java-except.h"
#include "toplev.h"
static void push_pending_label PROTO ((tree));
static tree merge_types PROTO ((tree, tree));
static const char *check_pending_block PROTO ((tree));
static void type_stack_dup PROTO ((int, int));
static int start_pc_cmp PROTO ((const PTR, const PTR));
static void push_pending_label PARAMS ((tree));
static tree merge_types PARAMS ((tree, tree));
static const char *check_pending_block PARAMS ((tree));
static void type_stack_dup PARAMS ((int, int));
static int start_pc_cmp PARAMS ((const PTR, const PTR));
extern int stack_pointer;

View File

@ -1,6 +1,6 @@
/* Write cross reference information extracted from Java(TM)
source and bytecode files, in one of formats documented below.
Copyright (C) 1999 Free Software Foundation, Inc.
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com)
This file is part of GNU CC.
@ -81,7 +81,7 @@ expand_xref (node)
{
/* Maintain these two cached. */
static FILE *fp = NULL;
static void (*current_expand) PROTO ((FILE *, tree)) = NULL;
static void (*current_expand) PARAMS ((FILE *, tree)) = NULL;
if ( !flag_emit_xref )
return;

View File

@ -1,5 +1,5 @@
/* Definitions for the cross reference backend xref.c
Copyright (C) 1999 Free Software Foundation, Inc.
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com)
This file is part of GNU CC.
@ -24,11 +24,11 @@ of Sun Microsystems, Inc. in the United States and other countries.
The Free Software Foundation is independent of Sun Microsystems, Inc. */
/* Exported functions. */
int xref_flag_value PROTO ((const char *));
void expand_xref PROTO ((tree));
void xref_set_data PROTO ((int, void *));
void *xref_get_data PROTO ((int));
void xref_set_current_fp PROTO ((FILE *));
int xref_flag_value PARAMS ((const char *));
void expand_xref PARAMS ((tree));
void xref_set_data PARAMS ((int, void *));
void *xref_get_data PARAMS ((int));
void xref_set_current_fp PARAMS ((FILE *));
/* flag_emit_xref range of possible values. */
@ -40,7 +40,7 @@ enum {
typedef struct {
char *key; /* Activator in -fxref=<key> */
void (*expand) PROTO ((FILE *, tree)); /* Function to write xrefs out */
void (*expand) PARAMS ((FILE *, tree)); /* Function to write xrefs out */
FILE *fp; /* fp to use during the call. */
void *data; /* Placeholder for additional data */
} xref_flag_table;

View File

@ -2,7 +2,7 @@
This extracts a member from a .zip file, but does not handle
uncompression (since that is not needed for classes.zip).
Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc.
Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -210,8 +210,8 @@ typedef unsigned long ulg; /* predefined on some systems) & match zip */
/* Prototypes */
/***********************/
static ush makeword PROTO ((const uch *));
static ulg makelong PROTO ((const uch *));
static ush makeword PARAMS ((const uch *));
static ulg makelong PARAMS ((const uch *));
/***********************/
/* Function makeword() */

View File

@ -1,6 +1,6 @@
/* Definitions for using a zipped' archive.
Copyright (C) 1996, 97-98, 1999 Free Software Foundation, Inc.
Copyright (C) 1996, 97-99, 2000 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -57,9 +57,9 @@ extern struct ZipFileCache *SeenZipFiles;
((ZipDirectory*)((char*)(ZIPD)+(ZIPD)->direntry_size))
#define ZIPMAGIC 0x504b0304
extern ZipFile * opendir_in_zip PROTO ((const char *, int));
extern int read_zip_archive PROTO ((ZipFile *));
extern ZipFile * opendir_in_zip PARAMS ((const char *, int));
extern int read_zip_archive PARAMS ((ZipFile *));
#ifdef JCF_ZIP
extern int open_in_zip PROTO ((struct JCF *, const char *,
extern int open_in_zip PARAMS ((struct JCF *, const char *,
const char *, int));
#endif