/* * Copyright 2000-2012 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ // illegal method calls class A { private class B { Object o = super; } private B b = null; A(A a) { new A(a).new B(); B b = new A(a).b; AA aa = (AA) a; AA.SAA saa = aa.new SAA(); AA.SAA saa1 = new AA.SAA(); } } class AA extends A { private AA aa; AA(A a) { super(a); } class SAA {} void f() { new AA.SAA(); new SAA(); AA.this.aa.new SAA(); class MyAA extends AA { public MyAA(A a) { super(a); } } } } class AX { class B { } } class CX { { new AX.B(); } } class c { c() {} class inner { class ininner {} } static void f() { new inner(); } static { new inner(); } } class A1 { void f() {} } class B1 { void f() { A1.f(); } } class AAAA implements java.io.Serializable { public AAAA () { super(); // here } } class DCC { public DCC(int i) { } public DCC(int i, int z) { DCC(i); } void f() { DCC(1); new DCC(1); } { java.toString(); } } class ThisExpression { static String foo() { System.out.println(this); return super.toString(); } }