blob: 24c34449db3efe1185c4bbe23b035fc956388756 [file] [log] [blame]
class Outer {
class Inner1 extends Outer {
Inner1() {}
Inner1(Outer o) {}
}
class Inner2 extends Inner1 {
public Inner2(Object o) {
<error descr="Incompatible types. Found: 'java.lang.Object', required: 'Outer'">o</error>.super();
}
public Inner2(int o) {
Outer.this.super();
}
public Inner2(Outer o) {
o.super(Outer.this);
}
public Inner2(Outer o, int par) {
o.super(<error descr="Cannot reference 'this' before supertype constructor has been called">this</error>);
}
public Inner2(Outer o, Object par) {
<error descr="Cannot reference 'this' before supertype constructor has been called">this</error>.super(o);
}
}
class BadInner extends Inner1 {
<error descr="Cannot reference 'BadInner.this' before supertype constructor has been called">BadInner()</error> {}
}
<error descr="Cannot reference 'BadInner2.this' before supertype constructor has been called">class BadInner2 extends Inner1</error> {
}
class s {
void f(Object o) {
new s();
Outer.this.new s();
}
}
}
class Outer2 {
class Inner {}
}
class Ext extends Outer2 {
class ExtInner extends Inner {
ExtInner() {
super();
}
}
}