| // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file | |
| // for details. All rights reserved. Use of this source code is governed by a | |
| // BSD-style license that can be found in the LICENSE file. | |
| /// Test that the type of a local function is an error if local function type | |
| /// inference requires the type of the function being inferred. | |
| void main() { | |
| f() { | |
| return 3; | |
| } | |
| f().arglebargle; | |
| // ^^^^^^^^^^^ | |
| // [analyzer] COMPILE_TIME_ERROR.UNDEFINED_INSTANCE_MEMBER_READ | |
| // [cfe] The getter 'arglebargle' isn't defined for the class 'int'. | |
| f().isEven; // Inferred type is int | |
| g() { | |
| if (f() == 3) { | |
| return g(); | |
| } else { | |
| return 3; | |
| } | |
| } | |
| // [error column 3] | |
| // [analyzer] unspecified | |
| // [cfe] unspecified | |
| // TODO(45942): This may be the wrong location, but until the linked issue is | |
| // fixed and implementations report the error, this is as good as any. | |
| } |