| OLD | NEW |
| 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.md file. | 3 // BSD-style license that can be found in the LICENSE.md file. |
| 4 | 4 |
| 5 /*@testedFeatures=inference*/ | 5 /*@testedFeatures=inference*/ |
| 6 library test; | 6 library test; |
| 7 | 7 |
| 8 class C<T> { | 8 class C<T> { |
| 9 T t; | 9 T t; |
| 10 C(this.t); | 10 C(this.t); |
| 11 } | 11 } |
| 12 | 12 |
| 13 main() { | 13 main() { |
| 14 var /*@type=C<int>*/ x = new /*@typeArgs=int*/ C(42); | 14 var /*@type=C<int>*/ x = new /*@typeArgs=int*/ C(42); |
| 15 | 15 |
| 16 num y; | 16 num y; |
| 17 C<int> c_int = new /*@typeArgs=int*/ C( | 17 C<int> c_int = new /*@typeArgs=int*/ C( |
| 18 /*info:DOWN_CAST_IMPLICIT*/ /*@promotedType=none*/ y); | 18 /*info:DOWN_CAST_IMPLICIT*/ y); |
| 19 | 19 |
| 20 C<num> c_num = new /*@typeArgs=num*/ C(123); | 20 C<num> c_num = new /*@typeArgs=num*/ C(123); |
| 21 | 21 |
| 22 // Don't infer from explicit dynamic. | 22 // Don't infer from explicit dynamic. |
| 23 var /*@type=C<dynamic>*/ c_dynamic = new C<dynamic>(42); | 23 var /*@type=C<dynamic>*/ c_dynamic = new C<dynamic>(42); |
| 24 } | 24 } |
| OLD | NEW |