1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- /* intertype method declarations should be a static context;
- it is incorrect to refer to instance variables of the
- originating aspect. ajc fails to check this properly when
- an ITD method is applied to an inner class.
-
- The example below compiles fine, but then throws
-
- java.lang.NoSuchFieldError: zzz
-
- when run.
-
- */
-
- aspect NewFoo {
-
- int zzz = 3;
-
- public void Aaa.Ccc.bar() {
- System.out.println(zzz); // CE L19: illegal reference to zzz
- }
- }
-
- class Aaa {
-
- public class Ccc {
-
- }
-
- public Ccc ccc;
-
- public Aaa() {
- ccc = new Ccc();
- }
- }
-
- class IllegalRef {
-
-
- public static void main(String[] args) {
- Aaa aaa = new Aaa();
- aaa.ccc.bar();
- }
-
- }
|