diff options
Diffstat (limited to 'gcc/java')
-rw-r--r-- | gcc/java/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/java/parse.c | 7 | ||||
-rw-r--r-- | gcc/java/parse.y | 7 |
3 files changed, 19 insertions, 0 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 4cbade6..dac48d9 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,8 @@ +Mon Apr 24 14:59:36 2000 Alexandre Petit-Bianco <apbianco@cygnus.com> + + * parse.y (end_class_declaration): Reset the interface number + counter. + 2000-04-24 Alexandre Petit-Bianco <apbianco@cygnus.com> * parse.y (source_start_java_method): Deleted unecessary code. diff --git a/gcc/java/parse.c b/gcc/java/parse.c index e3e2a5f..92598a5 100644 --- a/gcc/java/parse.c +++ b/gcc/java/parse.c @@ -6567,6 +6567,13 @@ end_class_declaration (resume) POP_CPC (); if (resume && no_error_occured) java_parser_context_resume (); + + /* We're ending a class declaration, this is a good time to reset + the interface cout. Note that might have been already done in + create_interface, but if at that time an inner class was being + dealt with, the interface count was reset in a context created + for the sake of handling inner classes declaration. */ + ctxp->interface_number = 0; } static void diff --git a/gcc/java/parse.y b/gcc/java/parse.y index d2c5b12..13cbab8 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -3869,6 +3869,13 @@ end_class_declaration (resume) POP_CPC (); if (resume && no_error_occured) java_parser_context_resume (); + + /* We're ending a class declaration, this is a good time to reset + the interface cout. Note that might have been already done in + create_interface, but if at that time an inner class was being + dealt with, the interface count was reset in a context created + for the sake of handling inner classes declaration. */ + ctxp->interface_number = 0; } static void |