| Index: tests/language_strong/compile_time_constant10_test.dart
|
| diff --git a/tests/language_strong/compile_time_constant10_test.dart b/tests/language_strong/compile_time_constant10_test.dart
|
| deleted file mode 100644
|
| index 387d4ebfdfce7b02ab36403c1c27facbb41110f8..0000000000000000000000000000000000000000
|
| --- a/tests/language_strong/compile_time_constant10_test.dart
|
| +++ /dev/null
|
| @@ -1,110 +0,0 @@
|
| -// Copyright (c) 2012, 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.
|
| -
|
| -import "package:expect/expect.dart";
|
| -
|
| -// Test that 'identical(a,b)' is a compile-time constant.
|
| -
|
| -class C {
|
| - final x;
|
| - const C(this.x);
|
| - static f3() {}
|
| - static f4() {}
|
| -}
|
| -
|
| -const i1 = 1;
|
| -const i2 = 2;
|
| -const d1 = 1.5;
|
| -const d2 = 2.5;
|
| -const b1 = true;
|
| -const b2 = false;
|
| -const s1 = "1";
|
| -const s2 = "2";
|
| -const l1 = const [1, 2];
|
| -const l2 = const [2, 3];
|
| -const m1 = const {"x": 1};
|
| -const m2 = const {"x": 2};
|
| -const c1 = const C(1);
|
| -const c2 = const C(2);
|
| -f1() {}
|
| -f2() {}
|
| -const id = identical;
|
| -
|
| -class CT {
|
| - final x1;
|
| - final x2;
|
| - final bool id;
|
| - const CT(var x1, var x2)
|
| - : this.x1 = x1,
|
| - this.x2 = x2,
|
| - this.id = identical(x1, x2);
|
| - void test(void expect(a, b), name) {
|
| - expect(id, "$name: identical($x1,$x2)");
|
| - }
|
| -}
|
| -
|
| -const trueTests = const [
|
| - const CT(2 - 1, i1),
|
| - const CT(1 + 1, i2),
|
| - const CT(2.5 - 1.0, d1),
|
| - const CT(1.5 + 1.0, d2),
|
| - const CT(false || true, b1),
|
| - const CT(true && false, b2),
|
| - const CT('$i1', s1),
|
| - const CT('$i2', s2),
|
| - const CT(const [i1, 2], l1),
|
| - const CT(const [i2, 3], l2),
|
| - const CT(const {"x": i1}, m1),
|
| - const CT(const {"x": i2}, m2),
|
| - const CT(const C(i1), c1),
|
| - const CT(const C(i2), c2),
|
| - const CT(f1, f1),
|
| - const CT(f2, f2),
|
| - const CT(C.f3, C.f3),
|
| - const CT(C.f4, C.f4),
|
| - const CT(id, identical),
|
| -];
|
| -
|
| -const falseTests = const [
|
| - const CT(i1, i2),
|
| - const CT(d1, d2),
|
| - const CT(b1, b2),
|
| - const CT(s1, s2),
|
| - const CT(l1, l2),
|
| - const CT(m1, m2),
|
| - const CT(c1, c2),
|
| - const CT(f1, f2),
|
| - const CT(i1, d1),
|
| - const CT(d1, b1),
|
| - const CT(b1, s1),
|
| - const CT(s1, l1),
|
| - const CT(l1, m1),
|
| - const CT(m1, c1),
|
| - const CT(c1, f1),
|
| - const CT(f1, C.f3),
|
| - const CT(C.f3, identical),
|
| - const CT(identical, i1),
|
| -];
|
| -
|
| -// Not a constant if it's not written 'identical'.
|
| -const idtest = id(i1, i2); // //# 01: compile-time error
|
| -
|
| -// Not a constant if aliased? (Current interpretation, waiting for
|
| -// confirmation).
|
| -class T { // //# 02: compile-time error
|
| - static const identical = id; // //# 02: continued
|
| - static const idtest2 = identical(i1, i2); // //# 02: continued
|
| -} // //# 02: continued
|
| -
|
| -main() {
|
| - for (int i = 0; i < trueTests.length; i++) {
|
| - trueTests[i].test(Expect.isTrue, "true[$i]");
|
| - }
|
| - for (int i = 0; i < falseTests.length; i++) {
|
| - falseTests[i].test(Expect.isFalse, "false[$i]");
|
| - }
|
| -
|
| - var x = idtest; // //# 01: continued
|
| - var x = T.idtest2; // //# 02: continued
|
| -}
|
|
|