summaryrefslogtreecommitdiff
path: root/gcc/java/jcf.h
diff options
context:
space:
mode:
authorAlexandre Petit-Bianco <apbianco@redhat.com>2001-07-05 15:33:44 -0700
committerAlexandre Petit-Bianco <apbianco@gcc.gnu.org>2001-07-05 15:33:44 -0700
commit51e23701494811dd20ed2cf1d6e4c5299d5d24d4 (patch)
treec27ae8ff81e650632f11ca9a8fc6aa5dade53668 /gcc/java/jcf.h
parent43a727554dae9550dbd823af097964fef4aaa265 (diff)
downloadgcc-51e23701494811dd20ed2cf1d6e4c5299d5d24d4.tar.gz
[multiple changes]
2001-07-03 Alexandre Petit-Bianco <apbianco@redhat.com> * parse.y (resolve_expression_name): Improved error message for inner class cases. Fixes PR java/1958 2001-06-27 Alexandre Petit-Bianco <apbianco@redhat.com> * jcf-parse.c (gcc_mark_jcf): Test for a finished JCF. * jcf.h (typedef struct JCF): New bitfield `finished.' (JCF_FINISH): Set `finished.' (JCF_ZERO): Reset `finished.' Fixes PR java/2633 2001-06-27 Alexandre Petit-Bianco <apbianco@redhat.com> * parse.y (class_body_declaration:): Don't install empty instance initializers. Fixes PR java/1314 (http://gcc.gnu.org/ml/gcc-patches/2001-07/msg00321.html ) From-SVN: r43793
Diffstat (limited to 'gcc/java/jcf.h')
-rw-r--r--gcc/java/jcf.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/java/jcf.h b/gcc/java/jcf.h
index 4586f06093a..fc3cedfe838 100644
--- a/gcc/java/jcf.h
+++ b/gcc/java/jcf.h
@@ -90,6 +90,7 @@ typedef struct JCF {
unsigned char *read_end;
int java_source : 1;
int right_zip : 1;
+ int finished : 1;
jcf_filbuf_t filbuf;
void *read_state;
const char *filename;
@@ -144,7 +145,8 @@ typedef struct JCF {
CPOOL_FINISH(&(JCF)->cpool); \
if ((JCF)->buffer) FREE ((JCF)->buffer); \
if ((JCF)->filename) FREE ((char *) (JCF)->filename); \
- if ((JCF)->classname) FREE ((char *) (JCF)->classname); }
+ if ((JCF)->classname) FREE ((char *) (JCF)->classname); \
+ (JCF)->finished = 1; }
#define CPOOL_INIT(CPOOL) \
((CPOOL)->capacity = 0, (CPOOL)->count = 0, (CPOOL)->tags = 0, (CPOOL)->data = 0)
@@ -154,7 +156,8 @@ typedef struct JCF {
#define JCF_ZERO(JCF) \
((JCF)->buffer = (JCF)->buffer_end = (JCF)->read_ptr = (JCF)->read_end = 0,\
(JCF)->read_state = 0, (JCF)->filename = (JCF)->classname = 0, \
- CPOOL_INIT(&(JCF)->cpool), (JCF)->java_source = 0, (JCF)->zipd = 0)
+ CPOOL_INIT(&(JCF)->cpool), (JCF)->java_source = 0, (JCF)->zipd = 0, \
+ (JCF)->finished = 0)
/* Given that PTR points to a 2-byte unsigned integer in network
(big-endian) byte-order, return that integer. */