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 file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 class Super { | 5 class Super { |
6 /*Super.field:Union of [[exact=JSUInt31], [exact=Sub]]*/ | 6 /*element: Super.field:Union of [[exact=JSUInt31], [exact=Sub]]*/ |
7 var field = 42; | 7 var field = 42; |
8 } | 8 } |
9 | 9 |
10 class Sub extends Super { | 10 class Sub extends Super { |
11 /*Sub.method:[subclass=Closure]*/ | 11 /*element: Sub.method:[subclass=Closure]*/ |
12 method() { | 12 method() { |
13 // ignore: INVALID_ASSIGNMENT | 13 // ignore: INVALID_ASSIGNMENT |
14 var a = super.field = new Sub(); | 14 var a = super.field = new Sub(); |
15 return a. /*[exact=Sub]*/ method; | 15 return a. /*[exact=Sub]*/ method; |
16 } | 16 } |
17 } | 17 } |
18 | 18 |
19 /*main:[null]*/ | 19 /*element: main:[null]*/ |
20 main() { | 20 main() { |
21 new Sub(). /*[exact=Sub]*/ method(); | 21 new Sub(). /*invoke: [exact=Sub]*/ method(); |
22 } | 22 } |
OLD | NEW |