OLD | NEW |
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, 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 // DartOptions=--generic-method-syntax | |
6 // VMOptions=--generic-method-syntax | 5 // VMOptions=--generic-method-syntax |
7 | 6 |
8 /// Dart test verifying that the parser can handle certain cases where | 7 /// Dart test verifying that the parser can handle certain cases where |
9 /// grammar ambiguity is resolved in favor of generic sends, not | 8 /// grammar ambiguity is resolved in favor of generic sends, not |
10 /// relational expressions. | 9 /// relational expressions. |
11 | 10 |
12 library generic_sends_test; | 11 library generic_sends_test; |
13 | 12 |
14 f(arg1, [arg2]) => null; | 13 f(arg1, [arg2]) => null; |
15 g<X, Y>(arg) => null; | 14 g<X, Y>(arg) => null; |
16 | 15 |
17 main() { | 16 main() { |
18 // Generic invocations. | 17 // Generic invocations. |
19 f(g<int, String>(3)); | 18 f(g<int, String>(3)); |
20 f(g<int, List<String>>(3)); | 19 f(g<int, List<String>>(3)); |
21 f(g<int, String>(3), 4); | 20 f(g<int, String>(3), 4); |
22 f(g<int, List<String>>(3), 4); | 21 f(g<int, List<String>>(3), 4); |
23 | 22 |
24 // Relational expressions. | 23 // Relational expressions. |
25 int a = 0, b = 1, c = 2, d = 3; | 24 int a = 0, b = 1, c = 2, d = 3; |
26 f(a < b, c > 3); | 25 f(a < b, c > 3); |
27 f(a < b, c >> 3); | 26 f(a < b, c >> 3); |
28 f(a < b, c < d >> 3); | 27 f(a < b, c < d >> 3); |
29 } | 28 } |
OLD | NEW |