OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 S { } | 5 class S { } |
6 class G<T> { } | 6 class G<T> { } |
7 class M { } | 7 class M { } |
8 | 8 |
9 typedef T0 = abstract S with M; | 9 typedef T0 = abstract S with M; |
10 abstract class T0A = S with M; | 10 abstract class T0A = S with M; |
11 class T1 = final S with M; // /// 01: compile-time error | 11 class T1 = final S with M; // //# 01: compile-time error |
12 class T2 = var S with M; // /// 02: compile-time error | 12 class T2 = var S with M; // //# 02: compile-time error |
13 class T3 = const S with M; // /// 03: compile-time error | 13 class T3 = const S with M; // //# 03: compile-time error |
14 class T4 = static S with M; // /// 04: compile-time error | 14 class T4 = static S with M; // //# 04: compile-time error |
15 class T5 = external S with M; // /// 05: compile-time error | 15 class T5 = external S with M; // //# 05: compile-time error |
16 class T6 = G<int> with M; | 16 class T6 = G<int> with M; |
17 class T7 = G<Map<String,int>> with M; | 17 class T7 = G<Map<String,int>> with M; |
18 | 18 |
19 class C0 extends abstract S with M { } // /// 06: compile-time error | 19 class C0 extends abstract S with M { } // //# 06: compile-time error |
20 class C1 extends final S with M { } // /// 07: compile-time error | 20 class C1 extends final S with M { } // //# 07: compile-time error |
21 class C2 extends var S with M { } // /// 08: compile-time error | 21 class C2 extends var S with M { } // //# 08: compile-time error |
22 class C3 extends const S with M { } // /// 09: compile-time error | 22 class C3 extends const S with M { } // //# 09: compile-time error |
23 class C4 extends static S with M { } // /// 10: compile-time error | 23 class C4 extends static S with M { } // //# 10: compile-time error |
24 class C5 extends external S with M { } // /// 11: compile-time error | 24 class C5 extends external S with M { } // //# 11: compile-time error |
25 class C6 extends G<int> with M { } | 25 class C6 extends G<int> with M { } |
26 class C7 extends G<Map<String,int>> with M { } | 26 class C7 extends G<Map<String,int>> with M { } |
27 | 27 |
28 class D0 extends S with M | 28 class D0 extends S with M |
29 implements M // /// 12: compile-time error | 29 implements M // //# 12: compile-time error |
30 implements M { } | 30 implements M { } |
31 | 31 |
32 class D1 extends T0 { } | 32 class D1 extends T0 { } |
33 | 33 |
34 class X = S; // /// 14: compile-time error | 34 class X = S; // //# 14: compile-time error |
35 | 35 |
36 main() { | 36 main() { |
37 new T0(); // /// 13: static type warning, runtime error | 37 new T0(); // //# 13: static type warning, runtime error |
38 new T0A(); // /// 13: static type warning, runtime error | 38 new T0A(); // //# 13: static type warning, runtime error |
39 new T1(); // /// 01: continued | 39 new T1(); // //# 01: continued |
40 new T2(); // /// 02: continued | 40 new T2(); // //# 02: continued |
41 new T3(); // /// 03: continued | 41 new T3(); // //# 03: continued |
42 new T4(); // /// 04: continued | 42 new T4(); // //# 04: continued |
43 new T5(); // /// 05: continued | 43 new T5(); // //# 05: continued |
44 new T6(); | 44 new T6(); |
45 new T7(); | 45 new T7(); |
46 | 46 |
47 new C0(); // /// 06: continued | 47 new C0(); // //# 06: continued |
48 new C1(); // /// 07: continued | 48 new C1(); // //# 07: continued |
49 new C2(); // /// 08: continued | 49 new C2(); // //# 08: continued |
50 new C3(); // /// 09: continued | 50 new C3(); // //# 09: continued |
51 new C4(); // /// 10: continued | 51 new C4(); // //# 10: continued |
52 new C5(); // /// 11: continued | 52 new C5(); // //# 11: continued |
53 new C6(); | 53 new C6(); |
54 new C7(); | 54 new C7(); |
55 | 55 |
56 new D0(); // /// 12: continued | 56 new D0(); // //# 12: continued |
57 new D1(); | 57 new D1(); |
58 new X(); // /// 14: continued | 58 new X(); // //# 14: continued |
59 } | 59 } |
OLD | NEW |