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

Side by Side Diff: tests/language/generalized_void_syntax_test.dart

Issue 2990703002: Implemented support for generalized void in analyzer. (Closed)
Patch Set: Updated status for co19 tests and language/syntax_test Created 3 years, 4 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
« no previous file with comments | « tests/co19/co19-analyzer2.status ('k') | tests/language/language.status » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 // Testing that the reserved word `void` is allowed to occur as a type. 5 // Testing that the reserved word `void` is allowed to occur as a type, not
6 6 // just as a return type.
7 import 'package:expect/expect.dart';
8 7
9 class A<T> { 8 class A<T> {
10 T t; 9 final T t;
11 const A(this.t); 10 const A(this.t);
12 } 11 }
13 12
14 const void x1 = null; 13 const void x1 = null;
15 const A<void> x2 = const A<void>(null); 14 const A<void> x2 = const A<void>(null);
16 15
17 final void x3 = null; 16 final void x3 = null;
18 final A<void> x4 = new A<void>(null); 17 final A<void> x4 = new A<void>(null);
19 18
20 void x5 = null, x6; 19 void x5 = null, x6;
21 A<void> x7 = new A<void>(null), x8; 20 A<void> x7 = new A<void>(null), x8;
22 21
23 void get g1 => null; 22 void get g1 => null;
24 A<void> get g2 => new A<void>(null); 23 A<void> get g2 => new A<void>(null);
25 void set s1(void x) => null; 24 void set s1(void x) => null;
26 void set s2(A<void> x) => null; 25 void set s2(A<void> x) => null;
27 void m1(void x, [void y]) => null; 26 void m1(void x, [void y]) => null;
28 void m2(void x, {void y}) => null; 27 void m2(void x, {void y}) => null;
29 A<void> m3(A<void> x, [A<void> y]) => new A<void>(null); 28 A<void> m3(A<void> x, [A<void> y]) => new A<void>(null);
30 A<void> m4(A<void> x, {A<void> y}) => new A<void>(null); 29 A<void> m4(A<void> x, {A<void> y}) => new A<void>(null);
31 30
32 class B<S, T> {} 31 class B<S, T> implements A<void> { void get t => null; }
33 32
34 class C extends A<void> with B<void, A<void>> implements A<void> { 33 class C extends A<void> with B<void, A<void>> {
34 C(): super(null);
35
35 static final void x1 = null; 36 static final void x1 = null;
36 static final A<void> x2 = new A<void>(null); 37 static final A<void> x2 = new A<void>(null);
37 38
38 static const void x3 = null; 39 static const void x3 = null;
39 static const A<void> x4 = const A<void>(null); 40 static const A<void> x4 = const A<void>(null);
40 41
41 final void x5 = null, x6; 42 final void x5 = null;
42 final A<void> x7 = new A<void>(null), x8; 43 final A<void> x6 = new A<void>(null);
43 44
44 static void x9 = null, x10; 45 static void x7 = null, x8;
45 static A<void> x11 = new A<void>(null), x12; 46 static A<void> x9 = new A<void>(null), x10;
46 47
47 covariant void x13 = null, x14; 48 covariant void x11 = null, x12;
48 covariant A<void> x15 = new A<void>(null), x16; 49 covariant A<void> x13 = new A<void>(null), x14;
49 50
50 static void get g1 => null; 51 static void get g1 => null;
51 static A<void> get g2 => new A<void>(null); 52 static A<void> get g2 => new A<void>(null);
52 static void set s1(void x) => null; 53 static void set s1(void x) => null;
53 static void set s2(A<void> x) => null; 54 static void set s2(A<void> x) => null;
54 static void m1(void x, [void y]) => null; 55 static void m1(void x, [void y]) => null;
55 static void m2(void x, {void y}) => null; 56 static void m2(void x, {void y}) => null;
56 static A<void> m3(A<void> x, [A<void> y]) => null; 57 static A<void> m3(A<void> x, [A<void> y]) => null;
57 static A<void> m4(A<void> x, {A<void> y}) => null; 58 static A<void> m4(A<void> x, {A<void> y}) => null;
58 59
59 void get g3 => null; 60 void get g3 => null;
60 A<void> get g4 => new A<void>(null); 61 A<void> get g4 => new A<void>(null);
61 void set s3(void x) => null; 62 void set s3(void x) => null;
62 void set s4(A<void> x) => null; 63 void set s4(A<void> x) => null;
63 void m5(void x, [void y]) => null; 64 void m5(void x, [void y]) => null;
64 void m6(void x, {void y}) => null; 65 void m6(void x, {void y}) => null;
65 A<void> m7(A<void> x, [A<void> y]) => null; 66 A<void> m7(A<void> x, [A<void> y]) => null;
66 A<void> m8(A<void> x, {A<void> y}) => null; 67 A<void> m8(A<void> x, {A<void> y}) => null;
67 68
68 // Ensure that all members are used, and use `void` in expressions. 69 // Ensure that all members are used, and use `void` in expressions.
69 void run() { 70 void run() {
70 var ignore = [x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, 71 var ignore = [
71 x15, x16, g1, g2, g3, g4]; 72 x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, //
73 g1, g2, g3, g4,
74 ];
72 75
73 s1 = null; 76 s1 = null;
74 s2 = new A<void>(null); 77 s2 = new A<void>(null);
75 s3 = null; 78 s3 = null;
76 s4 = new A<void>(null); 79 s4 = new A<void>(null);
77 m1(null, null); 80 m1(null, null);
78 m2(null, y: null); 81 m2(null, y: null);
79 m3(null, new A<void>(null)); 82 m3(null, new A<void>(null));
80 m4(null, y: new A<void>(null)); 83 m4(null, y: new A<void>(null));
81 m5(null, null); 84 m5(null, null);
(...skipping 14 matching lines...) Expand all
96 var ignore = [x1, x2, x3, x4, x5, x6, x7, x8, g1, g2]; 99 var ignore = [x1, x2, x3, x4, x5, x6, x7, x8, g1, g2];
97 100
98 s1 = null; 101 s1 = null;
99 s2 = new A<void>(null); 102 s2 = new A<void>(null);
100 m1(null, null); 103 m1(null, null);
101 m2(null, y: null); 104 m2(null, y: null);
102 m3(null, null); 105 m3(null, null);
103 m4(null, y: null); 106 m4(null, y: null);
104 new C().run(); 107 new C().run();
105 } 108 }
OLDNEW
« no previous file with comments | « tests/co19/co19-analyzer2.status ('k') | tests/language/language.status » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698