+++ /dev/null
-// This test case once showed that `f[0].execute(x)' woudln't be
-// expanded properly, attempting to retrieve this$0 to be used in
-// place of `f[0]'.
-
-abstract class A {
- abstract public void execute(C x);
-}
-
-class C {}
-
-class Z extends A {
- public void execute (C x) {
- System.out.println ("Z.execute");
- }
-}
-
-public class invoke_from_inner extends A {
-
- Z f[] = new Z[1];
- class D extends C {
- D (C x) {
- f[0].execute (x);
- execute (x);
- }
- }
- public void execute (C x) {
- System.out.println ("invoke_from_inner.execute");
- }
-
- public static void main (String a[]) {
- new invoke_from_inner().foo();
- }
- void foo () {
- f[0] = new Z();
- new D(new C());
- }
-}