Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(31)

Side by Side Diff: pkg/front_end/testcases/inference/infer_assign_to_property_custom.dart

Issue 2926763003: Add type inference for complex assignments whose LHS is an index expression. (Closed)
Patch Set: Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 /*@testedFeatures=inference*/ 5 /*@testedFeatures=inference*/
6 library test; 6 library test;
7 7
8 class A { 8 class A {
9 int operator +(other) => 1; 9 int operator +(other) => 1;
10 double operator -(other) => 2.0; 10 double operator -(other) => 2.0;
11 } 11 }
12 12
13 class B { 13 class B {
14 A a; 14 A a;
15 } 15 }
16 16
17 var /*@topType=dynamic*/ v_prefix_pp = (/*@target=A::+*/ ++new B() 17 var /*@topType=dynamic*/ v_prefix_pp =
18 . /*error:TOP_LEVEL_INSTANCE_GETTER*/ /*@target=B::a*/ a); 18 (++new B(). /*error:TOP_LEVEL_INSTANCE_GETTER*/ /*@target=B::a*/ a);
19 var /*@topType=dynamic*/ v_prefix_mm = (/*@target=A::-*/ --new B() 19 var /*@topType=dynamic*/ v_prefix_mm =
20 . /*error:TOP_LEVEL_INSTANCE_GETTER*/ /*@target=B::a*/ a); 20 (--new B(). /*error:TOP_LEVEL_INSTANCE_GETTER*/ /*@target=B::a*/ a);
21 var /*@topType=dynamic*/ v_postfix_pp = 21 var /*@topType=dynamic*/ v_postfix_pp =
22 (new B(). /*error:TOP_LEVEL_INSTANCE_GETTER*/ /*@target=B::a*/ a++); 22 (new B(). /*error:TOP_LEVEL_INSTANCE_GETTER*/ /*@target=B::a*/ a++);
23 var /*@topType=dynamic*/ v_postfix_mm = 23 var /*@topType=dynamic*/ v_postfix_mm =
24 (new B(). /*error:TOP_LEVEL_INSTANCE_GETTER*/ /*@target=B::a*/ a--); 24 (new B(). /*error:TOP_LEVEL_INSTANCE_GETTER*/ /*@target=B::a*/ a--);
25 25
26 main() {} 26 main() {}
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698