[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#94974: gcj-3.0 does not know that interface members are public by default



Package: gcj-3.0
Version: 1:3.0-0pre010403
Severity: normal

Observe:

antkaij@himalia:~/test$ cat Interface.java 
package foo1;

public interface Interface {

    interface Inner {
        void foo();
    }

}
antkaij@himalia:~/test$ cat Test.java 
package foo2;
import foo1.*;

public class Test implements Interface.Inner {

    public void foo() {}

}
antkaij@himalia:~/test$ gcj-3.0 -d . -C Interface.java
antkaij@himalia:~/test$ gcj-3.0 -d . -C Test.java 
Test.java:4: Nested interface foo1.Interface$Inner is non-public; cannot be acce
ssed from here.
   public class Test implements Interface.Inner {
                                ^
1 error
antkaij@himalia:~/test$ 


However, section 9.1.4 of The Java Language Specification, second edition,
says: "All interface members are implicitly public." 

-- System Information
Debian Release: testing/unstable
Architecture: i386
Kernel: Linux himalia 2.2.14 #3 Tue May 30 12:34:13 EEST 2000 i686

Versions of packages gcj-3.0 depends on:
ii  gcc-3.0                 1:3.0-0pre010403 The GNU C compiler.               
ii  gcc-3.0-base            1:3.0-0pre010403 The GNU compiler collection (base 
ii  java-common             0.6              Base of all Java packages         
ii  libc6                   2.2.2-4          GNU C Library: Shared libraries an
ii  libgcj300-dev           1:3.0-0pre010403 Java runtime library for use with 
ii  zlib1g                  1:1.1.3-12       compression library - runtime     




Reply to: