Commit d4476be2 by Kaveh R. Ghazi Committed by Kaveh Ghazi

Warning fixes:

        * Makefile.in (parse.o): Depend on $(CONFIG_H) and
        $(srcdir)/../system.h.
        (class.o): Depend on $(PARSE_H) and $(srcdir)/../output.h.
        (jcf-parse.o): Depend on $(srcdir)/../toplev.h.
        (jcf-write.o): Likewise.
        (jv-scan.o): Depend on $(CONFIG_H) and $(srcdir)/../system.h.
        (mangle.o): Depend on $(srcdir)/../toplev.h.
        (parse-scan.o): Depend on $(CONFIG_H) and $(srcdir)/../system.h.
        (zextract.o): Depend on $(CONFIG_H) and $(srcdir)/../system.h.
        * class.c: Include output.h and parse.h.
        (mangled_classname): Add the `const' keyword to a char*.
        (find_named_method): Hide unused function definition.
        (build_utf8_ref): Change type of variable `c' to unsigned char.
        Use ISALPHA/ISDIGIT instead of isalpha/isdigit.
        (build_class_ref): Add the `const' keyword to a char*.
        (layout_class_method): Remove unused variable `buf'.
        * decl.c (find_local_variable): Remove unused variable `rtl'.
        (pushdecl): Likewise for variables `different_binding_level' and
        `oldglobal'.
        (pushlevel): Mark parameter `unused' with ATTRIBUTE_UNUSED.
        (maybe_build_cleanup): Likewise for parameter `decl'.
        * except.c (expand_start_java_handler): Mark parameter `range'
        with ATTRIBUTE_UNUSED.
        * expr.c: Include except.h.
        (pop_type): Remove unused variable `i'.
        (pop_value): Likewise for variables `n_words' and `i'.
        (expand_java_arrayload): Likewise for variable `convert'.
        (java_lang_expand_expr): Likewise for variables `op0', `type',
        `mode', `unsignedp', `node' and `elements'.
        (expand_byte_code): Likewise for variables `prev_eh_ranges' and
        `eh_ranges'.
        (process_jvm_instruction): Add a `const' qualifier to a char*.
        * gjavah.c (output_directory): Add the `const' keyword to a char*.
        (temp_directory): Likewise.
        (print_c_decl): Likewise.
        (print_method_info): Likewise.
        (decode_signature_piece): Likewise.
        (print_mangled_classname): Likewise.
        * java-except.h: Provide prototypes for maybe_start_try,
        maybe_end_try and add_handler.
        * java-tree.h (mangled_classname): Add the `const' keyword to a char*.
        (parse_error_context): Likewise.  Also add ATTRIBUTE_PRINTF_2.
        (pushdecl_top_level, alloc_class_constant, unicode_mangling_length,
        init_expr_processing, push_super_field, init_class_processing,
        can_widen_reference_to, class_depth, verify_jvm_instructions,
        maybe_pushlevels, maybe_poplevels, process_jvm_instruction,
        set_local_type, merge_type_state, push_type, load_type_state,
        add_interface, find_in_current_zip, append_gpp_mangled_classtype,
        emit_unicode_mangled_name): Add prototypes.
        * jcf-dump.c (print_constant): Add the `const' keyword to a char*.
        (print_signature_type): Use ISDIGIT, not isdigit.
        (print_signature): Remove unused variable `j'.
        * jcf-io.c (jcf_filbuf_from_stdio): Cast the result of `fread' to
        int when comparing against one.
        * jcf-parse.c: Include toplev.h.
        * jcf-write.c: Likewise.  Don't include <string.h> or <sys/stat.h>.
        (localvar_free): Remove unused variable `i'.
        (generate_bytecode_conditional): Likewise for variable `kind'.
        * jv-scan.c: Include config.h and system.h.  Remove redundant
        OS header and gansidecl.h includes.
        (warning): Add the `const' keyword to a char*.  Also add
        ATTRIBUTE_PRINTF_1 to the prototype.  Check ANSI_PROTOTYPES, not
        __STDC__, when determining whether to use ANSI-isms.
        (fatal): Likewise.  Also add ATTRIBUTE_UNUSED.
        (xmalloc): Don't redundantly prototype here.
        (main): Remove unused parameter `envp'.  Also fix the arguments
        passed to function `fatal' to match the format specifier.
        * lang.c (java_tree_code_name): Add the `const' keyword to a char*.
        * mangle.c: Include toplev.h.
        (emit_unicode_mangled_name): Declare parameter `len'.
        * parse.y (parse_warning_context): Add the `const' keyword to a
        char*.  Also add ATTRIBUTE_PRINTF_2 to the prototype.  Check
        `ANSI_PROTOTYPES' not `__STDC__' for whether to use ANSI-isms.
        (issue_warning_error_from_context): Add the `const' keyword to
        a char*.
        (parse_error_context): Likewise.  Also check `ANSI_PROTOTYPES'
        not `__STDC__' for whether to use ANSI-isms.
        * typeck.c (incomplete_type_error): Mark parameters `value' and
        `type' with ATTRIBUTE_UNUSED.
        (parse_signature_type): Use ISDIGIT, not isdigit.
        * verify.c (check_pending_block): Add the `const' keyword to a char*.
        (verify_jvm_instructions): Likewise.  Remove unused variables
        `field_name' and `default_val'.
        * zextract.c: Include config.h and system.h.  Remove redundant
        OS header includes.
        * zipfile.h: Prototype `read_zip_archive'.

From-SVN: r24835
parent 9b3142b3
Sat Jan 23 23:02:43 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* Makefile.in (parse.o): Depend on $(CONFIG_H) and
$(srcdir)/../system.h.
(class.o): Depend on $(PARSE_H) and $(srcdir)/../output.h.
(jcf-parse.o): Depend on $(srcdir)/../toplev.h.
(jcf-write.o): Likewise.
(jv-scan.o): Depend on $(CONFIG_H) and $(srcdir)/../system.h.
(mangle.o): Depend on $(srcdir)/../toplev.h.
(parse-scan.o): Depend on $(CONFIG_H) and $(srcdir)/../system.h.
(zextract.o): Depend on $(CONFIG_H) and $(srcdir)/../system.h.
* class.c: Include output.h and parse.h.
(mangled_classname): Add the `const' keyword to a char*.
(find_named_method): Hide unused function definition.
(build_utf8_ref): Change type of variable `c' to unsigned char.
Use ISALPHA/ISDIGIT instead of isalpha/isdigit.
(build_class_ref): Add the `const' keyword to a char*.
(layout_class_method): Remove unused variable `buf'.
* decl.c (find_local_variable): Remove unused variable `rtl'.
(pushdecl): Likewise for variables `different_binding_level' and
`oldglobal'.
(pushlevel): Mark parameter `unused' with ATTRIBUTE_UNUSED.
(maybe_build_cleanup): Likewise for parameter `decl'.
* except.c (expand_start_java_handler): Mark parameter `range'
with ATTRIBUTE_UNUSED.
* expr.c: Include except.h.
(pop_type): Remove unused variable `i'.
(pop_value): Likewise for variables `n_words' and `i'.
(expand_java_arrayload): Likewise for variable `convert'.
(java_lang_expand_expr): Likewise for variables `op0', `type',
`mode', `unsignedp', `node' and `elements'.
(expand_byte_code): Likewise for variables `prev_eh_ranges' and
`eh_ranges'.
(process_jvm_instruction): Add a `const' qualifier to a char*.
* gjavah.c (output_directory): Add the `const' keyword to a char*.
(temp_directory): Likewise.
(print_c_decl): Likewise.
(print_method_info): Likewise.
(decode_signature_piece): Likewise.
(print_mangled_classname): Likewise.
* java-except.h: Provide prototypes for maybe_start_try,
maybe_end_try and add_handler.
* java-tree.h (mangled_classname): Add the `const' keyword to a char*.
(parse_error_context): Likewise. Also add ATTRIBUTE_PRINTF_2.
(pushdecl_top_level, alloc_class_constant, unicode_mangling_length,
init_expr_processing, push_super_field, init_class_processing,
can_widen_reference_to, class_depth, verify_jvm_instructions,
maybe_pushlevels, maybe_poplevels, process_jvm_instruction,
set_local_type, merge_type_state, push_type, load_type_state,
add_interface, find_in_current_zip, append_gpp_mangled_classtype,
emit_unicode_mangled_name): Add prototypes.
* jcf-dump.c (print_constant): Add the `const' keyword to a char*.
(print_signature_type): Use ISDIGIT, not isdigit.
(print_signature): Remove unused variable `j'.
* jcf-io.c (jcf_filbuf_from_stdio): Cast the result of `fread' to
int when comparing against one.
* jcf-parse.c: Include toplev.h.
* jcf-write.c: Likewise. Don't include <string.h> or <sys/stat.h>.
(localvar_free): Remove unused variable `i'.
(generate_bytecode_conditional): Likewise for variable `kind'.
* jv-scan.c: Include config.h and system.h. Remove redundant
OS header and gansidecl.h includes.
(warning): Add the `const' keyword to a char*. Also add
ATTRIBUTE_PRINTF_1 to the prototype. Check ANSI_PROTOTYPES, not
__STDC__, when determining whether to use ANSI-isms.
(fatal): Likewise. Also add ATTRIBUTE_UNUSED.
(xmalloc): Don't redundantly prototype here.
(main): Remove unused parameter `envp'. Also fix the arguments
passed to function `fatal' to match the format specifier.
* lang.c (java_tree_code_name): Add the `const' keyword to a char*.
* mangle.c: Include toplev.h.
(emit_unicode_mangled_name): Declare parameter `len'.
* parse.y (parse_warning_context): Add the `const' keyword to a
char*. Also add ATTRIBUTE_PRINTF_2 to the prototype. Check
`ANSI_PROTOTYPES' not `__STDC__' for whether to use ANSI-isms.
(issue_warning_error_from_context): Add the `const' keyword to
a char*.
(parse_error_context): Likewise. Also check `ANSI_PROTOTYPES'
not `__STDC__' for whether to use ANSI-isms.
* typeck.c (incomplete_type_error): Mark parameters `value' and
`type' with ATTRIBUTE_UNUSED.
(parse_signature_type): Use ISDIGIT, not isdigit.
* verify.c (check_pending_block): Add the `const' keyword to a char*.
(verify_jvm_instructions): Likewise. Remove unused variables
`field_name' and `default_val'.
* zextract.c: Include config.h and system.h. Remove redundant
OS header includes.
* zipfile.h: Prototype `read_zip_archive'.
Thu Jan 21 16:00:06 1999 Andrew Haley <aph@cygnus.com>
* typeck.c (convert): Allow conversions to void type: some
......
......@@ -273,13 +273,14 @@ clean: mostlyclean
force:
parse.o: $(PARSE_C) jcf-reader.c
parse.o: $(PARSE_C) jcf-reader.c $(CONFIG_H) $(srcdir)/../system.h
jcf-dump.o: jcf-reader.c jcf.h javaop.h javaop.def
gjavah.o: jcf-reader.c jcf.h javaop.h
buffer.o : buffer.c $(CONFIG_H) buffer.h $(srcdir)/../gansidecl.h \
$(srcdir)/../system.h $(srcdir)/../toplev.h
class.o : class.c $(CONFIG_H) $(JAVA_TREE_H) $(RTL_H) jcf.h \
$(srcdir)/../gansidecl.h $(srcdir)/../toplev.h $(srcdir)/../system.h
class.o : class.c $(CONFIG_H) $(JAVA_TREE_H) $(RTL_H) jcf.h $(PARSE_H) \
$(srcdir)/../gansidecl.h $(srcdir)/../toplev.h $(srcdir)/../system.h \
$(srcdir)/../output.h
constants.o : constants.c $(CONFIG_H) $(JAVA_TREE_H) jcf.h \
$(srcdir)/../toplev.h $(srcdir)/../system.h
decl.o : decl.c $(CONFIG_H) $(JAVA_TREE_H) jcf.h \
......@@ -294,16 +295,20 @@ expr.o : expr.c $(CONFIG_H) $(JAVA_TREE_H) jcf.h $(srcdir)/../real.h \
jcf-depend.o: jcf-depend.c $(CONFIG_H) $(srcdir)/../system.h jcf.h
jcf-io.o: jcf-io.c $(CONFIG_H) $(srcdir)/../system.h
jcf-parse.o : jcf-parse.c $(CONFIG_H) $(JAVA_TREE_H) $(srcdir)/../flags.h \
$(srcdir)/../input.h java-except.h $(srcdir)/../system.h
$(srcdir)/../input.h java-except.h $(srcdir)/../system.h \
$(srcdir)/../toplev.h
jcf-write.o : jcf-write.c $(CONFIG_H) $(JAVA_TREE_H) jcf.h $(RTL_H) \
java-opcodes.h parse.h buffer.h $(srcdir)/../system.h
java-opcodes.h parse.h buffer.h $(srcdir)/../system.h $(srcdir)/../toplev.h
jv-scan.o : $(CONFIG_H) $(srcdir)/../system.h
jvgenmain.o : jvgenmain.c $(CONFIG_H) $(srcdir)/../system.h
lang.o : lang.c $(CONFIG_H) $(JAVA_TREE_H) jcf.h $(srcdir)/../input.h \
$(srcdir)/../toplev.h $(srcdir)/../system.h
mangle.o : mangle.c $(CONFIG_H) jcf.h $(srcdir)/../system.h
mangle.o : mangle.c $(CONFIG_H) jcf.h $(srcdir)/../system.h \
$(srcdir)/../toplev.h
parse-scan.o : $(CONFIG_H) $(srcdir)/../system.h
typeck.o : typeck.c $(CONFIG_H) $(JAVA_TREE_H) jcf.h convert.h \
$(srcdir)/../toplev.h $(srcdir)/../system.h
verify.o : verify.c $(CONFIG_H) $(JAVA_TREE_H) jcf.h javaop.h java-opcodes.h \
java-except.h $(srcdir)/../toplev.h $(srcdir)/../system.h
zextract.o: zextract.c zipfile.h
zextract.o: zextract.c $(CONFIG_H) $(srcdir)/../system.h zipfile.h
......@@ -33,6 +33,8 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "jcf.h"
#include "obstack.h"
#include "toplev.h"
#include "output.h"
#include "parse.h"
static tree mangle_class_field PROTO ((tree class));
......@@ -95,8 +97,8 @@ identifier_subst (old_id, prefix, old_char, new_char, suffix)
tree
mangled_classname (prefix, type)
char *prefix;
tree type;
const char *prefix;
tree type;
{
tree ident = TYPE_NAME (type);
if (TREE_CODE (ident) != IDENTIFIER_NODE)
......@@ -354,6 +356,7 @@ add_interface (this_class, interface_class)
add_interface_do (basetype_vec, interface_class, i);
}
#if 0
/* Return the address of a pointer to the first FUNCTION_DECL
in the list (*LIST) whose DECL_NAME is NAME. */
......@@ -366,6 +369,7 @@ find_named_method (list, name)
list = &TREE_CHAIN (*list);
return list;
}
#endif
tree
build_java_method_type (fntype, this_class, access_flags)
......@@ -566,10 +570,10 @@ build_utf8_ref (name)
buf_ptr = &buf[strlen (buf)];
while (--name_len >= 0)
{
char c = *name_ptr++;
unsigned char c = *name_ptr++;
if (c & 0x80)
continue;
if (!isalpha(c) && !isdigit(c))
if (!ISALPHA(c) && !ISDIGIT(c))
c = '_';
*buf_ptr++ = c;
if (buf_ptr >= buf + 50)
......@@ -639,7 +643,7 @@ build_class_ref (type)
char buffer[25];
if (flag_emit_class_files)
{
char *prim_class_name;
const char *prim_class_name;
tree prim_class;
if (type == char_type_node)
prim_class_name = "java.lang.Character";
......@@ -1499,7 +1503,6 @@ layout_class_method (this_class, super_class, method_decl, dtable_count)
tree this_class, super_class, method_decl, dtable_count;
{
char *ptr;
char buf[8];
char *asm_name;
tree arg, arglist, t;
int method_name_needs_escapes = 0;
......
......@@ -113,7 +113,6 @@ find_local_variable (index, type, pc)
tree type;
int pc;
{
struct rtx_def *rtl = NULL;
tree decl = TREE_VEC_ELT (decl_map, index);
tree best = NULL_TREE;
while (decl != NULL_TREE)
......@@ -888,7 +887,6 @@ pushdecl (x)
{
char *file;
int line;
int different_binding_level = 0;
t = lookup_name_current_level (name);
if (t != 0 && t == error_mark_node)
......@@ -928,7 +926,6 @@ pushdecl (x)
{
/* Here to install a non-global value. */
tree oldlocal = IDENTIFIER_LOCAL_VALUE (name);
tree oldglobal = IDENTIFIER_GLOBAL_VALUE (name);
IDENTIFIER_LOCAL_VALUE (name) = x;
#if 0
......@@ -1047,7 +1044,7 @@ make_binding_level ()
void
pushlevel (unused)
int unused;
int unused ATTRIBUTE_UNUSED;
{
register struct binding_level *newlevel = NULL_BINDING_LEVEL;
......@@ -1378,7 +1375,7 @@ copy_lang_decl (node)
tree
maybe_build_cleanup (decl)
tree decl;
tree decl ATTRIBUTE_UNUSED;
{
/* There are no cleanups in Java (I think). */
return NULL_TREE;
......
......@@ -184,7 +184,7 @@ add_handler (start_pc, end_pc, handler, type)
/* if there are any handlers for this range, issue start of region */
void
expand_start_java_handler (range)
struct eh_range *range;
struct eh_range *range ATTRIBUTE_UNUSED;
{
expand_eh_region_start ();
}
......
......@@ -37,6 +37,7 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "java-except.h"
#include "parse.h"
#include "toplev.h"
#include "except.h"
static tree operand_type[59];
extern struct obstack permanent_obstack;
......@@ -242,7 +243,6 @@ pop_type (type)
tree type;
{
int n_words;
int i;
tree t;
if (TREE_CODE (type) == RECORD_TYPE)
type = promote_type (type);
......@@ -356,8 +356,6 @@ tree
pop_value (type)
tree type;
{
int n_words = 1 + TYPE_IS_WIDE (type);
int i;
type = pop_type (type);
if (quick_stack)
{
......@@ -846,7 +844,6 @@ expand_java_arrayload (lhs_type_node )
tree lhs_type_node;
{
tree load_node;
int convert;
tree index_node = pop_value (int_type_node);
tree array_node = pop_value (ptr_type_node);
......@@ -1747,18 +1744,14 @@ java_lang_expand_expr (exp, target, tmode, modifier)
enum machine_mode tmode;
enum expand_modifier modifier;
{
register rtx op0;
tree type = TREE_TYPE (exp);
register enum machine_mode mode = TYPE_MODE (type);
int unsignedp = TREE_UNSIGNED (type);
tree node, current;
tree current;
int has_finally_p;
switch (TREE_CODE (exp))
{
case NEW_ARRAY_INIT:
{
rtx tmp, elements;
rtx tmp;
tree array_type = TREE_TYPE (TREE_TYPE (exp));
tree element_type = TYPE_ARRAY_ELEMENT (array_type);
tree data_fld = TREE_CHAIN (TREE_CHAIN (TYPE_FIELDS (array_type)));
......@@ -1942,8 +1935,6 @@ expand_byte_code (jcf, method)
int i;
int saw_index;
unsigned char *linenumber_pointer;
struct eh_range *prev_eh_ranges = NULL_EH_RANGE;
struct eh_range *eh_ranges;
#undef RET /* Defined by config/i386/i386.h */
#undef AND /* Causes problems with opcodes for iand and land. */
......@@ -2190,7 +2181,7 @@ process_jvm_instruction (PC, byte_ops, length)
unsigned char* byte_ops;
long length;
{
char *opname; /* Temporary ??? */
const char *opname; /* Temporary ??? */
int oldpc = PC; /* PC at instruction start. */
/* If the instruction is at the beginning of a exception handler,
......
......@@ -42,10 +42,10 @@ FILE *out = NULL;
static int found_error = 0;
/* Directory to place resulting files in. Set by -d option. */
char *output_directory = "";
const char *output_directory = "";
/* Directory to place temporary file. Set by -td option. Currently unused. */
char *temp_directory = "/tmp";
const char *temp_directory = "/tmp";
/* Number of friend functions we have to declare. */
static int friend_count;
......@@ -100,7 +100,7 @@ static struct method_name *method_name_list;
static void print_field_info PROTO ((FILE *, JCF*, int, int, JCF_u2));
static void print_method_info PROTO ((FILE *, JCF*, int, int, JCF_u2));
static void print_c_decl PROTO ((FILE*, JCF*, int, int, JCF_u2, int, char *));
static void print_c_decl PROTO ((FILE*, JCF*, int, int, JCF_u2, int, const char *));
static void decompile_method PROTO ((FILE *, JCF *, int));
JCF_u2 current_field_name;
......@@ -423,7 +423,7 @@ DEFUN(print_method_info, (stream, jcf, name_index, sig_index, flags),
{
unsigned char *str;
int length, is_init = 0;
char *override = NULL;
const char *override = NULL;
method_declared = 0;
method_access = flags;
......@@ -557,7 +557,7 @@ decode_signature_piece (stream, signature, limit, need_space)
unsigned char *signature, *limit;
int *need_space;
{
char *ctype;
const char *ctype;
switch (signature[0])
{
......@@ -649,7 +649,7 @@ DEFUN(print_c_decl, (stream, jcf, name_index, signature_index, flags, is_init,
name_override),
FILE* stream AND JCF* jcf
AND int name_index AND int signature_index AND JCF_u2 flags
AND int is_init AND char *name_override)
AND int is_init AND const char *name_override)
{
if (JPOOL_TAG (jcf, signature_index) != CONSTANT_Utf8)
{
......@@ -734,7 +734,7 @@ DEFUN(print_c_decl, (stream, jcf, name_index, signature_index, flags, is_init,
void
DEFUN(print_mangled_classname, (stream, jcf, prefix, index),
FILE *stream AND JCF *jcf AND char *prefix AND int index)
FILE *stream AND JCF *jcf AND const char *prefix AND int index)
{
int name_index = JPOOL_USHORT1 (jcf, index);
fputs (prefix, stream);
......
......@@ -65,3 +65,9 @@ extern void method_init_exceptions PROTO ((void));
extern void emit_handlers PROTO ((void));
extern void maybe_start_try PROTO ((int));
extern void maybe_end_try PROTO ((int));
extern int add_handler PROTO ((int, int, tree, tree));
......@@ -512,7 +512,7 @@ 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 ((char*, tree));
extern tree mangled_classname PROTO ((const char*, tree));
extern tree lookup_label PROTO ((int));
extern tree pop_type PROTO ((tree));
extern void pop_argument_types PROTO ((tree));
......@@ -561,13 +561,35 @@ extern void emit_register_classes PROTO (());
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 VPROTO ((tree cl, char *msg, ...));
extern void parse_error_context PVPROTO ((tree cl, const char *, ...))
ATTRIBUTE_PRINTF_2;
extern tree build_primtype_type_ref PROTO ((char *));
extern tree java_get_real_method_name PROTO ((tree));
extern void finish_class PROTO ((tree));
extern void java_layout_seen_class_methods PROTO (());
extern void check_for_initialization PROTO ((tree));
extern tree pushdecl_top_level PROTO ((tree));
extern int alloc_class_constant PROTO ((tree));
extern int unicode_mangling_length PROTO ((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 *, unsigned char *, long));
extern void maybe_pushlevels PROTO ((int));
extern void maybe_poplevels PROTO ((int));
extern int process_jvm_instruction PROTO ((int, 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 int find_in_current_zip PROTO ((char *, int, struct JCF **));
extern void append_gpp_mangled_classtype PROTO ((struct obstack *, char *));
extern void emit_unicode_mangled_name PROTO ((struct obstack *, char *, int));
/* Access flags etc for a method (a FUNCTION_DECL): */
#define METHOD_PUBLIC(DECL) DECL_LANG_FLAG_1 (DECL)
......
......@@ -364,7 +364,7 @@ DEFUN(print_constant, (out, jcf, index, verbosity),
{
int j, n;
jlong num;
char *str;
const char *str;
int kind = JPOOL_TAG (jcf, index);
switch (kind)
{
......@@ -518,7 +518,7 @@ DEFUN(print_signature_type, (stream, ptr, limit),
{
case '[':
array_size = -1;
for ((*ptr)++; (*ptr) < limit && isdigit (**ptr); (*ptr)++)
for ((*ptr)++; (*ptr) < limit && ISDIGIT (**ptr); (*ptr)++)
{
int digit =
array_size = (array_size < 0 ? 0 : 10 * array_size) + *(*ptr) - '0';
......@@ -578,7 +578,6 @@ DEFUN(print_signature, (stream, jcf, signature_index, int options),
print_constant_terse (out, jcf, signature_index, CONSTANT_Utf8);
else
{
int j;
const unsigned char *str = JPOOL_UTF_DATA (jcf, signature_index);
int length = JPOOL_UTF_LENGTH (jcf, signature_index);
const unsigned char *limit;
......
......@@ -79,7 +79,7 @@ DEFUN(jcf_filbuf_from_stdio, (jcf, count),
count -= jcf->read_end - jcf->read_ptr;
if (count <= 0)
return 0;
if (fread (jcf->read_end, 1, count, file) != count)
if ((int) fread (jcf->read_end, 1, count, file) != count)
jcf_unexpected_eof (jcf, count);
jcf->read_end += count;
return 0;
......
......@@ -32,6 +32,7 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "java-except.h"
#include "input.h"
#include "java-tree.h"
#include "toplev.h"
/* A CONSTANT_Utf8 element is converted to an IDENTIFIER_NODE at parse time. */
#define JPOOL_UTF(JCF, INDEX) CPOOL_UTF(&(JCF)->cpool, INDEX)
......
......@@ -23,7 +23,6 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "config.h"
#include "system.h"
#include <string.h>
#include "tree.h"
#include "java-tree.h"
#include "jcf.h"
......@@ -33,8 +32,7 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "java-opcodes.h"
#include "parse.h" /* for BLOCK_EXPR_BODY */
#include "buffer.h"
#include <sys/stat.h>
#include "toplev.h"
#ifndef DIR_SEPARATOR
#define DIR_SEPARATOR '/'
......@@ -550,7 +548,6 @@ localvar_free (decl, state)
register struct localvar_info **ptr = &localvar_buffer [index];
register struct localvar_info *info = *ptr;
int wide = TYPE_IS_WIDE (TREE_TYPE (decl));
int i;
info->end_label = end_label;
......@@ -1054,7 +1051,6 @@ generate_bytecode_conditional (exp, true_label, false_label,
int true_branch_first;
struct jcf_partial *state;
{
int kind;
tree exp0, exp1, type;
int save_SP = state->code_SP;
enum java_opcode op, negop;
......
......@@ -19,22 +19,15 @@ along with GNU CC; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <stdio.h>
#include <stdlib.h>
#ifdef __STDC__
#include <stdarg.h>
#else
#include <varargs.h>
#endif
#include "config.h"
#include "system.h"
#include "gansidecl.h" /* Definitions of PROTO and VPROTO */
#include "obstack.h" /* We use obstacks in lex.c */
void fatal VPROTO((char *s, ...));
void warning VPROTO((char *s, ...));
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));
extern void reset_report PROTO ((void));
extern PTR xmalloc PROTO((size_t));
#define JC1_LITE
#include "parse.h"
......@@ -55,10 +48,9 @@ int flag_list_filename = 0;
/* jc1-lite main entry point */
int
main (argc, argv, envp)
int argc;
char **argv;
char **envp;
main (argc, argv)
int argc;
char **argv;
{
int i = 1;
char *output_file = NULL;
......@@ -109,10 +101,10 @@ main (argc, argv, envp)
/* Check on bad usage */
if (flag_find_main && flag_dump_class)
fatal ("Options `--print-main' and `--list-class' can't be turned on "
"at the same time", argv [0]);
"at the same time");
if (output_file && !(out = fopen (output_file, "w")))
fatal ("Can't open output file `%s'", argv [0], output_file);
fatal ("Can't open output file `%s'", output_file);
ft = ftell (out);
......@@ -134,7 +126,7 @@ main (argc, argv, envp)
reset_report ();
}
else
fatal ("File not found `%s'", argv [0], argv [i]);
fatal ("File not found `%s'", argv [i]);
}
/* Flush and close */
......@@ -150,17 +142,17 @@ main (argc, argv, envp)
functions */
void
fatal VPROTO((char *s, ...))
fatal VPROTO((const char *s, ...))
{
#ifndef __STDC__
char *s;
#ifndef ANSI_PROTOTYPES
const char *s;
#endif
va_list ap;
VA_START (ap, s);
#ifndef __STDC__
s = va_arg (ap, char *);
#ifndef ANSI_PROTOTYPES
s = va_arg (ap, const char *);
#endif
fprintf (stderr, "%s: error: ", exec_name);
......@@ -171,17 +163,17 @@ fatal VPROTO((char *s, ...))
}
void
warning VPROTO((char *s, ...))
warning VPROTO((const char *s, ...))
{
#ifndef __STDC__
char *s;
#ifndef ANSI_PROTOTYPES
const char *s;
#endif
va_list ap;
VA_START (ap, s);
#ifndef __STDC__
s = va_arg (ap, char *);
#ifndef ANSI_PROTOTYPES
s = va_arg (ap, const char *);
#endif
fprintf (stderr, "%s: warning: ", exec_name);
......
......@@ -65,7 +65,7 @@ int java_tree_code_length[] = {
Used for printing out the tree and error messages. */
#define DEFTREECODE(SYM, NAME, TYPE, LEN) NAME,
char *java_tree_code_name[] = {
const char *java_tree_code_name[] = {
"@@dummy",
#include "java-tree.def"
};
......
......@@ -29,6 +29,7 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "system.h"
#include "jcf.h"
#include "obstack.h"
#include "toplev.h"
/* Assuming (NAME, LEN) is a Utf8-encoding string, calculate
the length of the string as mangled (a la g++) including Unicode escapes.
......@@ -70,6 +71,7 @@ void
emit_unicode_mangled_name (obstack, name, len)
struct obstack *obstack;
char *name;
int len;
{
unsigned char *ptr;
unsigned char *limit = (unsigned char *)name + len;
......
......@@ -162,8 +162,9 @@ 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 VPROTO ((tree cl, char *msg, ...));
static void issue_warning_error_from_context PROTO ((tree, char *msg, va_list));
static void parse_warning_context PVPROTO ((tree cl, const char *msg, ...))
ATTRIBUTE_PRINTF_2;
static void issue_warning_error_from_context PROTO ((tree, const char *msg, va_list));
static tree parse_jdk1_1_error PROTO ((char *));
static void complete_class_report_errors PROTO ((jdep *));
static int process_imports PROTO ((void));
......@@ -361,7 +362,7 @@ static tree wfl_to_string = NULL_TREE;
/* The "java.lang" import qualified name. */
static tree java_lang_id = NULL_TREE;
#line 289 "./parse.y"
#line 290 "./parse.y"
typedef union {
tree node;
int sub_token;
......@@ -665,56 +666,56 @@ static const short yyrhs[] = { 123,
#if YYDEBUG != 0
static const short yyrline[] = { 0,
439, 445, 447, 448, 449, 450, 451, 455, 457, 460,
462, 463, 466, 468, 471, 475, 479, 483, 489, 491,
493, 495, 500, 502, 505, 509, 514, 519, 521, 522,
523, 524, 525, 526, 527, 530, 535, 541, 543, 546,
549, 551, 555, 557, 560, 587, 589, 593, 606, 608,
612, 619, 620, 622, 632, 637, 652, 656, 659, 662,
665, 667, 669, 671, 675, 677, 679, 681, 685, 687,
689, 696, 702, 707, 711, 714, 718, 720, 723, 725,
726, 727, 731, 733, 734, 736, 741, 744, 754, 757,
759, 763, 766, 773, 779, 787, 789, 791, 793, 795,
799, 801, 805, 812, 813, 817, 820, 822, 824, 826,
828, 830, 832, 834, 841, 844, 846, 855, 857, 861,
866, 871, 875, 880, 882, 884, 891, 893, 895, 899,
902, 904, 908, 910, 911, 916, 921, 927, 935, 942,
945, 948, 952, 955, 959, 968, 970, 972, 977, 984,
992, 994, 998, 1006, 1017, 1021, 1024, 1027, 1030, 1033,
1036, 1039, 1042, 1044, 1048, 1054, 1059, 1061, 1065, 1068,
1072, 1074, 1077, 1079, 1080, 1082, 1086, 1090, 1096, 1101,
1104, 1106, 1110, 1116, 1120, 1125, 1128, 1132, 1137, 1145,
1147, 1150, 1152, 1154, 1158, 1162, 1165, 1169, 1171, 1172,
1173, 1174, 1175, 1185, 1187, 1188, 1189, 1190, 1193, 1195,
1196, 1197, 1198, 1199, 1200, 1201, 1202, 1203, 1204, 1207,
1212, 1223, 1230, 1234, 1245, 1255, 1261, 1267, 1273, 1275,
1281, 1283, 1289, 1291, 1293, 1295, 1297, 1301, 1303, 1304,
1305, 1306, 1307, 1308, 1311, 1314, 1316, 1318, 1322, 1327,
1332, 1338, 1348, 1354, 1356, 1358, 1365, 1368, 1370, 1372,
1376, 1378, 1381, 1385, 1387, 1390, 1397, 1403, 1405, 1407,
1411, 1419, 1422, 1424, 1426, 1430, 1435, 1444, 1449, 1452,
1459, 1461, 1463, 1467, 1470, 1479, 1486, 1488, 1492, 1505,
1507, 1513, 1519, 1523, 1525, 1529, 1532, 1534, 1538, 1541,
1543, 1545, 1549, 1552, 1554, 1556, 1560, 1563, 1565, 1567,
1571, 1577, 1579, 1583, 1590, 1592, 1594, 1596, 1600, 1608,
1611, 1613, 1615, 1619, 1621, 1628, 1636, 1653, 1655, 1657,
1661, 1667, 1672, 1674, 1677, 1679, 1681, 1683, 1684, 1685,
1686, 1690, 1692, 1694, 1699, 1701, 1703, 1705, 1707, 1711,
1714, 1719, 1721, 1726, 1727, 1728, 1729, 1730, 1732, 1734,
1736, 1738, 1740, 1744, 1746, 1749, 1755, 1760, 1764, 1767,
1769, 1771, 1775, 1777, 1779, 1781, 1785, 1788, 1792, 1798,
1800, 1808, 1835, 1837, 1841, 1846, 1854, 1858, 1861, 1863,
1874, 1885, 1890, 1899, 1901, 1905, 1908, 1910, 1915, 1920,
1925, 1932, 1934, 1935, 1936, 1939, 1944, 1949, 1951, 1952,
1954, 1956, 1957, 1959, 1963, 1966, 1970, 1973, 1977, 1979,
1981, 1983, 1984, 1986, 1990, 1999, 2001, 2003, 2016, 2018,
2024, 2026, 2028, 2032, 2034, 2039, 2044, 2049, 2051, 2053,
2057, 2059, 2064, 2069, 2071, 2075, 2077, 2082, 2087, 2092,
2094, 2096, 2100, 2102, 2107, 2112, 2117, 2122, 2124, 2126,
2128, 2130, 2132, 2136, 2138, 2143, 2148, 2150, 2154, 2156,
2161, 2165, 2167, 2172, 2176, 2178, 2183, 2187, 2189, 2194,
2198, 2200, 2205, 2209, 2211, 2216, 2222, 2224, 2228, 2230,
2233, 2236, 2244, 2246, 2247, 2250, 2252, 2255, 2259
440, 446, 448, 449, 450, 451, 452, 456, 458, 461,
463, 464, 467, 469, 472, 476, 480, 484, 490, 492,
494, 496, 501, 503, 506, 510, 515, 520, 522, 523,
524, 525, 526, 527, 528, 531, 536, 542, 544, 547,
550, 552, 556, 558, 561, 588, 590, 594, 607, 609,
613, 620, 621, 623, 633, 638, 653, 657, 660, 663,
666, 668, 670, 672, 676, 678, 680, 682, 686, 688,
690, 697, 703, 708, 712, 715, 719, 721, 724, 726,
727, 728, 732, 734, 735, 737, 742, 745, 755, 758,
760, 764, 767, 774, 780, 788, 790, 792, 794, 796,
800, 802, 806, 813, 814, 818, 821, 823, 825, 827,
829, 831, 833, 835, 842, 845, 847, 856, 858, 862,
867, 872, 876, 881, 883, 885, 892, 894, 896, 900,
903, 905, 909, 911, 912, 917, 922, 928, 936, 943,
946, 949, 953, 956, 960, 969, 971, 973, 978, 985,
993, 995, 999, 1007, 1018, 1022, 1025, 1028, 1031, 1034,
1037, 1040, 1043, 1045, 1049, 1055, 1060, 1062, 1066, 1069,
1073, 1075, 1078, 1080, 1081, 1083, 1087, 1091, 1097, 1102,
1105, 1107, 1111, 1117, 1121, 1126, 1129, 1133, 1138, 1146,
1148, 1151, 1153, 1155, 1159, 1163, 1166, 1170, 1172, 1173,
1174, 1175, 1176, 1186, 1188, 1189, 1190, 1191, 1194, 1196,
1197, 1198, 1199, 1200, 1201, 1202, 1203, 1204, 1205, 1208,
1213, 1224, 1231, 1235, 1246, 1256, 1262, 1268, 1274, 1276,
1282, 1284, 1290, 1292, 1294, 1296, 1298, 1302, 1304, 1305,
1306, 1307, 1308, 1309, 1312, 1315, 1317, 1319, 1323, 1328,
1333, 1339, 1349, 1355, 1357, 1359, 1366, 1369, 1371, 1373,
1377, 1379, 1382, 1386, 1388, 1391, 1398, 1404, 1406, 1408,
1412, 1420, 1423, 1425, 1427, 1431, 1436, 1445, 1450, 1453,
1460, 1462, 1464, 1468, 1471, 1480, 1487, 1489, 1493, 1506,
1508, 1514, 1520, 1524, 1526, 1530, 1533, 1535, 1539, 1542,
1544, 1546, 1550, 1553, 1555, 1557, 1561, 1564, 1566, 1568,
1572, 1578, 1580, 1584, 1591, 1593, 1595, 1597, 1601, 1609,
1612, 1614, 1616, 1620, 1622, 1629, 1637, 1654, 1656, 1658,
1662, 1668, 1673, 1675, 1678, 1680, 1682, 1684, 1685, 1686,
1687, 1691, 1693, 1695, 1700, 1702, 1704, 1706, 1708, 1712,
1715, 1720, 1722, 1727, 1728, 1729, 1730, 1731, 1733, 1735,
1737, 1739, 1741, 1745, 1747, 1750, 1756, 1761, 1765, 1768,
1770, 1772, 1776, 1778, 1780, 1782, 1786, 1789, 1793, 1799,
1801, 1809, 1836, 1838, 1842, 1847, 1855, 1859, 1862, 1864,
1875, 1886, 1891, 1900, 1902, 1906, 1909, 1911, 1916, 1921,
1926, 1933, 1935, 1936, 1937, 1940, 1945, 1950, 1952, 1953,
1955, 1957, 1958, 1960, 1964, 1967, 1971, 1974, 1978, 1980,
1982, 1984, 1985, 1987, 1991, 2000, 2002, 2004, 2017, 2019,
2025, 2027, 2029, 2033, 2035, 2040, 2045, 2050, 2052, 2054,
2058, 2060, 2065, 2070, 2072, 2076, 2078, 2083, 2088, 2093,
2095, 2097, 2101, 2103, 2108, 2113, 2118, 2123, 2125, 2127,
2129, 2131, 2133, 2137, 2139, 2144, 2149, 2151, 2155, 2157,
2162, 2166, 2168, 2173, 2177, 2179, 2184, 2188, 2190, 2195,
2199, 2201, 2206, 2210, 2212, 2217, 2223, 2225, 2229, 2231,
2234, 2237, 2245, 2247, 2248, 2251, 2253, 2256, 2260
};
#endif
......@@ -2250,7 +2251,7 @@ static const short yycheck[] = { 3,
#define YYPURE 1
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
#line 3 "/usr/cygnus/gnupro-98r2/share/bison.simple"
#line 3 "/usr/local/gnu/share/bison.simple"
/* Skeleton output parser for bison,
Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
......@@ -2443,7 +2444,7 @@ __yy_memcpy (char *to, char *from, int count)
#endif
#endif
#line 196 "/usr/cygnus/gnupro-98r2/share/bison.simple"
#line 196 "/usr/local/gnu/share/bison.simple"
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
into yyparse. The argument should have type void *.
......@@ -2748,66 +2749,66 @@ yyreduce:
switch (yyn) {
case 1:
#line 441 "./parse.y"
#line 442 "./parse.y"
{;
break;}
case 18:
#line 485 "./parse.y"
#line 486 "./parse.y"
{
yyval.node = build_java_array_type (yyvsp[-2].node, -1);
CLASS_LOADED_P (yyval.node) = 1;
;
break;}
case 19:
#line 490 "./parse.y"
#line 491 "./parse.y"
{ yyval.node = build_unresolved_array_type (yyvsp[-2].node); ;
break;}
case 20:
#line 492 "./parse.y"
#line 493 "./parse.y"
{ yyval.node = build_unresolved_array_type (yyvsp[-2].node); ;
break;}
case 21:
#line 494 "./parse.y"
#line 495 "./parse.y"
{RULE ("']' expected"); RECOVER;;
break;}
case 22:
#line 496 "./parse.y"
#line 497 "./parse.y"
{RULE ("']' expected"); RECOVER;;
break;}
case 26:
#line 511 "./parse.y"
#line 512 "./parse.y"
{ yyval.node = make_qualified_name (yyvsp[-2].node, yyvsp[0].node, yyvsp[-1].operator.location); ;
break;}
case 28:
#line 520 "./parse.y"
#line 521 "./parse.y"
{yyval.node = NULL;;
break;}
case 36:
#line 532 "./parse.y"
#line 533 "./parse.y"
{
yyval.node = NULL;
;
break;}
case 37:
#line 536 "./parse.y"
#line 537 "./parse.y"
{
yyval.node = NULL;
;
break;}
case 40:
#line 548 "./parse.y"
#line 549 "./parse.y"
{ ctxp->package = EXPR_WFL_NODE (yyvsp[-1].node); ;
break;}
case 41:
#line 550 "./parse.y"
#line 551 "./parse.y"
{yyerror ("Missing name"); RECOVER;;
break;}
case 42:
#line 552 "./parse.y"
#line 553 "./parse.y"
{yyerror ("';' expected"); RECOVER;;
break;}
case 45:
#line 562 "./parse.y"
#line 563 "./parse.y"
{
tree name = EXPR_WFL_NODE (yyvsp[-1].node), node, last_name;
int i = IDENTIFIER_LENGTH (name)-1;
......@@ -2835,15 +2836,15 @@ case 45:
;
break;}
case 46:
#line 588 "./parse.y"
#line 589 "./parse.y"
{yyerror ("Missing name"); RECOVER;;
break;}
case 47:
#line 590 "./parse.y"
#line 591 "./parse.y"
{yyerror ("';' expected"); RECOVER;;
break;}
case 48:
#line 595 "./parse.y"
#line 596 "./parse.y"
{
tree name = EXPR_WFL_NODE (yyvsp[-3].node);
/* Don't import java.lang.* twice. */
......@@ -2857,15 +2858,15 @@ case 48:
;
break;}
case 49:
#line 607 "./parse.y"
#line 608 "./parse.y"
{yyerror ("'*' expected"); RECOVER;;
break;}
case 50:
#line 609 "./parse.y"
#line 610 "./parse.y"
{yyerror ("';' expected"); RECOVER;;
break;}
case 51:
#line 614 "./parse.y"
#line 615 "./parse.y"
{
maybe_generate_finit ();
maybe_generate_clinit ();
......@@ -2873,24 +2874,24 @@ case 51:
;
break;}
case 53:
#line 621 "./parse.y"
#line 622 "./parse.y"
{ yyval.node = NULL; ;
break;}
case 54:
#line 623 "./parse.y"
#line 624 "./parse.y"
{
YYERROR_NOW;
yyerror ("Class or interface declaration expected");
;
break;}
case 55:
#line 634 "./parse.y"
#line 635 "./parse.y"
{
yyval.value = (1 << yyvsp[0].value);
;
break;}
case 56:
#line 638 "./parse.y"
#line 639 "./parse.y"
{
int acc = (1 << yyvsp[0].value);
if (yyval.value & acc)
......@@ -2904,116 +2905,116 @@ case 56:
;
break;}
case 57:
#line 654 "./parse.y"
#line 655 "./parse.y"
{ create_class (yyvsp[-4].value, yyvsp[-2].node, yyvsp[-1].node, yyvsp[0].node); ;
break;}
case 58:
#line 656 "./parse.y"
#line 657 "./parse.y"
{
yyval.node = yyvsp[0].node;
;
break;}
case 59:
#line 660 "./parse.y"
#line 661 "./parse.y"
{ create_class (0, yyvsp[-2].node, yyvsp[-1].node, yyvsp[0].node); ;
break;}
case 60:
#line 662 "./parse.y"
#line 663 "./parse.y"
{
yyval.node = yyvsp[0].node;
;
break;}
case 61:
#line 666 "./parse.y"
#line 667 "./parse.y"
{yyerror ("Missing class name"); RECOVER;;
break;}
case 62:
#line 668 "./parse.y"
#line 669 "./parse.y"
{yyerror ("Missing class name"); RECOVER;;
break;}
case 63:
#line 670 "./parse.y"
#line 671 "./parse.y"
{if (!ctxp->class_err) yyerror ("'{' expected"); DRECOVER(class1);;
break;}
case 64:
#line 672 "./parse.y"
#line 673 "./parse.y"
{if (!ctxp->class_err) yyerror ("'{' expected"); RECOVER;;
break;}
case 65:
#line 676 "./parse.y"
#line 677 "./parse.y"
{ yyval.node = NULL; ;
break;}
case 66:
#line 678 "./parse.y"
#line 679 "./parse.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 67:
#line 680 "./parse.y"
#line 681 "./parse.y"
{yyerror ("'{' expected"); ctxp->class_err=1;;
break;}
case 68:
#line 682 "./parse.y"
#line 683 "./parse.y"
{yyerror ("Missing super class name"); ctxp->class_err=1;;
break;}
case 69:
#line 686 "./parse.y"
#line 687 "./parse.y"
{ yyval.node = NULL_TREE; ;
break;}
case 70:
#line 688 "./parse.y"
#line 689 "./parse.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 71:
#line 690 "./parse.y"
#line 691 "./parse.y"
{
ctxp->class_err=1;
yyerror ("Missing interface name");
;
break;}
case 72:
#line 698 "./parse.y"
#line 699 "./parse.y"
{
ctxp->interface_number = 1;
yyval.node = build_tree_list (yyvsp[0].node, NULL_TREE);
;
break;}
case 73:
#line 703 "./parse.y"
#line 704 "./parse.y"
{
ctxp->interface_number++;
yyval.node = chainon (yyvsp[-2].node, build_tree_list (yyvsp[0].node, NULL_TREE));
;
break;}
case 74:
#line 708 "./parse.y"
#line 709 "./parse.y"
{yyerror ("Missing interface name"); RECOVER;;
break;}
case 75:
#line 713 "./parse.y"
#line 714 "./parse.y"
{ yyval.node = ctxp->current_parsed_class; ;
break;}
case 76:
#line 715 "./parse.y"
#line 716 "./parse.y"
{ yyval.node = ctxp->current_parsed_class; ;
break;}
case 82:
#line 728 "./parse.y"
#line 729 "./parse.y"
{ yyval.node = parse_jdk1_1_error ("instance initializer"); ;
break;}
case 85:
#line 735 "./parse.y"
#line 736 "./parse.y"
{ yyval.node = parse_jdk1_1_error ("inner classe declaration"); ;
break;}
case 86:
#line 737 "./parse.y"
#line 738 "./parse.y"
{ yyval.node = parse_jdk1_1_error ("inner interface declaration"); ;
break;}
case 87:
#line 743 "./parse.y"
#line 744 "./parse.y"
{ register_fields (0, yyvsp[-2].node, yyvsp[-1].node); ;
break;}
case 88:
#line 745 "./parse.y"
#line 746 "./parse.y"
{
check_modifiers
("Illegal modifier `%s' for field declaration",
......@@ -3023,19 +3024,19 @@ case 88:
;
break;}
case 90:
#line 758 "./parse.y"
#line 759 "./parse.y"
{ yyval.node = chainon (yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 91:
#line 760 "./parse.y"
#line 761 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 92:
#line 765 "./parse.y"
#line 766 "./parse.y"
{ yyval.node = build_tree_list (yyvsp[0].node, NULL_TREE); ;
break;}
case 93:
#line 767 "./parse.y"
#line 768 "./parse.y"
{
if (java_error_count)
yyvsp[0].node = NULL_TREE;
......@@ -3044,7 +3045,7 @@ case 93:
;
break;}
case 94:
#line 774 "./parse.y"
#line 775 "./parse.y"
{
yyerror ("Missing variable initializer");
yyval.node = build_tree_list (yyvsp[-2].node, NULL_TREE);
......@@ -3052,7 +3053,7 @@ case 94:
;
break;}
case 95:
#line 780 "./parse.y"
#line 781 "./parse.y"
{
yyerror ("';' expected");
yyval.node = build_tree_list (yyvsp[-3].node, NULL_TREE);
......@@ -3060,85 +3061,85 @@ case 95:
;
break;}
case 97:
#line 790 "./parse.y"
#line 791 "./parse.y"
{ yyval.node = build_unresolved_array_type (yyvsp[-2].node); ;
break;}
case 98:
#line 792 "./parse.y"
#line 793 "./parse.y"
{yyerror ("Invalid declaration"); DRECOVER(vdi);;
break;}
case 99:
#line 794 "./parse.y"
#line 795 "./parse.y"
{yyerror ("']' expected"); DRECOVER(vdi);;
break;}
case 100:
#line 796 "./parse.y"
#line 797 "./parse.y"
{yyerror ("Unbalanced ']'"); DRECOVER(vdi);;
break;}
case 103:
#line 807 "./parse.y"
#line 808 "./parse.y"
{
current_function_decl = yyvsp[0].node;
source_start_java_method (current_function_decl);
;
break;}
case 104:
#line 812 "./parse.y"
#line 813 "./parse.y"
{ complete_method_declaration (yyvsp[0].node); ;
break;}
case 105:
#line 814 "./parse.y"
#line 815 "./parse.y"
{YYNOT_TWICE yyerror ("'{' expected"); RECOVER;;
break;}
case 106:
#line 819 "./parse.y"
#line 820 "./parse.y"
{ yyval.node = method_header (0, yyvsp[-2].node, yyvsp[-1].node, yyvsp[0].node); ;
break;}
case 107:
#line 821 "./parse.y"
#line 822 "./parse.y"
{ yyval.node = method_header (0, void_type_node, yyvsp[-1].node, yyvsp[0].node); ;
break;}
case 108:
#line 823 "./parse.y"
#line 824 "./parse.y"
{ yyval.node = method_header (yyvsp[-3].value, yyvsp[-2].node, yyvsp[-1].node, yyvsp[0].node); ;
break;}
case 109:
#line 825 "./parse.y"
#line 826 "./parse.y"
{ yyval.node = method_header (yyvsp[-3].value, void_type_node, yyvsp[-1].node, yyvsp[0].node); ;
break;}
case 110:
#line 827 "./parse.y"
#line 828 "./parse.y"
{RECOVER;;
break;}
case 111:
#line 829 "./parse.y"
#line 830 "./parse.y"
{RECOVER;;
break;}
case 112:
#line 831 "./parse.y"
#line 832 "./parse.y"
{yyerror ("Identifier expected"); RECOVER;;
break;}
case 113:
#line 833 "./parse.y"
#line 834 "./parse.y"
{yyerror ("Identifier expected"); RECOVER;;
break;}
case 114:
#line 835 "./parse.y"
#line 836 "./parse.y"
{
yyerror ("Invalid method declaration, return type required");
RECOVER;
;
break;}
case 115:
#line 843 "./parse.y"
#line 844 "./parse.y"
{ yyval.node = method_declarator (yyvsp[-2].node, NULL_TREE); ;
break;}
case 116:
#line 845 "./parse.y"
#line 846 "./parse.y"
{ yyval.node = method_declarator (yyvsp[-3].node, yyvsp[-1].node); ;
break;}
case 117:
#line 847 "./parse.y"
#line 848 "./parse.y"
{
EXPR_WFL_LINECOL (wfl_operator) = yyvsp[-1].operator.location;
TREE_PURPOSE (yyvsp[-2].node) =
......@@ -3149,145 +3150,145 @@ case 117:
;
break;}
case 118:
#line 856 "./parse.y"
#line 857 "./parse.y"
{yyerror ("')' expected"); DRECOVER(method_declarator);;
break;}
case 119:
#line 858 "./parse.y"
#line 859 "./parse.y"
{yyerror ("']' expected"); RECOVER;;
break;}
case 120:
#line 863 "./parse.y"
#line 864 "./parse.y"
{
ctxp->formal_parameter_number = 1;
;
break;}
case 121:
#line 867 "./parse.y"
#line 868 "./parse.y"
{
ctxp->formal_parameter_number += 1;
yyval.node = chainon (yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 122:
#line 872 "./parse.y"
#line 873 "./parse.y"
{yyerror ("Missing formal parameter term"); RECOVER;;
break;}
case 123:
#line 877 "./parse.y"
#line 878 "./parse.y"
{
yyval.node = build_tree_list (yyvsp[0].node, yyvsp[-1].node);
;
break;}
case 124:
#line 881 "./parse.y"
#line 882 "./parse.y"
{ yyval.node = parse_jdk1_1_error ("final parameters"); ;
break;}
case 125:
#line 883 "./parse.y"
#line 884 "./parse.y"
{yyerror ("Missing identifier"); RECOVER;;
break;}
case 126:
#line 885 "./parse.y"
#line 886 "./parse.y"
{
SOURCE_FRONTEND_DEBUG (("Modifiers: %d", yyvsp[-2].value));
yyerror ("Missing identifier"); RECOVER;
;
break;}
case 127:
#line 892 "./parse.y"
#line 893 "./parse.y"
{ yyval.node = NULL_TREE; ;
break;}
case 128:
#line 894 "./parse.y"
#line 895 "./parse.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 129:
#line 896 "./parse.y"
#line 897 "./parse.y"
{yyerror ("Missing class type term"); RECOVER;;
break;}
case 130:
#line 901 "./parse.y"
#line 902 "./parse.y"
{ yyval.node = build_tree_list (yyvsp[0].node, yyvsp[0].node); ;
break;}
case 131:
#line 903 "./parse.y"
#line 904 "./parse.y"
{ yyval.node = tree_cons (yyvsp[0].node, yyvsp[0].node, yyvsp[-2].node); ;
break;}
case 132:
#line 905 "./parse.y"
#line 906 "./parse.y"
{yyerror ("Missing class type term"); RECOVER;;
break;}
case 135:
#line 912 "./parse.y"
#line 913 "./parse.y"
{ yyval.node = NULL_TREE; ;
break;}
case 136:
#line 918 "./parse.y"
#line 919 "./parse.y"
{
RULE ("STATIC_INITIALIZER");
;
break;}
case 137:
#line 922 "./parse.y"
#line 923 "./parse.y"
{
RULE ("STATIC_INITIALIZER");
;
break;}
case 138:
#line 929 "./parse.y"
#line 930 "./parse.y"
{
SOURCE_FRONTEND_DEBUG (("Modifiers: %d", yyvsp[0].value));
;
break;}
case 139:
#line 937 "./parse.y"
#line 938 "./parse.y"
{
current_function_decl = yyvsp[0].node;
source_start_java_method (current_function_decl);
;
break;}
case 140:
#line 942 "./parse.y"
#line 943 "./parse.y"
{ complete_method_declaration (yyvsp[0].node); ;
break;}
case 141:
#line 947 "./parse.y"
#line 948 "./parse.y"
{ yyval.node = method_header (0, NULL_TREE, yyvsp[-1].node, yyvsp[0].node); ;
break;}
case 142:
#line 949 "./parse.y"
#line 950 "./parse.y"
{ yyval.node = method_header (yyvsp[-2].value, NULL_TREE, yyvsp[-1].node, yyvsp[0].node); ;
break;}
case 143:
#line 954 "./parse.y"
#line 955 "./parse.y"
{ yyval.node = method_declarator (yyvsp[-2].node, NULL_TREE); ;
break;}
case 144:
#line 956 "./parse.y"
#line 957 "./parse.y"
{ yyval.node = method_declarator (yyvsp[-3].node, yyvsp[-1].node); ;
break;}
case 145:
#line 964 "./parse.y"
#line 965 "./parse.y"
{
BLOCK_EXPR_BODY (yyvsp[0].node) = empty_stmt_node;
yyval.node = yyvsp[0].node;
;
break;}
case 146:
#line 969 "./parse.y"
#line 970 "./parse.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 147:
#line 971 "./parse.y"
#line 972 "./parse.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 148:
#line 973 "./parse.y"
#line 974 "./parse.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 149:
#line 979 "./parse.y"
#line 980 "./parse.y"
{
yyval.node = build_method_invocation (yyvsp[-3].node, NULL_TREE);
yyval.node = build_debugable_stmt (EXPR_WFL_LINECOL (yyvsp[-3].node), yyval.node);
......@@ -3295,7 +3296,7 @@ case 149:
;
break;}
case 150:
#line 985 "./parse.y"
#line 986 "./parse.y"
{
yyval.node = build_method_invocation (yyvsp[-4].node, yyvsp[-2].node);
yyval.node = build_debugable_stmt (EXPR_WFL_LINECOL (yyvsp[-4].node), yyval.node);
......@@ -3303,15 +3304,15 @@ case 150:
;
break;}
case 151:
#line 993 "./parse.y"
#line 994 "./parse.y"
{yyval.node = parse_jdk1_1_error ("explicit constructor invocation"); ;
break;}
case 152:
#line 995 "./parse.y"
#line 996 "./parse.y"
{yyval.node = parse_jdk1_1_error ("explicit constructor invocation"); ;
break;}
case 153:
#line 1000 "./parse.y"
#line 1001 "./parse.y"
{
tree wfl = build_wfl_node (this_identifier_node,
input_filename, 0, 0);
......@@ -3320,7 +3321,7 @@ case 153:
;
break;}
case 154:
#line 1007 "./parse.y"
#line 1008 "./parse.y"
{
tree wfl = build_wfl_node (super_identifier_node,
input_filename, 0, 0);
......@@ -3329,168 +3330,168 @@ case 154:
;
break;}
case 155:
#line 1019 "./parse.y"
#line 1020 "./parse.y"
{ create_interface (0, yyvsp[0].node, NULL_TREE); ;
break;}
case 156:
#line 1021 "./parse.y"
#line 1022 "./parse.y"
{
yyval.node = yyvsp[0].node;
;
break;}
case 157:
#line 1025 "./parse.y"
#line 1026 "./parse.y"
{ create_interface (yyvsp[-2].value, yyvsp[0].node, NULL_TREE); ;
break;}
case 158:
#line 1027 "./parse.y"
#line 1028 "./parse.y"
{
yyval.node = yyvsp[0].node;
;
break;}
case 159:
#line 1031 "./parse.y"
#line 1032 "./parse.y"
{ create_interface (0, yyvsp[-1].node, yyvsp[0].node); ;
break;}
case 160:
#line 1033 "./parse.y"
#line 1034 "./parse.y"
{
yyval.node = yyvsp[0].node;
;
break;}
case 161:
#line 1037 "./parse.y"
#line 1038 "./parse.y"
{ create_interface (yyvsp[-3].value, yyvsp[-1].node, yyvsp[0].node); ;
break;}
case 162:
#line 1039 "./parse.y"
#line 1040 "./parse.y"
{
yyval.node = yyvsp[0].node;
;
break;}
case 163:
#line 1043 "./parse.y"
#line 1044 "./parse.y"
{yyerror ("(here)'{' expected"); RECOVER;;
break;}
case 164:
#line 1045 "./parse.y"
#line 1046 "./parse.y"
{yyerror ("(there)'{' expected"); RECOVER;;
break;}
case 165:
#line 1050 "./parse.y"
#line 1051 "./parse.y"
{
ctxp->interface_number = 1;
yyval.node = build_tree_list (yyvsp[0].node, NULL_TREE);
;
break;}
case 166:
#line 1055 "./parse.y"
#line 1056 "./parse.y"
{
ctxp->interface_number++;
yyval.node = chainon (yyvsp[-2].node, build_tree_list (yyvsp[0].node, NULL_TREE));
;
break;}
case 167:
#line 1060 "./parse.y"
#line 1061 "./parse.y"
{yyerror ("Invalid interface type"); RECOVER;;
break;}
case 168:
#line 1062 "./parse.y"
#line 1063 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 169:
#line 1067 "./parse.y"
#line 1068 "./parse.y"
{ yyval.node = NULL_TREE; ;
break;}
case 170:
#line 1069 "./parse.y"
#line 1070 "./parse.y"
{ yyval.node = NULL_TREE; ;
break;}
case 175:
#line 1081 "./parse.y"
#line 1082 "./parse.y"
{ yyval.node = parse_jdk1_1_error ("inner class declaration"); ;
break;}
case 176:
#line 1083 "./parse.y"
#line 1084 "./parse.y"
{ yyval.node = parse_jdk1_1_error ("inner interface declaration"); ;
break;}
case 178:
#line 1092 "./parse.y"
#line 1093 "./parse.y"
{
check_abstract_method_header (yyvsp[-1].node);
current_function_decl = NULL_TREE; /* FIXME ? */
;
break;}
case 179:
#line 1097 "./parse.y"
#line 1098 "./parse.y"
{yyerror ("';' expected"); RECOVER;;
break;}
case 180:
#line 1103 "./parse.y"
#line 1104 "./parse.y"
{ yyval.node = build_new_array_init (yyvsp[-1].operator.location, NULL_TREE); ;
break;}
case 181:
#line 1105 "./parse.y"
#line 1106 "./parse.y"
{ yyval.node = build_new_array_init (yyvsp[-2].operator.location, yyvsp[-1].node); ;
break;}
case 182:
#line 1107 "./parse.y"
#line 1108 "./parse.y"
{ yyval.node = build_new_array_init (yyvsp[-3].operator.location, yyvsp[-2].node); ;
break;}
case 183:
#line 1112 "./parse.y"
#line 1113 "./parse.y"
{
yyval.node = tree_cons (maybe_build_array_element_wfl (yyvsp[0].node),
yyvsp[0].node, NULL_TREE);
;
break;}
case 184:
#line 1117 "./parse.y"
#line 1118 "./parse.y"
{
yyval.node = tree_cons (maybe_build_array_element_wfl (yyvsp[0].node), yyvsp[0].node, yyvsp[-2].node);
;
break;}
case 185:
#line 1121 "./parse.y"
#line 1122 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 186:
#line 1127 "./parse.y"
#line 1128 "./parse.y"
{ yyval.node = empty_stmt_node; ;
break;}
case 187:
#line 1129 "./parse.y"
#line 1130 "./parse.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 188:
#line 1134 "./parse.y"
#line 1135 "./parse.y"
{ enter_block (); ;
break;}
case 189:
#line 1139 "./parse.y"
#line 1140 "./parse.y"
{
maybe_absorb_scoping_blocks ();
yyval.node = exit_block ();
;
break;}
case 193:
#line 1153 "./parse.y"
#line 1154 "./parse.y"
{ java_method_add_stmt (current_function_decl, yyvsp[0].node); ;
break;}
case 194:
#line 1155 "./parse.y"
#line 1156 "./parse.y"
{ parse_jdk1_1_error ("inner class declaration"); ;
break;}
case 196:
#line 1164 "./parse.y"
#line 1165 "./parse.y"
{ declare_local_variables (0, yyvsp[-1].node, yyvsp[0].node); ;
break;}
case 197:
#line 1166 "./parse.y"
#line 1167 "./parse.y"
{ declare_local_variables (yyvsp[-2].value, yyvsp[-1].node, yyvsp[0].node); ;
break;}
case 203:
#line 1176 "./parse.y"
#line 1177 "./parse.y"
{
/* If the for loop is unlabeled, we must return the
block it was defined it. It our last chance to
......@@ -3500,11 +3501,11 @@ case 203:
;
break;}
case 220:
#line 1209 "./parse.y"
#line 1210 "./parse.y"
{ yyval.node = empty_stmt_node; ;
break;}
case 221:
#line 1214 "./parse.y"
#line 1215 "./parse.y"
{
yyval.node = build_labeled_block (EXPR_WFL_LINECOL (yyvsp[-1].node),
EXPR_WFL_NODE (yyvsp[-1].node));
......@@ -3514,7 +3515,7 @@ case 221:
;
break;}
case 222:
#line 1225 "./parse.y"
#line 1226 "./parse.y"
{
yyval.node = complete_labeled_statement (yyvsp[-1].node, yyvsp[0].node);
pop_labeled_block ();
......@@ -3522,11 +3523,11 @@ case 222:
;
break;}
case 223:
#line 1231 "./parse.y"
#line 1232 "./parse.y"
{yyerror ("':' expected"); RECOVER;;
break;}
case 224:
#line 1236 "./parse.y"
#line 1237 "./parse.y"
{
yyval.node = complete_labeled_statement (yyvsp[-1].node, yyvsp[0].node);
pop_labeled_block ();
......@@ -3534,7 +3535,7 @@ case 224:
;
break;}
case 225:
#line 1247 "./parse.y"
#line 1248 "./parse.y"
{
/* We have a statement. Generate a WFL around it so
we can debug it */
......@@ -3545,7 +3546,7 @@ case 225:
;
break;}
case 226:
#line 1256 "./parse.y"
#line 1257 "./parse.y"
{
if (ctxp->prevent_ese != lineno)
yyerror ("Invalid expression statement");
......@@ -3553,7 +3554,7 @@ case 226:
;
break;}
case 227:
#line 1262 "./parse.y"
#line 1263 "./parse.y"
{
if (ctxp->prevent_ese != lineno)
yyerror ("Invalid expression statement");
......@@ -3561,7 +3562,7 @@ case 227:
;
break;}
case 228:
#line 1268 "./parse.y"
#line 1269 "./parse.y"
{
if (ctxp->prevent_ese != lineno)
yyerror ("Invalid expression statement");
......@@ -3569,11 +3570,11 @@ case 228:
;
break;}
case 229:
#line 1274 "./parse.y"
#line 1275 "./parse.y"
{yyerror ("')' expected"); RECOVER;;
break;}
case 230:
#line 1276 "./parse.y"
#line 1277 "./parse.y"
{
yyerror ("Constructor invocation must be first "
"thing in a constructor");
......@@ -3581,11 +3582,11 @@ case 230:
;
break;}
case 231:
#line 1282 "./parse.y"
#line 1283 "./parse.y"
{yyerror ("')' expected"); RECOVER;;
break;}
case 232:
#line 1284 "./parse.y"
#line 1285 "./parse.y"
{
yyerror ("Constructor invocation must be first "
"thing in a constructor");
......@@ -3593,57 +3594,57 @@ case 232:
;
break;}
case 233:
#line 1290 "./parse.y"
#line 1291 "./parse.y"
{yyerror ("'(' expected"); RECOVER;;
break;}
case 234:
#line 1292 "./parse.y"
#line 1293 "./parse.y"
{yyerror ("')' expected"); RECOVER;;
break;}
case 235:
#line 1294 "./parse.y"
#line 1295 "./parse.y"
{yyerror ("')' expected"); RECOVER;;
break;}
case 236:
#line 1296 "./parse.y"
#line 1297 "./parse.y"
{yyerror ("';' expected"); RECOVER;;
break;}
case 237:
#line 1298 "./parse.y"
#line 1299 "./parse.y"
{yyerror ("';' expected"); RECOVER;;
break;}
case 245:
#line 1313 "./parse.y"
#line 1314 "./parse.y"
{ yyval.node = build_if_else_statement (yyvsp[-3].operator.location, yyvsp[-2].node, yyvsp[0].node, NULL_TREE); ;
break;}
case 246:
#line 1315 "./parse.y"
#line 1316 "./parse.y"
{yyerror ("'(' expected"); RECOVER;;
break;}
case 247:
#line 1317 "./parse.y"
#line 1318 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 248:
#line 1319 "./parse.y"
#line 1320 "./parse.y"
{yyerror ("')' expected"); RECOVER;;
break;}
case 249:
#line 1324 "./parse.y"
#line 1325 "./parse.y"
{ yyval.node = build_if_else_statement (yyvsp[-5].operator.location, yyvsp[-4].node, yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 250:
#line 1329 "./parse.y"
#line 1330 "./parse.y"
{ yyval.node = build_if_else_statement (yyvsp[-5].operator.location, yyvsp[-4].node, yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 251:
#line 1334 "./parse.y"
#line 1335 "./parse.y"
{
enter_block ();
;
break;}
case 252:
#line 1338 "./parse.y"
#line 1339 "./parse.y"
{
/* Make into "proper list" of COMPOUND_EXPRs.
I.e. make the last statment also have its own
......@@ -3654,42 +3655,42 @@ case 252:
;
break;}
case 253:
#line 1350 "./parse.y"
#line 1351 "./parse.y"
{
yyval.node = build (SWITCH_EXPR, NULL_TREE, yyvsp[-1].node, NULL_TREE);
EXPR_WFL_LINECOL (yyval.node) = yyvsp[-2].operator.location;
;
break;}
case 254:
#line 1355 "./parse.y"
#line 1356 "./parse.y"
{yyerror ("'(' expected"); RECOVER;;
break;}
case 255:
#line 1357 "./parse.y"
#line 1358 "./parse.y"
{yyerror ("Missing term or ')'"); DRECOVER(switch_statement);;
break;}
case 256:
#line 1359 "./parse.y"
#line 1360 "./parse.y"
{yyerror ("'{' expected"); RECOVER;;
break;}
case 257:
#line 1367 "./parse.y"
#line 1368 "./parse.y"
{ yyval.node = NULL_TREE; ;
break;}
case 258:
#line 1369 "./parse.y"
#line 1370 "./parse.y"
{ yyval.node = NULL_TREE; ;
break;}
case 259:
#line 1371 "./parse.y"
#line 1372 "./parse.y"
{ yyval.node = NULL_TREE; ;
break;}
case 260:
#line 1373 "./parse.y"
#line 1374 "./parse.y"
{ yyval.node = NULL_TREE; ;
break;}
case 266:
#line 1392 "./parse.y"
#line 1393 "./parse.y"
{
tree lab = build1 (CASE_EXPR, NULL_TREE, yyvsp[-1].node);
EXPR_WFL_LINECOL (lab) = yyvsp[-2].operator.location;
......@@ -3697,7 +3698,7 @@ case 266:
;
break;}
case 267:
#line 1398 "./parse.y"
#line 1399 "./parse.y"
{
tree lab = build1 (DEFAULT_EXPR, NULL_TREE, NULL_TREE);
EXPR_WFL_LINECOL (lab) = yyvsp[-1].operator.location;
......@@ -3705,61 +3706,61 @@ case 267:
;
break;}
case 268:
#line 1404 "./parse.y"
#line 1405 "./parse.y"
{yyerror ("Missing or invalid constant expression"); RECOVER;;
break;}
case 269:
#line 1406 "./parse.y"
#line 1407 "./parse.y"
{yyerror ("':' expected"); RECOVER;;
break;}
case 270:
#line 1408 "./parse.y"
#line 1409 "./parse.y"
{yyerror ("':' expected"); RECOVER;;
break;}
case 271:
#line 1413 "./parse.y"
#line 1414 "./parse.y"
{
tree body = build_loop_body (yyvsp[-2].operator.location, yyvsp[-1].node, 0);
yyval.node = build_new_loop (body);
;
break;}
case 272:
#line 1421 "./parse.y"
#line 1422 "./parse.y"
{ yyval.node = complete_loop_body (0, NULL_TREE, yyvsp[0].node, 0); ;
break;}
case 273:
#line 1423 "./parse.y"
#line 1424 "./parse.y"
{YYERROR_NOW; yyerror ("'(' expected"); RECOVER;;
break;}
case 274:
#line 1425 "./parse.y"
#line 1426 "./parse.y"
{yyerror ("Missing term and ')' expected"); RECOVER;;
break;}
case 275:
#line 1427 "./parse.y"
#line 1428 "./parse.y"
{yyerror ("')' expected"); RECOVER;;
break;}
case 276:
#line 1432 "./parse.y"
#line 1433 "./parse.y"
{ yyval.node = complete_loop_body (0, NULL_TREE, yyvsp[0].node, 0); ;
break;}
case 277:
#line 1437 "./parse.y"
#line 1438 "./parse.y"
{
tree body = build_loop_body (0, NULL_TREE, 1);
yyval.node = build_new_loop (body);
;
break;}
case 278:
#line 1446 "./parse.y"
#line 1447 "./parse.y"
{ yyval.node = complete_loop_body (yyvsp[-3].operator.location, yyvsp[-2].node, yyvsp[-5].node, 1); ;
break;}
case 279:
#line 1451 "./parse.y"
#line 1452 "./parse.y"
{ yyval.node = complete_for_loop (EXPR_WFL_LINECOL (yyvsp[-4].node), yyvsp[-4].node, yyvsp[-2].node, yyvsp[0].node);;
break;}
case 280:
#line 1453 "./parse.y"
#line 1454 "./parse.y"
{
yyval.node = complete_for_loop (0, NULL_TREE, yyvsp[-2].node, yyvsp[0].node);
/* We have not condition, so we get rid of the EXIT_EXPR */
......@@ -3768,23 +3769,23 @@ case 280:
;
break;}
case 281:
#line 1460 "./parse.y"
#line 1461 "./parse.y"
{yyerror ("Invalid control expression"); RECOVER;;
break;}
case 282:
#line 1462 "./parse.y"
#line 1463 "./parse.y"
{yyerror ("Invalid update expression"); RECOVER;;
break;}
case 283:
#line 1464 "./parse.y"
#line 1465 "./parse.y"
{yyerror ("Invalid update expression"); RECOVER;;
break;}
case 284:
#line 1469 "./parse.y"
#line 1470 "./parse.y"
{ yyval.node = complete_for_loop (EXPR_WFL_LINECOL (yyvsp[-4].node), yyvsp[-4].node, yyvsp[-2].node, yyvsp[0].node);;
break;}
case 285:
#line 1471 "./parse.y"
#line 1472 "./parse.y"
{
yyval.node = complete_for_loop (0, NULL_TREE, yyvsp[-2].node, yyvsp[0].node);
/* We have not condition, so we get rid of the EXIT_EXPR */
......@@ -3793,7 +3794,7 @@ case 285:
;
break;}
case 286:
#line 1481 "./parse.y"
#line 1482 "./parse.y"
{
/* This scope defined for local variable that may be
defined within the scope of the for loop */
......@@ -3801,15 +3802,15 @@ case 286:
;
break;}
case 287:
#line 1487 "./parse.y"
#line 1488 "./parse.y"
{yyerror ("'(' expected"); DRECOVER(for_1);;
break;}
case 288:
#line 1489 "./parse.y"
#line 1490 "./parse.y"
{yyerror ("Invalid init statement"); RECOVER;;
break;}
case 289:
#line 1494 "./parse.y"
#line 1495 "./parse.y"
{
/* We now declare the loop body. The loop is
declared as a for loop. */
......@@ -3822,11 +3823,11 @@ case 289:
;
break;}
case 290:
#line 1506 "./parse.y"
#line 1507 "./parse.y"
{ yyval.node = empty_stmt_node; ;
break;}
case 291:
#line 1508 "./parse.y"
#line 1509 "./parse.y"
{
/* Init statement recorded within the previously
defined block scope */
......@@ -3834,7 +3835,7 @@ case 291:
;
break;}
case 292:
#line 1514 "./parse.y"
#line 1515 "./parse.y"
{
/* Local variable are recorded within the previously
defined block scope */
......@@ -3842,94 +3843,94 @@ case 292:
;
break;}
case 293:
#line 1520 "./parse.y"
#line 1521 "./parse.y"
{yyerror ("';' expected"); DRECOVER(for_init_1);;
break;}
case 294:
#line 1524 "./parse.y"
#line 1525 "./parse.y"
{yyval.node = empty_stmt_node;;
break;}
case 295:
#line 1526 "./parse.y"
#line 1527 "./parse.y"
{ yyval.node = build_debugable_stmt (BUILD_LOCATION (), yyvsp[0].node); ;
break;}
case 296:
#line 1531 "./parse.y"
#line 1532 "./parse.y"
{ yyval.node = add_stmt_to_compound (NULL_TREE, NULL_TREE, yyvsp[0].node); ;
break;}
case 297:
#line 1533 "./parse.y"
#line 1534 "./parse.y"
{ yyval.node = add_stmt_to_compound (yyvsp[-2].node, NULL_TREE, yyvsp[0].node); ;
break;}
case 298:
#line 1535 "./parse.y"
#line 1536 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 299:
#line 1540 "./parse.y"
#line 1541 "./parse.y"
{ yyval.node = build_bc_statement (yyvsp[-1].operator.location, 1, NULL_TREE); ;
break;}
case 300:
#line 1542 "./parse.y"
#line 1543 "./parse.y"
{ yyval.node = build_bc_statement (yyvsp[-2].operator.location, 1, yyvsp[-1].node); ;
break;}
case 301:
#line 1544 "./parse.y"
#line 1545 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 302:
#line 1546 "./parse.y"
#line 1547 "./parse.y"
{yyerror ("';' expected"); RECOVER;;
break;}
case 303:
#line 1551 "./parse.y"
#line 1552 "./parse.y"
{ yyval.node = build_bc_statement (yyvsp[-1].operator.location, 0, NULL_TREE); ;
break;}
case 304:
#line 1553 "./parse.y"
#line 1554 "./parse.y"
{ yyval.node = build_bc_statement (yyvsp[-2].operator.location, 0, yyvsp[-1].node); ;
break;}
case 305:
#line 1555 "./parse.y"
#line 1556 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 306:
#line 1557 "./parse.y"
#line 1558 "./parse.y"
{yyerror ("';' expected"); RECOVER;;
break;}
case 307:
#line 1562 "./parse.y"
#line 1563 "./parse.y"
{ yyval.node = build_return (yyvsp[-1].operator.location, NULL_TREE); ;
break;}
case 308:
#line 1564 "./parse.y"
#line 1565 "./parse.y"
{ yyval.node = build_return (yyvsp[-2].operator.location, yyvsp[-1].node); ;
break;}
case 309:
#line 1566 "./parse.y"
#line 1567 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 310:
#line 1568 "./parse.y"
#line 1569 "./parse.y"
{yyerror ("';' expected"); RECOVER;;
break;}
case 311:
#line 1573 "./parse.y"
#line 1574 "./parse.y"
{
yyval.node = build1 (THROW_EXPR, NULL_TREE, yyvsp[-1].node);
EXPR_WFL_LINECOL (yyval.node) = yyvsp[-2].operator.location;
;
break;}
case 312:
#line 1578 "./parse.y"
#line 1579 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 313:
#line 1580 "./parse.y"
#line 1581 "./parse.y"
{yyerror ("';' expected"); RECOVER;;
break;}
case 314:
#line 1585 "./parse.y"
#line 1586 "./parse.y"
{
yyval.node = build (SYNCHRONIZED_EXPR, NULL_TREE, yyvsp[-2].node, yyvsp[0].node);
EXPR_WFL_LINECOL (yyval.node) =
......@@ -3937,53 +3938,53 @@ case 314:
;
break;}
case 315:
#line 1591 "./parse.y"
#line 1592 "./parse.y"
{yyerror ("'{' expected"); RECOVER;;
break;}
case 316:
#line 1593 "./parse.y"
#line 1594 "./parse.y"
{yyerror ("'(' expected"); RECOVER;;
break;}
case 317:
#line 1595 "./parse.y"
#line 1596 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 318:
#line 1597 "./parse.y"
#line 1598 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 319:
#line 1602 "./parse.y"
#line 1603 "./parse.y"
{
if ((1 << yyvsp[0].value) != ACC_SYNCHRONIZED)
fatal ("synchronized was '%d' - yyparse", (1 << yyvsp[0].value));
;
break;}
case 320:
#line 1610 "./parse.y"
#line 1611 "./parse.y"
{ yyval.node = build_try_statement (yyvsp[-2].operator.location, yyvsp[-1].node, yyvsp[0].node, NULL_TREE); ;
break;}
case 321:
#line 1612 "./parse.y"
#line 1613 "./parse.y"
{ yyval.node = build_try_statement (yyvsp[-2].operator.location, yyvsp[-1].node, NULL_TREE, yyvsp[0].node); ;
break;}
case 322:
#line 1614 "./parse.y"
#line 1615 "./parse.y"
{ yyval.node = build_try_statement (yyvsp[-3].operator.location, yyvsp[-2].node, yyvsp[-1].node, yyvsp[0].node); ;
break;}
case 323:
#line 1616 "./parse.y"
#line 1617 "./parse.y"
{yyerror ("'{' expected"); DRECOVER (try_statement);;
break;}
case 325:
#line 1622 "./parse.y"
#line 1623 "./parse.y"
{
TREE_CHAIN (yyvsp[0].node) = yyvsp[-1].node;
yyval.node = yyvsp[0].node;
;
break;}
case 326:
#line 1630 "./parse.y"
#line 1631 "./parse.y"
{
java_method_add_stmt (current_function_decl, yyvsp[0].node);
exit_block ();
......@@ -3991,7 +3992,7 @@ case 326:
;
break;}
case 327:
#line 1638 "./parse.y"
#line 1639 "./parse.y"
{
/* We add a block to define a scope for
formal_parameter (CCBP). The formal parameter is
......@@ -4009,179 +4010,179 @@ case 327:
;
break;}
case 328:
#line 1654 "./parse.y"
#line 1655 "./parse.y"
{yyerror ("'(' expected"); RECOVER;;
break;}
case 329:
#line 1656 "./parse.y"
#line 1657 "./parse.y"
{yyerror ("Missing term or ')' expected"); DRECOVER (2);;
break;}
case 330:
#line 1658 "./parse.y"
#line 1659 "./parse.y"
{yyerror ("')' expected"); DRECOVER (1);;
break;}
case 331:
#line 1663 "./parse.y"
#line 1664 "./parse.y"
{
yyval.node = build (FINALLY_EXPR, NULL_TREE,
create_label_decl (generate_name ()), yyvsp[0].node);
;
break;}
case 332:
#line 1668 "./parse.y"
#line 1669 "./parse.y"
{yyerror ("'{' expected"); RECOVER; ;
break;}
case 336:
#line 1680 "./parse.y"
#line 1681 "./parse.y"
{ yyval.node = build_this (yyvsp[0].operator.location); ;
break;}
case 337:
#line 1682 "./parse.y"
#line 1683 "./parse.y"
{yyval.node = yyvsp[-1].node;;
break;}
case 342:
#line 1691 "./parse.y"
#line 1692 "./parse.y"
{ yyval.node = parse_jdk1_1_error ("named class literals"); ;
break;}
case 343:
#line 1693 "./parse.y"
#line 1694 "./parse.y"
{ yyval.node = build_class_ref (yyvsp[-2].node); ;
break;}
case 344:
#line 1695 "./parse.y"
#line 1696 "./parse.y"
{ yyval.node = build_class_ref (void_type_node); ;
break;}
case 345:
#line 1700 "./parse.y"
#line 1701 "./parse.y"
{ yyval.node = parse_jdk1_1_error ("class literals"); ;
break;}
case 346:
#line 1702 "./parse.y"
#line 1703 "./parse.y"
{yyerror ("')' expected"); RECOVER;;
break;}
case 347:
#line 1704 "./parse.y"
#line 1705 "./parse.y"
{yyerror ("'class' or 'this' expected" ); RECOVER;;
break;}
case 348:
#line 1706 "./parse.y"
#line 1707 "./parse.y"
{yyerror ("'class' expected" ); RECOVER;;
break;}
case 349:
#line 1708 "./parse.y"
#line 1709 "./parse.y"
{yyerror ("'class' expected" ); RECOVER;;
break;}
case 350:
#line 1713 "./parse.y"
#line 1714 "./parse.y"
{ yyval.node = build_new_invocation (yyvsp[-3].node, yyvsp[-1].node); ;
break;}
case 351:
#line 1715 "./parse.y"
#line 1716 "./parse.y"
{ yyval.node = build_new_invocation (yyvsp[-2].node, NULL_TREE); ;
break;}
case 352:
#line 1720 "./parse.y"
#line 1721 "./parse.y"
{ yyval.node = parse_jdk1_1_error ("inner class instance creation"); ;
break;}
case 353:
#line 1722 "./parse.y"
#line 1723 "./parse.y"
{ yyval.node = parse_jdk1_1_error ("inner class instance creation"); ;
break;}
case 358:
#line 1731 "./parse.y"
#line 1732 "./parse.y"
{yyerror ("'(' expected"); DRECOVER(new_1);;
break;}
case 359:
#line 1733 "./parse.y"
#line 1734 "./parse.y"
{yyerror ("'(' expected"); RECOVER;;
break;}
case 360:
#line 1735 "./parse.y"
#line 1736 "./parse.y"
{yyerror ("')' or term expected"); RECOVER;;
break;}
case 361:
#line 1737 "./parse.y"
#line 1738 "./parse.y"
{yyerror ("')' expected"); RECOVER;;
break;}
case 362:
#line 1739 "./parse.y"
#line 1740 "./parse.y"
{YYERROR_NOW; yyerror ("Identifier expected"); RECOVER;;
break;}
case 363:
#line 1741 "./parse.y"
#line 1742 "./parse.y"
{yyerror ("'(' expected"); RECOVER;;
break;}
case 366:
#line 1751 "./parse.y"
#line 1752 "./parse.y"
{
yyval.node = tree_cons (NULL_TREE, yyvsp[0].node, NULL_TREE);
ctxp->formal_parameter_number = 1;
;
break;}
case 367:
#line 1756 "./parse.y"
#line 1757 "./parse.y"
{
ctxp->formal_parameter_number += 1;
yyval.node = tree_cons (NULL_TREE, yyvsp[0].node, yyvsp[-2].node);
;
break;}
case 368:
#line 1761 "./parse.y"
#line 1762 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 369:
#line 1766 "./parse.y"
#line 1767 "./parse.y"
{ yyval.node = build_newarray_node (yyvsp[-1].node, yyvsp[0].node, 0); ;
break;}
case 370:
#line 1768 "./parse.y"
#line 1769 "./parse.y"
{ yyval.node = build_newarray_node (yyvsp[-1].node, yyvsp[0].node, 0); ;
break;}
case 371:
#line 1770 "./parse.y"
#line 1771 "./parse.y"
{ yyval.node = build_newarray_node (yyvsp[-2].node, yyvsp[-1].node, CURRENT_OSB (ctxp));;
break;}
case 372:
#line 1772 "./parse.y"
#line 1773 "./parse.y"
{ yyval.node = build_newarray_node (yyvsp[-2].node, yyvsp[-1].node, CURRENT_OSB (ctxp));;
break;}
case 373:
#line 1776 "./parse.y"
#line 1777 "./parse.y"
{ yyval.node = parse_jdk1_1_error ("anonymous array"); ;
break;}
case 374:
#line 1778 "./parse.y"
#line 1779 "./parse.y"
{ yyval.node = parse_jdk1_1_error ("anonymous array"); ;
break;}
case 375:
#line 1780 "./parse.y"
#line 1781 "./parse.y"
{yyerror ("'[' expected"); DRECOVER ("]");;
break;}
case 376:
#line 1782 "./parse.y"
#line 1783 "./parse.y"
{yyerror ("']' expected"); RECOVER;;
break;}
case 377:
#line 1787 "./parse.y"
#line 1788 "./parse.y"
{ yyval.node = build_tree_list (NULL_TREE, yyvsp[0].node); ;
break;}
case 378:
#line 1789 "./parse.y"
#line 1790 "./parse.y"
{ yyval.node = tree_cons (NULL_TREE, yyvsp[0].node, yyval.node); ;
break;}
case 379:
#line 1794 "./parse.y"
#line 1795 "./parse.y"
{
EXPR_WFL_LINECOL (yyvsp[-1].node) = yyvsp[-2].operator.location;
yyval.node = yyvsp[-1].node;
;
break;}
case 380:
#line 1799 "./parse.y"
#line 1800 "./parse.y"
{yyerror ("']' expected"); RECOVER;;
break;}
case 381:
#line 1801 "./parse.y"
#line 1802 "./parse.y"
{
yyerror ("Missing term");
yyerror ("']' expected");
......@@ -4189,7 +4190,7 @@ case 381:
;
break;}
case 382:
#line 1810 "./parse.y"
#line 1811 "./parse.y"
{
int allocate = 0;
/* If not initialized, allocate memory for the osb
......@@ -4217,19 +4218,19 @@ case 382:
;
break;}
case 383:
#line 1836 "./parse.y"
#line 1837 "./parse.y"
{ CURRENT_OSB (ctxp)++; ;
break;}
case 384:
#line 1838 "./parse.y"
#line 1839 "./parse.y"
{ yyerror ("']' expected"); RECOVER;;
break;}
case 385:
#line 1843 "./parse.y"
#line 1844 "./parse.y"
{ yyval.node = make_qualified_primary (yyvsp[-2].node, yyvsp[0].node, yyvsp[-1].operator.location); ;
break;}
case 386:
#line 1847 "./parse.y"
#line 1848 "./parse.y"
{
tree super_wfl =
build_wfl_node (super_identifier_node,
......@@ -4239,19 +4240,19 @@ case 386:
;
break;}
case 387:
#line 1855 "./parse.y"
#line 1856 "./parse.y"
{yyerror ("Field expected"); DRECOVER (super_field_acces);;
break;}
case 388:
#line 1860 "./parse.y"
#line 1861 "./parse.y"
{ yyval.node = build_method_invocation (yyvsp[-2].node, NULL_TREE); ;
break;}
case 389:
#line 1862 "./parse.y"
#line 1863 "./parse.y"
{ yyval.node = build_method_invocation (yyvsp[-3].node, yyvsp[-1].node); ;
break;}
case 390:
#line 1864 "./parse.y"
#line 1865 "./parse.y"
{
if (TREE_CODE (yyvsp[-4].node) == THIS_EXPR)
yyval.node = build_this_super_qualified_invocation
......@@ -4264,7 +4265,7 @@ case 390:
;
break;}
case 391:
#line 1875 "./parse.y"
#line 1876 "./parse.y"
{
if (TREE_CODE (yyvsp[-5].node) == THIS_EXPR)
yyval.node = build_this_super_qualified_invocation
......@@ -4277,121 +4278,121 @@ case 391:
;
break;}
case 392:
#line 1886 "./parse.y"
#line 1887 "./parse.y"
{
yyval.node = build_this_super_qualified_invocation
(0, yyvsp[-2].node, NULL_TREE, yyvsp[-4].operator.location, yyvsp[-3].operator.location);
;
break;}
case 393:
#line 1891 "./parse.y"
#line 1892 "./parse.y"
{
yyval.node = build_this_super_qualified_invocation
(0, yyvsp[-3].node, yyvsp[-1].node, yyvsp[-5].operator.location, yyvsp[-4].operator.location);
;
break;}
case 394:
#line 1900 "./parse.y"
#line 1901 "./parse.y"
{ yyerror ("'(' expected"); DRECOVER (method_invocation); ;
break;}
case 395:
#line 1902 "./parse.y"
#line 1903 "./parse.y"
{ yyerror ("'(' expected"); DRECOVER (method_invocation); ;
break;}
case 396:
#line 1907 "./parse.y"
#line 1908 "./parse.y"
{ yyval.node = build_array_ref (yyvsp[-2].operator.location, yyvsp[-3].node, yyvsp[-1].node); ;
break;}
case 397:
#line 1909 "./parse.y"
#line 1910 "./parse.y"
{ yyval.node = build_array_ref (yyvsp[-2].operator.location, yyvsp[-3].node, yyvsp[-1].node); ;
break;}
case 398:
#line 1911 "./parse.y"
#line 1912 "./parse.y"
{
yyerror ("Missing term and ']' expected");
DRECOVER(array_access);
;
break;}
case 399:
#line 1916 "./parse.y"
#line 1917 "./parse.y"
{
yyerror ("']' expected");
DRECOVER(array_access);
;
break;}
case 400:
#line 1921 "./parse.y"
#line 1922 "./parse.y"
{
yyerror ("Missing term and ']' expected");
DRECOVER(array_access);
;
break;}
case 401:
#line 1926 "./parse.y"
#line 1927 "./parse.y"
{
yyerror ("']' expected");
DRECOVER(array_access);
;
break;}
case 406:
#line 1941 "./parse.y"
#line 1942 "./parse.y"
{ yyval.node = build_incdec (yyvsp[0].operator.token, yyvsp[0].operator.location, yyvsp[-1].node, 1); ;
break;}
case 407:
#line 1946 "./parse.y"
#line 1947 "./parse.y"
{ yyval.node = build_incdec (yyvsp[0].operator.token, yyvsp[0].operator.location, yyvsp[-1].node, 1); ;
break;}
case 410:
#line 1953 "./parse.y"
#line 1954 "./parse.y"
{yyval.node = build_unaryop (yyvsp[-1].operator.token, yyvsp[-1].operator.location, yyvsp[0].node); ;
break;}
case 411:
#line 1955 "./parse.y"
#line 1956 "./parse.y"
{yyval.node = build_unaryop (yyvsp[-1].operator.token, yyvsp[-1].operator.location, yyvsp[0].node); ;
break;}
case 413:
#line 1958 "./parse.y"
#line 1959 "./parse.y"
{yyerror ("Missing term"); RECOVER;
break;}
case 414:
#line 1960 "./parse.y"
#line 1961 "./parse.y"
{yyerror ("Missing term"); RECOVER;
break;}
case 415:
#line 1965 "./parse.y"
#line 1966 "./parse.y"
{yyval.node = build_incdec (yyvsp[-1].operator.token, yyvsp[-1].operator.location, yyvsp[0].node, 0); ;
break;}
case 416:
#line 1967 "./parse.y"
#line 1968 "./parse.y"
{yyerror ("Missing term"); RECOVER;
break;}
case 417:
#line 1972 "./parse.y"
#line 1973 "./parse.y"
{yyval.node = build_incdec (yyvsp[-1].operator.token, yyvsp[-1].operator.location, yyvsp[0].node, 0); ;
break;}
case 418:
#line 1974 "./parse.y"
#line 1975 "./parse.y"
{yyerror ("Missing term"); RECOVER;
break;}
case 420:
#line 1980 "./parse.y"
#line 1981 "./parse.y"
{yyval.node = build_unaryop (yyvsp[-1].operator.token, yyvsp[-1].operator.location, yyvsp[0].node); ;
break;}
case 421:
#line 1982 "./parse.y"
#line 1983 "./parse.y"
{yyval.node = build_unaryop (yyvsp[-1].operator.token, yyvsp[-1].operator.location, yyvsp[0].node); ;
break;}
case 423:
#line 1985 "./parse.y"
#line 1986 "./parse.y"
{yyerror ("Missing term"); RECOVER;
break;}
case 424:
#line 1987 "./parse.y"
#line 1988 "./parse.y"
{yyerror ("Missing term"); RECOVER;
break;}
case 425:
#line 1992 "./parse.y"
#line 1993 "./parse.y"
{
tree type = yyvsp[-3].node;
while (CURRENT_OSB (ctxp)--)
......@@ -4401,15 +4402,15 @@ case 425:
;
break;}
case 426:
#line 2000 "./parse.y"
#line 2001 "./parse.y"
{ yyval.node = build_cast (yyvsp[-3].operator.location, yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 427:
#line 2002 "./parse.y"
#line 2003 "./parse.y"
{ yyval.node = build_cast (yyvsp[-3].operator.location, yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 428:
#line 2004 "./parse.y"
#line 2005 "./parse.y"
{
char *ptr;
while (CURRENT_OSB (ctxp)--)
......@@ -4424,11 +4425,11 @@ case 428:
;
break;}
case 429:
#line 2017 "./parse.y"
#line 2018 "./parse.y"
{yyerror ("']' expected, invalid type expression");;
break;}
case 430:
#line 2019 "./parse.y"
#line 2020 "./parse.y"
{
if (ctxp->prevent_ese != lineno)
yyerror ("Invalid type expression"); RECOVER;
......@@ -4436,243 +4437,243 @@ case 430:
;
break;}
case 431:
#line 2025 "./parse.y"
#line 2026 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 432:
#line 2027 "./parse.y"
#line 2028 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 433:
#line 2029 "./parse.y"
#line 2030 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 435:
#line 2035 "./parse.y"
#line 2036 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token),
yyvsp[-1].operator.location, yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 436:
#line 2040 "./parse.y"
#line 2041 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 437:
#line 2045 "./parse.y"
#line 2046 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 438:
#line 2050 "./parse.y"
#line 2051 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 439:
#line 2052 "./parse.y"
#line 2053 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 440:
#line 2054 "./parse.y"
#line 2055 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 442:
#line 2060 "./parse.y"
#line 2061 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 443:
#line 2065 "./parse.y"
#line 2066 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 444:
#line 2070 "./parse.y"
#line 2071 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 445:
#line 2072 "./parse.y"
#line 2073 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 447:
#line 2078 "./parse.y"
#line 2079 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 448:
#line 2083 "./parse.y"
#line 2084 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 449:
#line 2088 "./parse.y"
#line 2089 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 450:
#line 2093 "./parse.y"
#line 2094 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 451:
#line 2095 "./parse.y"
#line 2096 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 452:
#line 2097 "./parse.y"
#line 2098 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 454:
#line 2103 "./parse.y"
#line 2104 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 455:
#line 2108 "./parse.y"
#line 2109 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 456:
#line 2113 "./parse.y"
#line 2114 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 457:
#line 2118 "./parse.y"
#line 2119 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 458:
#line 2123 "./parse.y"
#line 2124 "./parse.y"
{ yyval.node = build_binop (INSTANCEOF_EXPR, yyvsp[-1].operator.location, yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 459:
#line 2125 "./parse.y"
#line 2126 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 460:
#line 2127 "./parse.y"
#line 2128 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 461:
#line 2129 "./parse.y"
#line 2130 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 462:
#line 2131 "./parse.y"
#line 2132 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 463:
#line 2133 "./parse.y"
#line 2134 "./parse.y"
{yyerror ("Invalid reference type"); RECOVER;;
break;}
case 465:
#line 2139 "./parse.y"
#line 2140 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 466:
#line 2144 "./parse.y"
#line 2145 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 467:
#line 2149 "./parse.y"
#line 2150 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 468:
#line 2151 "./parse.y"
#line 2152 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 470:
#line 2157 "./parse.y"
#line 2158 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 471:
#line 2162 "./parse.y"
#line 2163 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 473:
#line 2168 "./parse.y"
#line 2169 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 474:
#line 2173 "./parse.y"
#line 2174 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 476:
#line 2179 "./parse.y"
#line 2180 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 477:
#line 2184 "./parse.y"
#line 2185 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 479:
#line 2190 "./parse.y"
#line 2191 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 480:
#line 2195 "./parse.y"
#line 2196 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 482:
#line 2201 "./parse.y"
#line 2202 "./parse.y"
{
yyval.node = build_binop (BINOP_LOOKUP (yyvsp[-1].operator.token), yyvsp[-1].operator.location,
yyvsp[-2].node, yyvsp[0].node);
;
break;}
case 483:
#line 2206 "./parse.y"
#line 2207 "./parse.y"
{yyerror ("Missing term"); RECOVER;;
break;}
case 485:
#line 2212 "./parse.y"
#line 2213 "./parse.y"
{
yyval.node = build (CONDITIONAL_EXPR, NULL_TREE, yyvsp[-4].node, yyvsp[-2].node, yyvsp[0].node);
EXPR_WFL_LINECOL (yyval.node) = yyvsp[-3].operator.location;
;
break;}
case 486:
#line 2217 "./parse.y"
#line 2218 "./parse.y"
{
YYERROR_NOW;
yyerror ("Missing term");
......@@ -4680,19 +4681,19 @@ case 486:
;
break;}
case 487:
#line 2223 "./parse.y"
#line 2224 "./parse.y"
{yyerror ("Missing term"); DRECOVER (2);;
break;}
case 488:
#line 2225 "./parse.y"
#line 2226 "./parse.y"
{yyerror ("Missing term"); DRECOVER (3);;
break;}
case 491:
#line 2235 "./parse.y"
#line 2236 "./parse.y"
{ yyval.node = build_assignment (yyvsp[-1].operator.token, yyvsp[-1].operator.location, yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 492:
#line 2237 "./parse.y"
#line 2238 "./parse.y"
{
if (ctxp->prevent_ese != lineno)
yyerror ("Missing term");
......@@ -4701,7 +4702,7 @@ case 492:
break;}
}
/* the action file gets copied in in place of this dollarsign */
#line 498 "/usr/cygnus/gnupro-98r2/share/bison.simple"
#line 498 "/usr/local/gnu/share/bison.simple"
yyvsp -= yylen;
yyssp -= yylen;
......@@ -4897,7 +4898,7 @@ yyerrhandle:
yystate = yyn;
goto yynewstate;
}
#line 2263 "./parse.y"
#line 2264 "./parse.y"
......@@ -5085,7 +5086,7 @@ yyerror (msg)
static void
issue_warning_error_from_context (cl, msg, ap)
tree cl;
char *msg;
const char *msg;
va_list ap;
{
char *saved, *saved_input_filename;
......@@ -5113,18 +5114,18 @@ 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, char *msg, ...))
parse_error_context VPROTO ((tree cl, const char *msg, ...))
{
#ifndef __STDC__
#ifndef ANSI_PROTOTYPES
tree cl;
char *msg;
const char *msg;
#endif
va_list ap;
VA_START (ap, msg);
#ifndef __STDC__
#ifndef ANSI_PROTOTYPES
cl = va_arg (ap, tree);
msg = va_arg (ap, char *);
msg = va_arg (ap, const char *);
#endif
issue_warning_error_from_context (cl, msg, ap);
va_end (ap);
......@@ -5133,18 +5134,18 @@ parse_error_context VPROTO ((tree cl, char *msg, ...))
/* Issue a warning at a current source line CL */
static void
parse_warning_context VPROTO ((tree cl, char *msg, ...))
parse_warning_context VPROTO ((tree cl, const char *msg, ...))
{
#ifndef __STDC__
#ifndef ANSI_PROTOTYPES
tree cl;
char *msg;
const char *msg;
#endif
va_list ap;
VA_START (ap, msg);
#ifndef __STDC__
#ifndef ANSI_PROTOTYPES
cl = va_arg (ap, tree);
msg = va_arg (ap, char *);
msg = va_arg (ap, const char *);
#endif
force_error = do_warning = 1;
......@@ -11612,7 +11613,7 @@ patch_binop (node, wfl_op1, wfl_op2)
{
tree utype = unsigned_type (prom_type);
op1 = convert (utype, op1);
TREE_SET_CODE (node, RSHIFT_EXPR);
TREE_SET_CODE (node, RSHIFT_EXPR);
TREE_OPERAND (node, 0) = op1;
TREE_OPERAND (node, 1) = op2;
TREE_TYPE (node) = utype;
......
......@@ -86,8 +86,9 @@ 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 VPROTO ((tree cl, char *msg, ...));
static void issue_warning_error_from_context PROTO ((tree, char *msg, va_list));
static void parse_warning_context PVPROTO ((tree cl, const char *msg, ...))
ATTRIBUTE_PRINTF_2;
static void issue_warning_error_from_context PROTO ((tree, const char *msg, va_list));
static tree parse_jdk1_1_error PROTO ((char *));
static void complete_class_report_errors PROTO ((jdep *));
static int process_imports PROTO ((void));
......@@ -2447,7 +2448,7 @@ yyerror (msg)
static void
issue_warning_error_from_context (cl, msg, ap)
tree cl;
char *msg;
const char *msg;
va_list ap;
{
char *saved, *saved_input_filename;
......@@ -2475,18 +2476,18 @@ 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, char *msg, ...))
parse_error_context VPROTO ((tree cl, const char *msg, ...))
{
#ifndef __STDC__
#ifndef ANSI_PROTOTYPES
tree cl;
char *msg;
const char *msg;
#endif
va_list ap;
VA_START (ap, msg);
#ifndef __STDC__
#ifndef ANSI_PROTOTYPES
cl = va_arg (ap, tree);
msg = va_arg (ap, char *);
msg = va_arg (ap, const char *);
#endif
issue_warning_error_from_context (cl, msg, ap);
va_end (ap);
......@@ -2495,18 +2496,18 @@ parse_error_context VPROTO ((tree cl, char *msg, ...))
/* Issue a warning at a current source line CL */
static void
parse_warning_context VPROTO ((tree cl, char *msg, ...))
parse_warning_context VPROTO ((tree cl, const char *msg, ...))
{
#ifndef __STDC__
#ifndef ANSI_PROTOTYPES
tree cl;
char *msg;
const char *msg;
#endif
va_list ap;
VA_START (ap, msg);
#ifndef __STDC__
#ifndef ANSI_PROTOTYPES
cl = va_arg (ap, tree);
msg = va_arg (ap, char *);
msg = va_arg (ap, const char *);
#endif
force_error = do_warning = 1;
......
......@@ -151,8 +151,8 @@ convert_to_boolean (type, expr)
void
incomplete_type_error (value, type)
tree value;
tree type;
tree value ATTRIBUTE_UNUSED;
tree type ATTRIBUTE_UNUSED;
{
error ("internal error - use of undefined type");
}
......@@ -464,7 +464,7 @@ parse_signature_type (ptr, limit)
case 'Z': (*ptr)++; return boolean_type_node;
case 'V': (*ptr)++; return void_type_node;
case '[':
for ((*ptr)++; (*ptr) < limit && isdigit (**ptr); ) (*ptr)++;
for ((*ptr)++; (*ptr) < limit && ISDIGIT (**ptr); ) (*ptr)++;
type = parse_signature_type (ptr, limit);
type = build_java_array_type (type, -1);
break;
......
......@@ -61,7 +61,7 @@ push_pending_label (target_label)
Merge the type state etc.
Return NULL on sucess, or an error message on failure. */
static char *
static const char *
check_pending_block (target_label)
tree target_label;
{
......@@ -332,7 +332,7 @@ verify_jvm_instructions (jcf, byte_ops, length)
int PC;
int oldpc; /* PC of start of instruction. */
int prevpc; /* If >= 0, PC of previous instruction. */
char *message;
const char *message;
int i;
register unsigned char *p;
struct eh_range *prev_eh_ranges = NULL_EH_RANGE;
......@@ -724,7 +724,6 @@ verify_jvm_instructions (jcf, byte_ops, length)
int index = IMMEDIATE_u2;
tree self_type = get_class_constant
(jcf, COMPONENT_REF_CLASS_INDEX (&current_jcf->cpool, index));
tree field_name = COMPONENT_REF_NAME (&current_jcf->cpool, index);
tree field_signature = COMPONENT_REF_SIGNATURE (&current_jcf->cpool, index);
tree field_type = get_type_from_signature (field_signature);
if (is_putting)
......@@ -963,7 +962,7 @@ verify_jvm_instructions (jcf, byte_ops, length)
case OPCODE_tableswitch:
{
jint default_val, low, high;
jint low, high;
pop_type (int_type_node);
while (PC%4)
......
......@@ -25,19 +25,14 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
/* Written by Per Bothner <bothner@cygnus.com>, February 1996. */
#include "config.h"
#include "system.h"
#include "zipfile.h"
/* This stuff is partly based on the 28 August 1994 public release of the
Info-ZIP group's portable UnZip zipfile-extraction program (and related
utilities). */
#include <stdio.h>
#ifdef __STDC__
#include <stdlib.h>
#endif
#include <errno.h> /* used in mapname() */
/*************/
/* Defines */
/*************/
......
......@@ -58,3 +58,4 @@ extern struct ZipFileCache *SeenZipFiles;
#define ZIPMAGIC 0x504b0304
extern ZipFile * opendir_in_zip ();
extern int read_zip_archive PROTO ((ZipFile *));
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment