| Index: tests/language/src/LocalFunctionTest.dart | 
| diff --git a/tests/language/src/LocalFunctionTest.dart b/tests/language/src/LocalFunctionTest.dart | 
| deleted file mode 100644 | 
| index e53dc9afc4bbffccf990300eec2c811193be8202..0000000000000000000000000000000000000000 | 
| --- a/tests/language/src/LocalFunctionTest.dart | 
| +++ /dev/null | 
| @@ -1,204 +0,0 @@ | 
| -// Copyright (c) 2011, the Dart project authors.  Please see the AUTHORS file | 
| -// for details. All rights reserved. Use of this source code is governed by a | 
| -// BSD-style license that can be found in the LICENSE file. | 
| -// Dart test program testing closures. | 
| - | 
| -class LocalFunctionTest { | 
| -  LocalFunctionTest() : field1 = 100, field2_ = 200  { } | 
| -  static int f(int n) { | 
| -    int a = 0; | 
| -    g(int m) { | 
| -      a = 3*n + m + 1;  // Capture parameter n and local a. | 
| -      return a; | 
| -    } | 
| -    var b = g(n); | 
| -    return a + b; | 
| -  } | 
| -  static int h(int n) { | 
| -    k(int n) { | 
| -      var a = new List(n); | 
| -      var b = new List(n); | 
| -      int i; | 
| -      for (i = 0; i < n; i++) { | 
| -        var j = i; | 
| -        a[i] = () => i;  // Captured i is always n. | 
| -        b[i] = () => j;  // Captured j varies from 0 to n-1. | 
| -      } | 
| -      var a_sum = 0; | 
| -      var b_sum = 0; | 
| -      for (int i = 0; i < n; i++) { | 
| -        a_sum += a[i](); | 
| -        b_sum += b[i](); | 
| -      } | 
| -      return a_sum + b_sum; | 
| -    } | 
| -    return k(n); | 
| -  } | 
| -  static int h2(int n) { | 
| -    k(int n) { | 
| -      var a = new List(n); | 
| -      var b = new List(n); | 
| -      for (int i = 0; i < n; i++) { | 
| -        var j = i; | 
| -        a[i] = () => i;  // Captured i varies from 0 to n-1. | 
| -        b[i] = () => j;  // Captured j varies from 0 to n-1. | 
| -      } | 
| -      var a_sum = 0; | 
| -      var b_sum = 0; | 
| -      for (int i = 0; i < n; i++) { | 
| -        a_sum += a[i](); | 
| -        b_sum += b[i](); | 
| -      } | 
| -      return a_sum + b_sum; | 
| -    } | 
| -    return k(n); | 
| -  } | 
| -  int field1; | 
| -  int field2_; | 
| -  int get field2() { return field2_; } | 
| -  void set field2(int value) { field2_ = value; } | 
| - | 
| -  int method(int n) { | 
| -    incField1() { field1++; } | 
| -    incField2() { field2++; } | 
| -    for (int i = 0; i < n; i++) { | 
| -      incField1(); | 
| -      incField2(); | 
| -    } | 
| -    return field1 + field2; | 
| -  } | 
| -  int execute(int times, apply(int x)) { | 
| -    for (int i = 0; i < times; i++) { | 
| -      apply(i); | 
| -    } | 
| -    return field1; | 
| -  } | 
| -  int testExecute(int n) { | 
| -    execute(n, (int x) { field1 += x; }); | 
| -    return field1; | 
| -  } | 
| -  static int foo(int n) { | 
| -    return -100;  // Wrong foo. | 
| -  } | 
| -  static testSelfReference1(int n) { | 
| -    int foo(int n) { | 
| -      if (n == 0) { | 
| -        return 0; | 
| -      } else { | 
| -        return 1 + foo(n - 1);  // Local foo, not static foo. | 
| -      } | 
| -    }; | 
| -    return foo(n);  // Local foo, not static foo. | 
| -  } | 
| -  static void hep(Function f) { | 
| -    f(); | 
| -  } | 
| -  static testSelfReference3(int n) { | 
| -    int i = 0; | 
| -    var yup;  // Not in same scope as yup below. | 
| -    hep(yup() { | 
| -      if (++i < n) hep(yup); | 
| -    }); | 
| -    return i; | 
| -  } | 
| -  static testNesting(int n) { | 
| -    var a = new List(n*n); | 
| -    f0() { | 
| -      for (int i = 0; i < n; i++) { | 
| -        int vi = i; | 
| -        f1() { | 
| -          for (int j = 0; j < n; j++) { | 
| -            int vj = j; | 
| -            a[i*n + j] = () => vi*n + vj; | 
| -          } | 
| -        } | 
| -        f1(); | 
| -      } | 
| -    } | 
| -    f0(); | 
| -    int result = 0; | 
| -    for (int k = 0; k < n*n; k++) { | 
| -      Expect.equals(k, a[k]()); | 
| -      result += a[k](); | 
| -    } | 
| -    return result; | 
| -  } | 
| - | 
| -  static var field5; | 
| -  static var set_field5_func; | 
| -  static testClosureCallStatement(int x) { | 
| -    LocalFunctionTest.set_field5_func = (int n) { field5 = n * n; }; | 
| -    (LocalFunctionTest.set_field5_func)(x); | 
| -    Expect.equals(x * x, LocalFunctionTest.field5); | 
| -    return true; | 
| -  } | 
| - | 
| -  static testExceptions() { | 
| -    var f = (int n) => n + 1; | 
| -    Expect.equals(2, f(1)); | 
| -    Expect.equals(true, f is Function); | 
| -    Expect.equals(true, f is Object); | 
| -    Expect.equals(true, f.toString().startsWith("Closure")); | 
| -    bool exception_caught = false; | 
| -    try { | 
| -      f(1, 2); | 
| -    } catch (ClosureArgumentMismatchException e) { | 
| -      exception_caught = true; | 
| -    } | 
| -    Expect.equals(true, exception_caught); | 
| -    exception_caught = false; | 
| -    try { | 
| -      f(); | 
| -    } catch (ClosureArgumentMismatchException e) { | 
| -      exception_caught = true; | 
| -    } | 
| -    Expect.equals(true, exception_caught); | 
| -    exception_caught = false; | 
| -    try { | 
| -      f.xyz(0); | 
| -    } catch (NoSuchMethodException e) { | 
| -      exception_caught = true; | 
| -    } | 
| -    Expect.equals(true, exception_caught); | 
| - | 
| -    // Overwrite closure value. | 
| -    f = 3; | 
| -    exception_caught = false; | 
| -    try { | 
| -      f(1); | 
| -    } catch (ObjectNotClosureException e) { | 
| -      exception_caught = true; | 
| -    } | 
| -    Expect.equals(true, exception_caught); | 
| - | 
| -    // Do not expect any exceptions to be thrown. | 
| -    var g = ([int n = 1]) => n + 1; | 
| -    Expect.equals(2, g()); | 
| -    Expect.equals(3, g(2)); | 
| -  } | 
| - | 
| -  static int doThis(int n, int f(int n)) { | 
| -    return f(n); | 
| -  } | 
| - | 
| -  static testMain() { | 
| -    Expect.equals(2*(3*2 + 2 + 1), f(2)); | 
| -    Expect.equals(10*10 + 10*9/2, h(10)); | 
| -    Expect.equals(90, h2(10)); | 
| -    Expect.equals(320, new LocalFunctionTest().method(10)); | 
| -    Expect.equals(145, new LocalFunctionTest().testExecute(10)); | 
| -    Expect.equals(5, testSelfReference1(5)); | 
| -    Expect.equals(5, testSelfReference3(5)); | 
| -    Expect.equals(24*25/2, testNesting(5)); | 
| -    Expect.equals(true, testClosureCallStatement(7)); | 
| -    Expect.equals(99, doThis(10, int _(n) => n * n - 1)); | 
| -    Expect.equals(99, doThis(10, int f(n) => n * n - 1)); | 
| -    Expect.equals(99, doThis(10, (n) => n * n - 1)); | 
| -    Expect.equals(99, doThis(10, f(n) => n * n - 1)); | 
| -    testExceptions(); | 
| -  } | 
| -} | 
| - | 
| -main() { | 
| -  LocalFunctionTest.testMain(); | 
| -} | 
|  |