This is the mail archive of the
java-prs@gcc.gnu.org
mailing list for the Java project.
[Bug java/21418] Order of source files matters when compiling
- From: "mark at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: java-prs at gcc dot gnu dot org
- Date: 11 Sep 2005 22:29:45 -0000
- Subject: [Bug java/21418] Order of source files matters when compiling
- References: <20050506142914.21418.mark@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From mark at gcc dot gnu dot org 2005-09-11 22:29 -------
And I tracked our problems with The javax.swing.Box inner class AccessibleBox
extends AccessibleAWTContainer in GNU Classpath to a similar order problem.
Take the following source files:
p/AClass.java
::::::::::::::
package p;
public class AClass
{
protected abstract class InnerA
{
protected InnerA()
{
}
}
}
::::::::::::::
q/BClass.java
::::::::::::::
package q;
import p.*;
public class BClass extends AClass
{
protected class InnerB extends AClass.InnerA
{
}
}
::::::::::::::
q/CClass.java
::::::::::::::
package q;
import p.AClass;
public class CClass extends BClass
{
protected class InnerC extends AClass.InnerA
{
}
}
When compiled as follows all goes well:
$ gcj -C p/AClass.java q/BClass.java q/CClass.java
But when we change the order to:
$ gcj -C p/AClass.java q/CClass.java q/BClass.java
q/CClass.java:5: error: Nested class p.AClass$InnerA is protected; cannot be
accessed from here.
protected class InnerC extends AClass.InnerA
^
1 error
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21418