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

Side by Side Diff: tests/compiler/dart2js_extra/closure4_test.dart

Issue 437193002: Remove function names on function expressions. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Remove TODO Created 6 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 import "package:expect/expect.dart"; 5 import "package:expect/expect.dart";
6 6
7 closure0() { 7 closure0() {
8 var f = fib(i) { 8 var fib;
9 fib = (i) {
9 if (i < 2) return i; 10 if (i < 2) return i;
10 return fib(i - 1) + fib(i - 2); 11 return fib(i - 1) + fib(i - 2);
11 }; 12 };
12 Expect.equals(5, f(5)); 13 Expect.equals(5, fib(5));
13 } 14 }
14 15
15 closure1() { 16 closure1() {
16 var decr1 = 0; 17 var decr1 = 0;
17 var decr2 = 0; 18 var decr2 = 0;
18 var f = fib(i) { 19 var fib;
20 fib = (i) {
19 if (i < 2) return i; 21 if (i < 2) return i;
20 return fib(i - decr1) + fib(i - decr2); 22 return fib(i - decr1) + fib(i - decr2);
21 }; 23 };
22 decr1++; 24 decr1++;
23 decr2 += 2; 25 decr2 += 2;
24 Expect.equals(5, f(5)); 26 Expect.equals(5, fib(5));
25 } 27 }
26 28
27 closure2() { 29 closure2() {
28 var f = fun(doReturnClosure) { 30 var f;
31 f = (doReturnClosure) {
29 if (doReturnClosure) { 32 if (doReturnClosure) {
30 return inner() => fun(false); 33 return () => f(false);
31 } else { 34 } else {
32 return 499; 35 return 499;
33 } 36 }
34 }; 37 };
35 var g = f(true); 38 var g = f(true);
36 Expect.equals(499, g()); 39 Expect.equals(499, g());
37 } 40 }
38 41
39 main() { 42 main() {
40 closure0(); 43 closure0();
41 closure1(); 44 closure1();
42 closure2(); 45 closure2();
43 } 46 }
OLDNEW
« no previous file with comments | « tests/compiler/dart2js_extra/closure3_test.dart ('k') | tests/compiler/dart2js_extra/closure_capture2_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698