blob: 8c53b400182939b414ba7fedb8cd76871bdf38b9 [file] [log] [blame]
// Copyright (c) 2017, 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.
/*@testedFeatures=inference*/
library test;
class A {
int x = 0;
/*@topType=dynamic*/ test1() {
var /*@type=int*/ a = /*@target=A::x*/ x;
a = /*error:INVALID_ASSIGNMENT*/ "hi";
a = 3;
var /*@type=int*/ b = /*@target=A::y*/ y;
b = /*error:INVALID_ASSIGNMENT*/ "hi";
b = 4;
var /*@type=int*/ c = /*@target=A::z*/ z;
c = /*error:INVALID_ASSIGNMENT*/ "hi";
c = 4;
}
int y; // field def after use
final /*@topType=int*/ z = 42; // should infer `int`
}
main() {}