This is the mail archive of the gcc-prs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

java/1319: internal error when compiling static inner class code



>Number:         1319
>Category:       java
>Synopsis:       internal error when compiling static inner class code
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    apbianco
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Dec 20 12:19:01 PST 2000
>Closed-Date:    Tue Nov 21 21:26:22 PST 2000
>Last-Modified:  Tue Nov 21 21:30:00 PST 2000
>Originator:     Oskar Liljeblad
>Release:        unknown-1.0
>Organization:
>Environment:
egcs 2.96 20000731
>Description:
Compiling the code below gives this error:

$ gcj -C Collections.java 
Collections.java: In class `Collections$SomeInnerClass':
Collections.java: In method `access$0(Collections$SomeInnerClass)':
Collections.java:0: Tree check: expected tree_list, have pointer_type
Collections.java:0: Internal compiler error in find_as_inner_class_do, at ../gcc/java/parse.y:3517
Please submit a full bug report.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
$

If you remove 'static' from SomeInnerClass or super.next() it
compiles fine.
>How-To-Repeat:
class Collections {
	static class SomeInnerClass {
		public void bleh() {
			new Iterator() {
           		public void next() {
             		super.next();
           		}
         	};
		}
	}
}
class Iterator {
	public void next() { }
}
>Fix:

>Release-Note:

>Audit-Trail:

Formerly PR gcj/297

State-Changed-From-To: open->feedback
State-Changed-By: apbianco
State-Changed-When: Tue Oct 31 20:19:54 2000
State-Changed-Why:
    I attached a patch.

From: apbianco@cygnus.com
To: apbianco@cygnus.com, java-gnats@sourceware.cygnus.com, osk@hem.passagen.se
Cc:  
Subject: Re: gcj/297
Date: 1 Nov 2000 04:19:55 -0000

 Synopsis: internal error when compiling static inner class code
 
 State-Changed-From-To: open->feedback
 State-Changed-By: apbianco
 State-Changed-When: Tue Oct 31 20:19:54 2000
 State-Changed-Why:
     I attached a patch.
 
 http://sources.redhat.com/cgi-bin/gnatsweb.pl?cmd=view&pr=297&database=java

