| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 part of dart2js.semantics_visitor_test; | 5 part of dart2js.semantics_visitor_test; |
| 6 | 6 |
| 7 const Map<String, List<Test>> SEND_TESTS = const { | 7 const Map<String, List<Test>> SEND_TESTS = const { |
| 8 'Parameters': const [ | 8 'Parameters': const [ |
| 9 // Parameters | 9 // Parameters |
| 10 const Test('m(o) => o;', | 10 const Test('m(o) => o;', |
| (...skipping 2684 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2695 set a(_) {} | 2695 set a(_) {} |
| 2696 } | 2696 } |
| 2697 | 2697 |
| 2698 class C extends B { | 2698 class C extends B { |
| 2699 m() => super.a += 42; | 2699 m() => super.a += 42; |
| 2700 } | 2700 } |
| 2701 ''', | 2701 ''', |
| 2702 const Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_COMPOUND, | 2702 const Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_COMPOUND, |
| 2703 getter: 'field(A#a)', setter: 'setter(B#a)', | 2703 getter: 'field(A#a)', setter: 'setter(B#a)', |
| 2704 operator: '+=', rhs: '42')), | 2704 operator: '+=', rhs: '42')), |
| 2705 // TODO(johnniwinther): Enable this when dart2js supports shadow setters. | 2705 const Test.clazz( |
| 2706 /*const Test.clazz( | |
| 2707 ''' | 2706 ''' |
| 2708 class A { | 2707 class A { |
| 2709 var a; | 2708 var a; |
| 2710 } | 2709 } |
| 2711 class B extends A { | 2710 class B extends A { |
| 2712 final a = 0; | 2711 final a = 0; |
| 2713 } | 2712 } |
| 2714 | 2713 |
| 2715 class C extends B { | 2714 class C extends B { |
| 2716 m() => super.a += 42; | 2715 m() => super.a += 42; |
| 2717 } | 2716 } |
| 2718 ''', | 2717 ''', |
| 2719 const Visit(VisitKind.VISIT_SUPER_FIELD_FIELD_COMPOUND, | 2718 // TODO(johnniwinther): Change this to |
| 2720 getter: 'field(B#a)', setter: 'field(A#a)', | 2719 // [VISIT_SUPER_FIELD_FIELD_COMPOUND] when dart2js supports shadow |
| 2721 operator: '+=', rhs: '42')),*/ | 2720 // setters. |
| 2721 const Visit(VisitKind.VISIT_SUPER_FINAL_FIELD_COMPOUND, |
| 2722 element: 'field(B#a)', |
| 2723 operator: '+=', rhs: '42')), |
| 2722 const Test.clazz( | 2724 const Test.clazz( |
| 2723 ''' | 2725 ''' |
| 2724 class B { | 2726 class B { |
| 2725 a() {} | 2727 a() {} |
| 2726 } | 2728 } |
| 2727 class C extends B { | 2729 class C extends B { |
| 2728 m() => super.a += 42; | 2730 m() => super.a += 42; |
| 2729 } | 2731 } |
| 2730 ''', | 2732 ''', |
| 2731 const Visit(VisitKind.VISIT_SUPER_METHOD_COMPOUND, | 2733 const Visit(VisitKind.VISIT_SUPER_METHOD_COMPOUND, |
| (...skipping 1698 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4430 set a(_) {} | 4432 set a(_) {} |
| 4431 } | 4433 } |
| 4432 | 4434 |
| 4433 class C extends B { | 4435 class C extends B { |
| 4434 m() => super.a ??= 42; | 4436 m() => super.a ??= 42; |
| 4435 } | 4437 } |
| 4436 ''', | 4438 ''', |
| 4437 const Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_SET_IF_NULL, | 4439 const Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_SET_IF_NULL, |
| 4438 getter: 'field(A#a)', setter: 'setter(B#a)', | 4440 getter: 'field(A#a)', setter: 'setter(B#a)', |
| 4439 rhs: '42')), | 4441 rhs: '42')), |
| 4440 // TODO(johnniwinther): Enable this when dart2js supports shadow setters. | 4442 const Test.clazz( |
| 4441 /*const Test.clazz( | |
| 4442 ''' | 4443 ''' |
| 4443 class A { | 4444 class A { |
| 4444 var a; | 4445 var a; |
| 4445 } | 4446 } |
| 4446 class B extends A { | 4447 class B extends A { |
| 4447 final a = 0; | 4448 final a = 0; |
| 4448 } | 4449 } |
| 4449 | 4450 |
| 4450 class C extends B { | 4451 class C extends B { |
| 4451 m() => super.a ??= 42; | 4452 m() => super.a ??= 42; |
| 4452 } | 4453 } |
| 4453 ''', | 4454 ''', |
| 4454 const Visit(VisitKind.VISIT_SUPER_FIELD_FIELD_SET_IF_NULL, | 4455 // TODO(johnniwinther): Change this to |
| 4455 getter: 'field(B#a)', setter: 'field(A#a)', | 4456 // [VISIT_SUPER_FIELD_FIELD_SET_IF_NULL] when dart2js supports shadow |
| 4456 rhs: '42')),*/ | 4457 // setters. |
| 4458 const Visit(VisitKind.VISIT_SUPER_FINAL_FIELD_SET_IF_NULL, |
| 4459 element: 'field(B#a)', |
| 4460 rhs: '42')), |
| 4457 const Test.clazz( | 4461 const Test.clazz( |
| 4458 ''' | 4462 ''' |
| 4459 class B { | 4463 class B { |
| 4460 a() {} | 4464 a() {} |
| 4461 } | 4465 } |
| 4462 class C extends B { | 4466 class C extends B { |
| 4463 m() => super.a ??= 42; | 4467 m() => super.a ??= 42; |
| 4464 } | 4468 } |
| 4465 ''', | 4469 ''', |
| 4466 const Visit(VisitKind.VISIT_SUPER_METHOD_SET_IF_NULL, | 4470 const Visit(VisitKind.VISIT_SUPER_METHOD_SET_IF_NULL, |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4572 element: 'field(a)', rhs: '42')), | 4576 element: 'field(a)', rhs: '42')), |
| 4573 | 4577 |
| 4574 const Test( | 4578 const Test( |
| 4575 ''' | 4579 ''' |
| 4576 m() => unresolved ??= 42; | 4580 m() => unresolved ??= 42; |
| 4577 ''', | 4581 ''', |
| 4578 const Visit(VisitKind.VISIT_UNRESOLVED_SET_IF_NULL, | 4582 const Visit(VisitKind.VISIT_UNRESOLVED_SET_IF_NULL, |
| 4579 name: 'unresolved', rhs: '42')), | 4583 name: 'unresolved', rhs: '42')), |
| 4580 ], | 4584 ], |
| 4581 }; | 4585 }; |
| OLD | NEW |