public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
From: Alexandre Petit-Bianco <apbianco@cygnus.com>
To: nobody@gcc.gnu.org
Cc: gcc-prs@gcc.gnu.org
Subject: Re: java/2412: jv-scan reports parse error
Date: Fri, 30 Mar 2001 14:56:00 -0000	[thread overview]
Message-ID: <20010330225600.31876.qmail@sourceware.cygnus.com> (raw)

The following reply was made to PR java/2412; it has been noted by GNATS.

From: Alexandre Petit-Bianco <apbianco@cygnus.com>
To: Mika.Riekkinen@tellabs.com
Cc: gcc-gnats@gcc.gnu.org
Subject: Re: java/2412: jv-scan reports parse error
Date: Fri, 30 Mar 2001 14:46:06 -0800 (PST)

 Mika.Riekkinen@tellabs.com writes:
 
 > jv-scan reports parse error on the following code.
 
 Thanks. Here's a patch that fixes the problem. I also wrote a patch to
 take care of the other jv-scan related parse errors reported by `make
 check.'
 
 I intend to check this in pretty soon, in the branch and in the trunk.
 
 ./A
 
 2001-03-30  Alexandre Petit-Bianco  <apbianco@redhat.com>
 
 	* parse-scan.y (array_type:): Rewritten.
 	(type_declaration:): `empty_statement' replaces `SC_TK.'
 	(class_member_declaration:): `empty statement' added.
 	(method_body:): Simplified.
 	(static_initializer:): Likewise.
 	(primary_no_new_array:): Use `type_literals.'
 	(type_literals:): New rule.
 	(dims:): Set and update `bracket_count.'
 	Fixes PR java/2412.
 
 Index: parse-scan.y
 ===================================================================
 RCS file: /cvs/gcc/gcc/gcc/java/parse-scan.y,v
 retrieving revision 1.20
 diff -u -p -r1.20 parse-scan.y
 --- parse-scan.y	2000/11/20 22:56:14	1.20
 +++ parse-scan.y	2001/03/30 21:56:13
 @@ -242,14 +243,15 @@ interface_type:
  ;
  
  array_type:
 -	primitive_type OSB_TK CSB_TK
 -|	name OSB_TK CSB_TK
 +	primitive_type dims
  		{
 -		  $$ = concat ("[", $1, NULL);
 +	          while (bracket_count-- > 0) 
 +		    $$ = concat ("[", $1, NULL);
  		}
 -|	array_type OSB_TK CSB_TK
 -		{	
 -		  $$ = concat ("[", $1, NULL);
 +|	name dims
 +		{
 +	          while (bracket_count-- > 0) 
 +		    $$ = concat ("[", $1, NULL);
  		}
  ;
  
 @@ -316,7 +318,7 @@ type_import_on_demand_declaration:
  type_declaration:
  	class_declaration
  |	interface_declaration
 -|	SC_TK
 +|	empty_statement
  ;
  
  /* 19.7 Shortened from the original:
 @@ -393,6 +395,7 @@ class_member_declaration:
  |	method_declaration
  |	class_declaration	/* Added, JDK1.1 inner classes */
  |	interface_declaration	/* Added, JDK1.1 inner classes */
 +|	empty_statement
  ;
  
  /* 19.8.2 Productions from 8.3: Field Declarations  */
 @@ -513,14 +516,12 @@ class_type_list:
  
  method_body:
  	block
 -|	block SC_TK
  |	SC_TK
  ;
  
  /* 19.8.4 Productions from 8.5: Static Initializers  */
  static_initializer:
  	static block
 -|	static block SC_TK	/* Shouldn't be here. FIXME */
  ;
  
  static:				/* Test lval.sub_token here */
 @@ -892,14 +893,7 @@ primary_no_new_array:
  |	field_access
  |	method_invocation
  |	array_access
 -	/* type DOT_TK CLASS_TK doens't work. So we split the rule
 -	   'type' into its components. Missing is something for array,
 -	   which will complete the reference_type part. FIXME */
 -|	name DOT_TK CLASS_TK	       /* Added, JDK1.1 class literals */
 -		{ USE_ABSORBER; }
 -|	primitive_type DOT_TK CLASS_TK /* Added, JDK1.1 class literals */
 -		{ USE_ABSORBER; }
 -|	VOID_TK DOT_TK CLASS_TK	       /* Added, JDK1.1 class literals */
 +|	type_literals
          /* Added, JDK1.1 inner classes. Documentation is wrong
             refering to a 'ClassName' (class_name) rule that doesn't
             exist. Used name instead.  */
 @@ -907,6 +901,17 @@ primary_no_new_array:
  		{ USE_ABSORBER; }
  ;
  
 +type_literals:
 +	name DOT_TK CLASS_TK
 +		{ USE_ABSORBER; }
 +|	array_type DOT_TK CLASS_TK
 +		{ USE_ABSORBER; }
 +|	primitive_type DOT_TK CLASS_TK
 +		{ USE_ABSORBER; }
 +|	VOID_TK DOT_TK CLASS_TK
 +		{ USE_ABSORBER; }
 +;
 +
  class_instance_creation_expression:
  	NEW_TK class_type OP_TK argument_list CP_TK
  |	NEW_TK class_type OP_TK CP_TK
 @@ -960,7 +965,9 @@ dim_expr:
  
  dims:				
  	OSB_TK CSB_TK
 +		{ bracket_count = 1; }
  |	dims OSB_TK CSB_TK
 +		{ bracket_count++; }
  ;
  
  field_access:


             reply	other threads:[~2001-03-30 14:56 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-03-30 14:56 Alexandre Petit-Bianco [this message]
  -- strict thread matches above, loose matches on Subject: below --
2001-04-04 10:46 Alexandre Petit-Bianco
2001-03-31  2:06 Alexandre Petit-Bianco
2001-03-30 16:16 Tom Tromey
2001-03-28  3:56 Mika.Riekkinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20010330225600.31876.qmail@sourceware.cygnus.com \
    --to=apbianco@cygnus.com \
    --cc=gcc-prs@gcc.gnu.org \
    --cc=nobody@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).