| // call to super must be first |
| class a { |
| a() {} |
| a(int i) {} |
| } |
| |
| class b extends a { |
| b() { |
| int i = 3; |
| <error descr="Call to 'super()' must be first statement in constructor body">super()</error>; |
| } |
| b(int i) { |
| this(); |
| <error descr="Call to 'super()' must be first statement in constructor body">super(2)</error>; |
| } |
| b(char i) { |
| super(4); |
| <error descr="Call to 'this()' must be first statement in constructor body">this()</error>; |
| } |
| |
| b(String s) { |
| try { |
| <error descr="Call to 'super()' must be first statement in constructor body">super(2)</error>; |
| } |
| finally { |
| } |
| } |
| b(String s, int i) { |
| { |
| <error descr="Call to 'super()' must be first statement in constructor body">super(2)</error>; |
| } |
| } |
| |
| void f() { |
| <error descr="Call to 'super()' must be first statement in constructor body">super()</error>; |
| } |
| void g() { |
| <error descr="Call to 'this()' must be first statement in constructor body">this()</error>; |
| } |
| |
| } |
| class O extends <error descr="No enclosing instance of type 'A' is in scope">A.B</error> |
| { |
| public O(A a) |
| { |
| int i = 0; |
| <error descr="Call to 'a.super()' must be first statement in constructor body">a.super()</error>; |
| } |
| public O(A a,int i) |
| { |
| a.super(); |
| i = 0; |
| } |
| } |
| |
| class A |
| { |
| class B |
| { |
| class C{} |
| } |
| |
| } |