From 813e6cd39f14d480ad794a06145aad26b12131b3 Mon Sep 17 00:00:00 2001 From: apbianco Date: Thu, 19 Nov 1998 12:13:39 +0000 Subject: [PATCH] Thu Nov 19 11:16:55 1998 Alexandre Petit-Bianco * jcf-parse.c (jcf_parse_source): Function returned type is void. Added prototype. (jcf_parse): Function returned type is void. (yyparse): Remove call to fclose on the last parsed file. * java-tree.h (jcf_parse): Changed jcf_parse prototype. Wed Nov 18 14:21:48 1998 Anthony Green * jcf-parse.c (yyparse): Open class file in binary mode. Fixes a show-stopper and includes a missing patch. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23715 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/java/ChangeLog | 13 +++++++++++++ gcc/java/java-tree.h | 2 +- gcc/java/jcf-parse.c | 11 ++++------- 3 files changed, 18 insertions(+), 8 deletions(-) diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 6c8456c..4a9a7e0 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,12 @@ +Thu Nov 19 11:16:55 1998 Alexandre Petit-Bianco + + * jcf-parse.c (jcf_parse_source): Function returned type is + void. Added prototype. + (jcf_parse): Function returned type is void. + (yyparse): Remove call to fclose on the last parsed file. + + * java-tree.h (jcf_parse): Changed jcf_parse prototype. + Wed Nov 18 23:54:53 1998 Alexandre Petit-Bianco * class.c (unmangle_classname): Set QUALIFIED_P when appropriate. @@ -115,6 +124,10 @@ Wed Nov 18 23:54:53 1998 Alexandre Petit-Bianco (purge_unchecked_exceptions): Use IS_UNCHECKED_EXCEPTION_P instead of IS_UNCHECKED_EXPRESSION_P. +Wed Nov 18 14:21:48 1998 Anthony Green + + * jcf-parse.c (yyparse): Open class file in binary mode. + Sun Nov 15 17:14:17 1998 Per Bothner * jvgenmain.c: Need to #include "gansidecl.h" (to get PROTO). diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h index 72bc026..4554638 100644 --- a/gcc/java/java-tree.h +++ b/gcc/java/java-tree.h @@ -473,7 +473,7 @@ 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 int jcf_parse PROTO ((struct JCF*)); +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)); diff --git a/gcc/java/jcf-parse.c b/gcc/java/jcf-parse.c index 8b7e29c..8a01b2c 100644 --- a/gcc/java/jcf-parse.c +++ b/gcc/java/jcf-parse.c @@ -72,6 +72,7 @@ static tree give_name_to_class PROTO ((JCF *jcf, int index)); void parse_zip_file_entries PROTO (()); void process_zip_dir PROTO (()); static void parse_source_file PROTO ((tree)); +static void jcf_parse_source PROTO ((JCF *)); /* Handle "SourceFile" attribute. */ @@ -513,7 +514,7 @@ load_class (class_or_name, verbose) /* Parse a source file when JCF refers to a source file. */ -int +void jcf_parse_source (jcf) JCF *jcf; { @@ -536,7 +537,7 @@ jcf_parse_source (jcf) /* Parse the .class file JCF. */ -int +void jcf_parse (jcf) JCF* jcf; { @@ -752,7 +753,7 @@ yyparse () /* Set jcf up and open a new file */ JCF_ZERO (main_jcf); - main_jcf->read_state = fopen (IDENTIFIER_POINTER (name), "r"); + main_jcf->read_state = fopen (IDENTIFIER_POINTER (name), "rb"); if (main_jcf->read_state == NULL) pfatal_with_name (IDENTIFIER_POINTER (name)); @@ -784,10 +785,6 @@ yyparse () } } - if (main_jcf->read_state && fclose (main_jcf->read_state)) - fatal ("failed to close input file `%s' - yyparse", - (main_jcf->filename ? main_jcf->filename : "")); - java_expand_classes (); if (!java_report_errors () && !flag_emit_class_files) emit_register_classes (); -- 2.7.4