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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug java/27925] New: Trampolines not generated for private inner class methods.


The attached test case compiles to bytecode wrong. It should generate a
package-private accessor function in the inner class that calls the private
method, which the containing class calls. Instead, the containing class calls
the private method directly, and no trampoline is created in the inner class.

This violates access rules, and thus the test case will not run.

Steps to reproduce:
gcj -C xxx.java
gij xxx

Expected results:
A line "This is foo!" is printed.

Actual results:
An exception is thrown:
Exception in thread "main" java.lang.IllegalAccessError: xxx: xxx$blargh.foo()V
   at xxx.main(xxx.java:5)

$ gcj --version
gcj (GCC) 4.2.0 20060606 (experimental)


-- 
           Summary: Trampolines not generated for private inner class
                    methods.
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: java
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: csm at gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27925


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