aboutsummaryrefslogtreecommitdiffstats
path: root/tests/bugs154/pr203646/ExampleC.java
blob: a42ac4eb7c215c817c274810ea48807e2095c286 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// ITD of a method onto a generic inner inner type

interface I {
  interface J {
	  interface K<T> {}
  }
}

aspect Bang {
 public int I.J.K<T>.intro(T t) {return 42;}
}

class Impl implements I {
  class InnerImpl implements J {
	  class InnerInnerImpl implements K<String> {}
  }
}

public class ExampleC {
  public static void main(String []argv) {
    Impl i = new Impl();
    Impl.InnerImpl j = i.new InnerImpl();
    Impl.InnerImpl.InnerInnerImpl k = j.new InnerInnerImpl();
    System.out.println(k.intro("foo"));
  }
}