From: Bryce McKinlay <bryce@albatross.co.nz>
To: apbianco@cygnus.com
Cc: java-gnats@sourceware.cygnus.com
Subject: Re: gcj/297
Date: Thu, 02 Nov 2000 21:11:44 +1300

 apbianco@cygnus.com wrote:
 
 >  Synopsis: internal error when compiling static inner class code
 >
 >  State-Changed-From-To: open->feedback
 >  State-Changed-By: apbianco
 >  State-Changed-When: Tue Oct 31 20:19:54 2000
 >  State-Changed-Why:
 >      I attached a patch.
 
 Thanks Alex.
 
 There is still a related problem with the way fields are resolved for static
 classes:
 
 class SI
 {
   int foo;
 
   static class StaticInner extends SI
   {
     void a()
     {
       int k = foo;
     }
   }
 }
 
 $ gcj -c SI.java
 SI.java: In class `SI$StaticInner':
 SI.java: In method `a()':
 SI.java:12: Undefined variable or class name: `this$0'.
    }
    ^
 1 error
 
 [This is with the 297 fix applied]
 
 regards
 
   [ bryce ]
 
 

From: Alexandre Petit-Bianco <apbianco@cygnus.com>
To: Bryce McKinlay <bryce@albatross.co.nz>
Cc: java-gnats@sourceware.cygnus.com
Subject: Re: gcj/297
Date: Thu, 2 Nov 2000 20:08:26 -0800 (PST)

 Bryce McKinlay writes:
 
 > There is still a related problem with the way fields are resolved
 > for static classes:
 
 Oh, yes, thanks. I posted a new patch. 
 
 ./A
State-Changed-From-To: feedback->closed
State-Changed-By: apbianco
State-Changed-When: Tue Nov 21 21:26:22 2000
State-Changed-Why:
    I checked in the following patch:
      http://gcc.gnu.org/ml/gcc-patches/2000-11/msg01217.html

From: apbianco@cygnus.com
To: apbianco@cygnus.com, java-gnats@sourceware.cygnus.com, osk@hem.passagen.se
Cc:  
Subject: Re: gcj/297
Date: 22 Nov 2000 05:26:22 -0000

 Synopsis: internal error when compiling static inner class code
 
 State-Changed-From-To: feedback->closed
 State-Changed-By: apbianco
 State-Changed-When: Tue Nov 21 21:26:22 2000
 State-Changed-Why:
     I checked in the following patch:
       http://gcc.gnu.org/ml/gcc-patches/2000-11/msg01217.html
 
 http://sources.redhat.com/cgi-bin/gnatsweb.pl?cmd=view&pr=297&database=java
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="patch"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="patch"

MjAwMC0xMC0zMSAgQWxleGFuZHJlIFBldGl0LUJpYW5jbyAgPGFwYmlhbmNvQGN5Z251cy5jb20+
CgoJKiBwYXJzZS55IChvdXRlcl9maWVsZF9hY2Nlc3NfcCk6IEluaGVyaXRlZCBmaWVsZHMgYXJl
bid0Cgljb25zaWRlciBvdXRlciBmaWVsZHMuCgkobWF5YmVfYnVpbGRfdGhpc25fYWNjZXNzX21l
dGhvZCk6IFVzZQoJUFVSRV9JTk5FUl9DTEFTU19UWVBFX1AgaW5zdGVhZCBvZiBJTk5FUl9DTEFT
U19UWVBFX1AuCgkocmVzb2x2ZV9leHByZXNzaW9uX25hbWUpOiBUcmlnZ2VyIGFuIGVycm9yIGlm
IGEgc3RhdGljIGZpZWxkCglpcyBiZWluZyBhY2Nlc3NlZCBhcyBhbiBvdXRlciBmaWVsZC4KCklu
ZGV4OiBwYXJzZS55Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvZ2NjL2VnY3MvZ2NjL2phdmEv
cGFyc2UueSx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4yMjEKZGlmZiAtdSAtcCAtcjEuMjIxIHBh
cnNlLnkKLS0tIHBhcnNlLnkJMjAwMC8xMC8yNSAwNTo0NzoyOAkxLjIyMQorKysgcGFyc2UueQky
MDAwLzExLzAyIDE5OjM5OjQ2CkBAIC03ODg2LDYgKzc5NDYsMTEgQEAgb3V0ZXJfZmllbGRfYWNj
ZXNzX3AgKHR5cGUsIGRlY2wpCiAgICAgICB8fCBUUkVFX0NPREUgKGRlY2wpICE9IEZJRUxEX0RF
Q0wKICAgICAgIHx8IERFQ0xfQ09OVEVYVCAoZGVjbCkgPT0gdHlwZSkKICAgICByZXR1cm4gMDsK
KyAgCisgIC8qIElmIHRoZSBpbm5lciBjbGFzcyBleHRlbmRzIHRoZSBkZWNsYXJhdGlvbiBjb250
ZXh0IG9mIHRoZSBmaWVsZAorICAgICB3ZSdyZSB0cnkgdG8gYWNjZXMsIHRoZW4gdGhpcyBpc24n
dCBhbiBvdXRlciBmaWVsZCBhY2Nlc3MgKi8KKyAgaWYgKGluaGVyaXRzX2Zyb21fcCAodHlwZSwg
REVDTF9DT05URVhUIChkZWNsKSkpCisgICAgcmV0dXJuIDA7CiAKICAgZm9yICh0eXBlID0gVFJF
RV9UWVBFIChERUNMX0NPTlRFWFQgKFRZUEVfTkFNRSAodHlwZSkpKTsgOwogICAgICAgIHR5cGUg
PSBUUkVFX1RZUEUgKERFQ0xfQ09OVEVYVCAoVFlQRV9OQU1FICh0eXBlKSkpKQpAQCAtODIzNyw3
ICs4MzAzLDcgQEAgbWF5YmVfYnVpbGRfdGhpc25fYWNjZXNzX21ldGhvZCAodHlwZSkKIAogICAv
KiBJZiBUWVBFIGlzIGEgdG9wLWxldmVsIGNsYXNzLCBubyBhY2Nlc3MgbWV0aG9kIGlzIHJlcXVp
cmVkLgogICAgICBJZiB0aGVyZSBhbHJlYWR5IGlzIHN1Y2ggYW4gYWNjZXNzIG1ldGhvZCwgYmFp
bCBvdXQuICovCi0gIGlmIChDTEFTU19BQ0NFU1MwX0dFTkVSQVRFRF9QICh0eXBlKSB8fCAhSU5O
RVJfQ0xBU1NfVFlQRV9QICh0eXBlKSkKKyAgaWYgKENMQVNTX0FDQ0VTUzBfR0VORVJBVEVEX1Ag
KHR5cGUpIHx8ICFQVVJFX0lOTkVSX0NMQVNTX1RZUEVfUCAodHlwZSkpCiAgICAgcmV0dXJuIE5V
TExfVFJFRTsKIAogICAvKiBXZSBnZW5lcmF0ZSB0aGUgbWV0aG9kLiBUaGUgbWV0aG9kIGxvb2tz
IGxpa2U6CkBAIC04ODY1LDcgKzg5MzEsMTQgQEAgcmVzb2x2ZV9leHByZXNzaW9uX25hbWUgKGlk
LCBvcmlnKQogCQkgdG8gYWNjZXNzIGEgZmllbGQgYmVsb25naW5nIHRvIGFuIG91dGVyIGNsYXNz
LCBidWlsZAogCQkgdGhlIGFjY2VzcyB0byB0aGUgZmllbGQgKi8KIAkgICAgICBpZiAoIWZzICYm
IG91dGVyX2ZpZWxkX2FjY2Vzc19wIChjdXJyZW50X2NsYXNzLCBkZWNsKSkKLQkJcmV0dXJuIGJ1
aWxkX291dGVyX2ZpZWxkX2FjY2VzcyAoaWQsIGRlY2wpOworCQl7CisJCSAgaWYgKENMQVNTX1NU
QVRJQyAoVFlQRV9OQU1FIChjdXJyZW50X2NsYXNzKSkpCisJCSAgICB7CisJCSAgICAgIHN0YXRp
Y19yZWZfZXJyIChpZCwgREVDTF9OQU1FIChkZWNsKSwgY3VycmVudF9jbGFzcyk7CisJCSAgICAg
IHJldHVybiBlcnJvcl9tYXJrX25vZGU7CisJCSAgICB9CisJCSAgcmV0dXJuIGJ1aWxkX291dGVy
X2ZpZWxkX2FjY2VzcyAoaWQsIGRlY2wpOworCQl9CiAKIAkgICAgICAvKiBPdGhlcndpc2UgYnVp
bGQgd2hhdCBpdCB0YWtlcyB0byBhY2Nlc3MgdGhlIGZpZWxkICovCiAJICAgICAgYWNjZXNzID0g
YnVpbGRfZmllbGRfcmVmICgoZnMgPyBOVUxMX1RSRUUgOiBjdXJyZW50X3RoaXMpLAo=



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]