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

Side by Side Diff: tests/language/function_type/function_type61_test.dart

Issue 2879153005: Add support to dart2js for option --enable-asserts. (Closed)
Patch Set: Added !$checked to section predicate in co19 status file Created 3 years, 5 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
OLDNEW
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 // GENERATED - DON'T EDIT. 5 // GENERATED - DON'T EDIT.
6 // GENERATED - DON'T EDIT. 6 // GENERATED - DON'T EDIT.
7 // GENERATED - DON'T EDIT. 7 // GENERATED - DON'T EDIT.
8 // GENERATED - DON'T EDIT. 8 // GENERATED - DON'T EDIT.
9 // GENERATED - DON'T EDIT. 9 // GENERATED - DON'T EDIT.
10 // GENERATED - DON'T EDIT. 10 // GENERATED - DON'T EDIT.
11 // GENERATED - DON'T EDIT. 11 // GENERATED - DON'T EDIT.
12 // GENERATED - DON'T EDIT. 12 // GENERATED - DON'T EDIT.
13 13
14 import 'dart:core'; 14 import 'dart:core';
15 import 'dart:core' as core; 15 import 'dart:core' as core;
16 import 'package:expect/expect.dart'; 16 import 'package:expect/expect.dart';
17 17
18 @NoInline() 18 @NoInline()
19 @AssumeDynamic() 19 @AssumeDynamic()
20 confuse(f) => f; 20 confuse(f) => f;
21 21
22 final bool inCheckedMode = (() { 22 typedef F0<T> = Function Function([int x1]);
23 bool result = false; 23 typedef F1<T> = List<Function> Function([List<T> x1]);
24 assert(result = true); 24 typedef F2<T> = List<T> Function(core.List<core.int> x0);
25 return result; 25 typedef F3<T> = void Function(int y, [List<Function> x]);
26 })(); 26 typedef F4<T> = void Function<A>();
27 27 typedef F5<T> = int Function(int x1, [List<Function> x]) Function(int x);
28 typedef F0<T> 28 typedef F6<T> = int Function([List<T> x1]) Function(int x);
29 = Function Function([int x1]); 29 typedef F7<T> = Function Function(int x, [Function x1]) Function(int x);
30 typedef F1<T> 30 typedef F8<T> = Function Function(int y, {core.List<core.int> x}) Function(
31 = List<Function> Function([List<T> x1]); 31 int x);
32 typedef F2<T> 32 typedef F9<T> = List<Function> Function([Function x]) Function(int x);
33 = List<T> Function(core.List<core.int> x0); 33 typedef F10<T> = List<Function> Function(core.List<core.int> x1) Function(
34 typedef F3<T> 34 int x);
35 = void Function(int y, [List<Function> x]); 35 typedef F11<T> = core.List<core.int> Function(int x2, [int x3]) Function(int x);
36 typedef F4<T> 36 typedef F12<T> = core.List<core.int> Function(int x1, {List<Function> x})
37 = void Function<A>(); 37 Function(int x);
38 typedef F5<T> 38 typedef F13<T> = List<T> Function(int x) Function(int x);
39 = int Function(int x1, [List<Function> x]) Function(int x); 39 typedef F14<T> = List<T> Function(int y, [List<Function> x]) Function(int x);
40 typedef F6<T> 40 typedef F15<T> = List<T> Function(int x2, [List<T> x3]) Function(int x);
41 = int Function([List<T> x1]) Function(int x); 41 typedef F16<T> = Function({Function x}) Function(int x);
42 typedef F7<T> 42 typedef F17<T> = Function(List<T> x) Function(int x);
43 = Function Function(int x, [Function x1]) Function(int x); 43 typedef F18<T> = void Function(int x1, [Function x]) Function(int x);
44 typedef F8<T> 44 typedef F19<T> = void Function([core.List<core.int> x1]) Function(int x);
45 = Function Function(int y, {core.List<core.int> x}) Function(int x); 45 typedef F20<T> = int Function<A>(List<A> x) Function(int x);
46 typedef F9<T> 46 typedef F21<T> = List<T> Function<A>(int x) Function(int x);
47 = List<Function> Function([Function x]) Function(int x); 47 typedef F22<T> = List<A> Function<A>(Function x) Function(int x);
48 typedef F10<T>
49 = List<Function> Function(core.List<core.int> x1) Function(int x);
50 typedef F11<T>
51 = core.List<core.int> Function(int x2, [int x3]) Function(int x);
52 typedef F12<T>
53 = core.List<core.int> Function(int x1, {List<Function> x}) Function(int x);
54 typedef F13<T>
55 = List<T> Function(int x) Function(int x);
56 typedef F14<T>
57 = List<T> Function(int y, [List<Function> x]) Function(int x);
58 typedef F15<T>
59 = List<T> Function(int x2, [List<T> x3]) Function(int x);
60 typedef F16<T>
61 = Function({Function x}) Function(int x);
62 typedef F17<T>
63 = Function(List<T> x) Function(int x);
64 typedef F18<T>
65 = void Function(int x1, [Function x]) Function(int x);
66 typedef F19<T>
67 = void Function([core.List<core.int> x1]) Function(int x);
68 typedef F20<T>
69 = int Function<A>(List<A> x) Function(int x);
70 typedef F21<T>
71 = List<T> Function<A>(int x) Function(int x);
72 typedef F22<T>
73 = List<A> Function<A>(Function x) Function(int x);
74 48
75 Function f0([int x0]) => null; 49 Function f0([int x0]) => null;
76 List<Function> f1([List<int> x0]) => null; 50 List<Function> f1([List<int> x0]) => null;
77 List<int> f2(core.List<core.int> x0) => null; 51 List<int> f2(core.List<core.int> x0) => null;
78 void f3(int y, [List<Function> x]) => null; 52 void f3(int y, [List<Function> x]) => null;
79 void f4<A>() => null; 53 void f4<A>() => null;
80 int Function(int x0, [List<Function> x]) f5(int x) => null; 54 int Function(int x0, [List<Function> x]) f5(int x) => null;
81 int Function([List<int> x0]) f6(int x) => null; 55 int Function([List<int> x0]) f6(int x) => null;
82 Function Function(int x, [Function x0]) f7(int x) => null; 56 Function Function(int x, [Function x0]) f7(int x) => null;
83 Function Function(int y, {core.List<core.int> x}) f8(int x) => null; 57 Function Function(int y, {core.List<core.int> x}) f8(int x) => null;
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 x1 = confuse(m1); 199 x1 = confuse(m1);
226 l1 = confuse(m1); 200 l1 = confuse(m1);
227 if (!tIsBool) { 201 if (!tIsBool) {
228 Expect.isTrue(f1 is F1<int>); 202 Expect.isTrue(f1 is F1<int>);
229 Expect.isFalse(f1 is F1<bool>); 203 Expect.isFalse(f1 is F1<bool>);
230 Expect.isTrue(confuse(f1) is F1<int>); 204 Expect.isTrue(confuse(f1) is F1<int>);
231 Expect.isFalse(confuse(f1) is F1<bool>); 205 Expect.isFalse(confuse(f1) is F1<bool>);
232 Expect.equals(tIsDynamic, m1 is F1<bool>); 206 Expect.equals(tIsDynamic, m1 is F1<bool>);
233 Expect.equals(tIsDynamic, confuse(m1) is F1<bool>); 207 Expect.equals(tIsDynamic, confuse(m1) is F1<bool>);
234 } else { 208 } else {
235 if (inCheckedMode) { 209 if (typeAssertionsEnabled) {
236 Expect.throws(() { 210 Expect.throws(() {
237 x1 = (f1 as dynamic); 211 x1 = (f1 as dynamic);
238 }); 212 });
239 Expect.throws(() { 213 Expect.throws(() {
240 x1 = confuse(f1); 214 x1 = confuse(f1);
241 }); 215 });
242 List<Function> Function([List<T> x1]) l1; 216 List<Function> Function([List<T> x1]) l1;
243 Expect.throws(() { 217 Expect.throws(() {
244 l1 = (f1 as dynamic); 218 l1 = (f1 as dynamic);
245 }); 219 });
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 x2 = confuse(m2); 251 x2 = confuse(m2);
278 l2 = confuse(m2); 252 l2 = confuse(m2);
279 if (!tIsBool) { 253 if (!tIsBool) {
280 Expect.isTrue(f2 is F2<int>); 254 Expect.isTrue(f2 is F2<int>);
281 Expect.isFalse(f2 is F2<bool>); 255 Expect.isFalse(f2 is F2<bool>);
282 Expect.isTrue(confuse(f2) is F2<int>); 256 Expect.isTrue(confuse(f2) is F2<int>);
283 Expect.isFalse(confuse(f2) is F2<bool>); 257 Expect.isFalse(confuse(f2) is F2<bool>);
284 Expect.equals(tIsDynamic, m2 is F2<bool>); 258 Expect.equals(tIsDynamic, m2 is F2<bool>);
285 Expect.equals(tIsDynamic, confuse(m2) is F2<bool>); 259 Expect.equals(tIsDynamic, confuse(m2) is F2<bool>);
286 } else { 260 } else {
287 if (inCheckedMode) { 261 if (typeAssertionsEnabled) {
288 Expect.throws(() { 262 Expect.throws(() {
289 x2 = (f2 as dynamic); 263 x2 = (f2 as dynamic);
290 }); 264 });
291 Expect.throws(() { 265 Expect.throws(() {
292 x2 = confuse(f2); 266 x2 = confuse(f2);
293 }); 267 });
294 List<T> Function(core.List<core.int> x0) l2; 268 List<T> Function(core.List<core.int> x0) l2;
295 Expect.throws(() { 269 Expect.throws(() {
296 l2 = (f2 as dynamic); 270 l2 = (f2 as dynamic);
297 }); 271 });
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
402 x6 = confuse(m6); 376 x6 = confuse(m6);
403 l6 = confuse(m6); 377 l6 = confuse(m6);
404 if (!tIsBool) { 378 if (!tIsBool) {
405 Expect.isTrue(f6 is F6<int>); 379 Expect.isTrue(f6 is F6<int>);
406 Expect.isFalse(f6 is F6<bool>); 380 Expect.isFalse(f6 is F6<bool>);
407 Expect.isTrue(confuse(f6) is F6<int>); 381 Expect.isTrue(confuse(f6) is F6<int>);
408 Expect.isFalse(confuse(f6) is F6<bool>); 382 Expect.isFalse(confuse(f6) is F6<bool>);
409 Expect.equals(tIsDynamic, m6 is F6<bool>); 383 Expect.equals(tIsDynamic, m6 is F6<bool>);
410 Expect.equals(tIsDynamic, confuse(m6) is F6<bool>); 384 Expect.equals(tIsDynamic, confuse(m6) is F6<bool>);
411 } else { 385 } else {
412 if (inCheckedMode) { 386 if (typeAssertionsEnabled) {
413 Expect.throws(() { 387 Expect.throws(() {
414 x6 = (f6 as dynamic); 388 x6 = (f6 as dynamic);
415 }); 389 });
416 Expect.throws(() { 390 Expect.throws(() {
417 x6 = confuse(f6); 391 x6 = confuse(f6);
418 }); 392 });
419 int Function([List<T> x1]) Function(int x) l6; 393 int Function([List<T> x1]) Function(int x) l6;
420 Expect.throws(() { 394 Expect.throws(() {
421 l6 = (f6 as dynamic); 395 l6 = (f6 as dynamic);
422 }); 396 });
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
464 Function Function(int y, {core.List<core.int> x}) Function(int x) l8; 438 Function Function(int y, {core.List<core.int> x}) Function(int x) l8;
465 // The static function f8 sets `T` to `int`. 439 // The static function f8 sets `T` to `int`.
466 if (!tIsBool) { 440 if (!tIsBool) {
467 x8 = f8 as dynamic; 441 x8 = f8 as dynamic;
468 l8 = f8 as dynamic; 442 l8 = f8 as dynamic;
469 x8 = confuse(f8); 443 x8 = confuse(f8);
470 l8 = confuse(f8); 444 l8 = confuse(f8);
471 } 445 }
472 446
473 Expect.isTrue(m8 is F8); 447 Expect.isTrue(m8 is F8);
474 Expect.isTrue(m8 is Function Function(int y, 448 Expect.isTrue(m8 is Function Function(int y, {core.List<core.int> x})
475 {core.List<core.int> x}) Function(int x)); 449 Function(int x));
476 Expect.isTrue(confuse(m8) is F8); 450 Expect.isTrue(confuse(m8) is F8);
477 // In checked mode, verifies the type. 451 // In checked mode, verifies the type.
478 x8 = m8; 452 x8 = m8;
479 l8 = m8; 453 l8 = m8;
480 x8 = confuse(m8); 454 x8 = confuse(m8);
481 l8 = confuse(m8); 455 l8 = confuse(m8);
482 } 456 }
483 457
484 /// List<Function> Function([Function x]) Function(int x) 458 /// List<Function> Function([Function x]) Function(int x)
485 void testF9() { 459 void testF9() {
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
565 // The static function f12 sets `T` to `int`. 539 // The static function f12 sets `T` to `int`.
566 if (!tIsBool) { 540 if (!tIsBool) {
567 x12 = f12 as dynamic; 541 x12 = f12 as dynamic;
568 l12 = f12 as dynamic; 542 l12 = f12 as dynamic;
569 x12 = confuse(f12); 543 x12 = confuse(f12);
570 l12 = confuse(f12); 544 l12 = confuse(f12);
571 } 545 }
572 546
573 Expect.isTrue(m12 is F12); 547 Expect.isTrue(m12 is F12);
574 Expect.isTrue(m12 is core.List<core.int> Function(int x1, 548 Expect.isTrue(m12 is core.List<core.int> Function(int x1,
575 {List<Function> x}) Function(int x)); 549 {List<Function> x})
550 Function(int x));
576 Expect.isTrue(confuse(m12) is F12); 551 Expect.isTrue(confuse(m12) is F12);
577 // In checked mode, verifies the type. 552 // In checked mode, verifies the type.
578 x12 = m12; 553 x12 = m12;
579 l12 = m12; 554 l12 = m12;
580 x12 = confuse(m12); 555 x12 = confuse(m12);
581 l12 = confuse(m12); 556 l12 = confuse(m12);
582 } 557 }
583 558
584 /// List<T> Function(int x) Function(int x) 559 /// List<T> Function(int x) Function(int x)
585 void testF13() { 560 void testF13() {
(...skipping 18 matching lines...) Expand all
604 x13 = confuse(m13); 579 x13 = confuse(m13);
605 l13 = confuse(m13); 580 l13 = confuse(m13);
606 if (!tIsBool) { 581 if (!tIsBool) {
607 Expect.isTrue(f13 is F13<int>); 582 Expect.isTrue(f13 is F13<int>);
608 Expect.isFalse(f13 is F13<bool>); 583 Expect.isFalse(f13 is F13<bool>);
609 Expect.isTrue(confuse(f13) is F13<int>); 584 Expect.isTrue(confuse(f13) is F13<int>);
610 Expect.isFalse(confuse(f13) is F13<bool>); 585 Expect.isFalse(confuse(f13) is F13<bool>);
611 Expect.equals(tIsDynamic, m13 is F13<bool>); 586 Expect.equals(tIsDynamic, m13 is F13<bool>);
612 Expect.equals(tIsDynamic, confuse(m13) is F13<bool>); 587 Expect.equals(tIsDynamic, confuse(m13) is F13<bool>);
613 } else { 588 } else {
614 if (inCheckedMode) { 589 if (typeAssertionsEnabled) {
615 Expect.throws(() { 590 Expect.throws(() {
616 x13 = (f13 as dynamic); 591 x13 = (f13 as dynamic);
617 }); 592 });
618 Expect.throws(() { 593 Expect.throws(() {
619 x13 = confuse(f13); 594 x13 = confuse(f13);
620 }); 595 });
621 List<T> Function(int x) Function(int x) l13; 596 List<T> Function(int x) Function(int x) l13;
622 Expect.throws(() { 597 Expect.throws(() {
623 l13 = (f13 as dynamic); 598 l13 = (f13 as dynamic);
624 }); 599 });
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
657 x14 = confuse(m14); 632 x14 = confuse(m14);
658 l14 = confuse(m14); 633 l14 = confuse(m14);
659 if (!tIsBool) { 634 if (!tIsBool) {
660 Expect.isTrue(f14 is F14<int>); 635 Expect.isTrue(f14 is F14<int>);
661 Expect.isFalse(f14 is F14<bool>); 636 Expect.isFalse(f14 is F14<bool>);
662 Expect.isTrue(confuse(f14) is F14<int>); 637 Expect.isTrue(confuse(f14) is F14<int>);
663 Expect.isFalse(confuse(f14) is F14<bool>); 638 Expect.isFalse(confuse(f14) is F14<bool>);
664 Expect.equals(tIsDynamic, m14 is F14<bool>); 639 Expect.equals(tIsDynamic, m14 is F14<bool>);
665 Expect.equals(tIsDynamic, confuse(m14) is F14<bool>); 640 Expect.equals(tIsDynamic, confuse(m14) is F14<bool>);
666 } else { 641 } else {
667 if (inCheckedMode) { 642 if (typeAssertionsEnabled) {
668 Expect.throws(() { 643 Expect.throws(() {
669 x14 = (f14 as dynamic); 644 x14 = (f14 as dynamic);
670 }); 645 });
671 Expect.throws(() { 646 Expect.throws(() {
672 x14 = confuse(f14); 647 x14 = confuse(f14);
673 }); 648 });
674 List<T> Function(int y, [List<Function> x]) Function(int x) l14; 649 List<T> Function(int y, [List<Function> x]) Function(int x) l14;
675 Expect.throws(() { 650 Expect.throws(() {
676 l14 = (f14 as dynamic); 651 l14 = (f14 as dynamic);
677 }); 652 });
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
710 x15 = confuse(m15); 685 x15 = confuse(m15);
711 l15 = confuse(m15); 686 l15 = confuse(m15);
712 if (!tIsBool) { 687 if (!tIsBool) {
713 Expect.isTrue(f15 is F15<int>); 688 Expect.isTrue(f15 is F15<int>);
714 Expect.isFalse(f15 is F15<bool>); 689 Expect.isFalse(f15 is F15<bool>);
715 Expect.isTrue(confuse(f15) is F15<int>); 690 Expect.isTrue(confuse(f15) is F15<int>);
716 Expect.isFalse(confuse(f15) is F15<bool>); 691 Expect.isFalse(confuse(f15) is F15<bool>);
717 Expect.equals(tIsDynamic, m15 is F15<bool>); 692 Expect.equals(tIsDynamic, m15 is F15<bool>);
718 Expect.equals(tIsDynamic, confuse(m15) is F15<bool>); 693 Expect.equals(tIsDynamic, confuse(m15) is F15<bool>);
719 } else { 694 } else {
720 if (inCheckedMode) { 695 if (typeAssertionsEnabled) {
721 Expect.throws(() { 696 Expect.throws(() {
722 x15 = (f15 as dynamic); 697 x15 = (f15 as dynamic);
723 }); 698 });
724 Expect.throws(() { 699 Expect.throws(() {
725 x15 = confuse(f15); 700 x15 = confuse(f15);
726 }); 701 });
727 List<T> Function(int x2, [List<T> x3]) Function(int x) l15; 702 List<T> Function(int x2, [List<T> x3]) Function(int x) l15;
728 Expect.throws(() { 703 Expect.throws(() {
729 l15 = (f15 as dynamic); 704 l15 = (f15 as dynamic);
730 }); 705 });
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
786 x17 = confuse(m17); 761 x17 = confuse(m17);
787 l17 = confuse(m17); 762 l17 = confuse(m17);
788 if (!tIsBool) { 763 if (!tIsBool) {
789 Expect.isTrue(f17 is F17<int>); 764 Expect.isTrue(f17 is F17<int>);
790 Expect.isFalse(f17 is F17<bool>); 765 Expect.isFalse(f17 is F17<bool>);
791 Expect.isTrue(confuse(f17) is F17<int>); 766 Expect.isTrue(confuse(f17) is F17<int>);
792 Expect.isFalse(confuse(f17) is F17<bool>); 767 Expect.isFalse(confuse(f17) is F17<bool>);
793 Expect.equals(tIsDynamic, m17 is F17<bool>); 768 Expect.equals(tIsDynamic, m17 is F17<bool>);
794 Expect.equals(tIsDynamic, confuse(m17) is F17<bool>); 769 Expect.equals(tIsDynamic, confuse(m17) is F17<bool>);
795 } else { 770 } else {
796 if (inCheckedMode) { 771 if (typeAssertionsEnabled) {
797 Expect.throws(() { 772 Expect.throws(() {
798 x17 = (f17 as dynamic); 773 x17 = (f17 as dynamic);
799 }); 774 });
800 Expect.throws(() { 775 Expect.throws(() {
801 x17 = confuse(f17); 776 x17 = confuse(f17);
802 }); 777 });
803 Function(List<T> x) Function(int x) l17; 778 Function(List<T> x) Function(int x) l17;
804 Expect.throws(() { 779 Expect.throws(() {
805 l17 = (f17 as dynamic); 780 l17 = (f17 as dynamic);
806 }); 781 });
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
911 x21 = confuse(m21); 886 x21 = confuse(m21);
912 l21 = confuse(m21); 887 l21 = confuse(m21);
913 if (!tIsBool) { 888 if (!tIsBool) {
914 Expect.isTrue(f21 is F21<int>); 889 Expect.isTrue(f21 is F21<int>);
915 Expect.isFalse(f21 is F21<bool>); 890 Expect.isFalse(f21 is F21<bool>);
916 Expect.isTrue(confuse(f21) is F21<int>); 891 Expect.isTrue(confuse(f21) is F21<int>);
917 Expect.isFalse(confuse(f21) is F21<bool>); 892 Expect.isFalse(confuse(f21) is F21<bool>);
918 Expect.equals(tIsDynamic, m21 is F21<bool>); 893 Expect.equals(tIsDynamic, m21 is F21<bool>);
919 Expect.equals(tIsDynamic, confuse(m21) is F21<bool>); 894 Expect.equals(tIsDynamic, confuse(m21) is F21<bool>);
920 } else { 895 } else {
921 if (inCheckedMode) { 896 if (typeAssertionsEnabled) {
922 Expect.throws(() { 897 Expect.throws(() {
923 x21 = (f21 as dynamic); 898 x21 = (f21 as dynamic);
924 }); 899 });
925 Expect.throws(() { 900 Expect.throws(() {
926 x21 = confuse(f21); 901 x21 = confuse(f21);
927 }); 902 });
928 List<T> Function<A>(int x) Function(int x) l21; 903 List<T> Function<A>(int x) Function(int x) l21;
929 Expect.throws(() { 904 Expect.throws(() {
930 l21 = (f21 as dynamic); 905 l21 = (f21 as dynamic);
931 }); 906 });
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
963 x22 = confuse(m22); 938 x22 = confuse(m22);
964 l22 = confuse(m22); 939 l22 = confuse(m22);
965 } 940 }
966 } 941 }
967 942
968 void main() { 943 void main() {
969 new U61().runTests(); 944 new U61().runTests();
970 new U61<int>(tIsInt: true).runTests(); 945 new U61<int>(tIsInt: true).runTests();
971 new U61<bool>(tIsBool: true).runTests(); 946 new U61<bool>(tIsBool: true).runTests();
972 } 947 }
OLDNEW
« no previous file with comments | « tests/language/function_type/function_type60_test.dart ('k') | tests/language/function_type/function_type62_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698