| // RUN: %target-typecheck-verify-swift |
| |
| class A1 { |
| func foo1() {} |
| func foo2() { |
| var foo1 = foo1() // expected-error {{variable used within its own initial value}} |
| } |
| } |
| |
| class A2 { |
| var foo1 = 2 |
| func foo2() { |
| // FIXME: "the var" doesn't sound right. |
| var foo1 = foo1 // expected-error {{variable used within its own initial value}} |
| } |
| } |
| |
| class A3 { |
| func foo2() { |
| // FIXME: this should also add fixit. |
| var foo1 = foo1() // expected-error {{variable used within its own initial value}}{{none}} |
| } |
| func foo1() {} |
| } |
| |
| class A4 { |
| func foo2() { |
| var foo1 = foo1 // expected-error {{variable used within its own initial value}}{{none}} |
| } |
| } |
| |
| func localContext() { |
| class A5 { |
| func foo1() {} |
| func foo2() { |
| var foo1 = foo1() // expected-error {{variable used within its own initial value}} |
| } |
| |
| class A6 { |
| func foo1() {} |
| func foo2() { |
| var foo1 = foo1() // expected-error {{variable used within its own initial value}} |
| } |
| } |
| |
| extension E { // expected-error {{declaration is only valid at file scope}} |
| // expected-error@-1{{use of undeclared type 'E'}} |
| class A7 { |
| func foo1() {} |
| func foo2() { |
| var foo1 = foo1() // expected-error {{variable used within its own initial value}} |
| } |
| } |
| } |
| } |
| } |