dart-sdk/tests/language_2/compile_time_constant_d_test.dart
Morten Krogh-Jespersen 706d4231ea Migrating block 59, first commit, after tool has run.
There were tests that tested only checked mode, having their name on the form xx_checked_xx. Those files have been renamed to static.

We found an issue in the DDC regarding constant maps, the issue has been added to the status file.

R=rnystrom@google.com, whesse@google.com

Review-Url: https://codereview.chromium.org/2994383002 .
2017-08-25 12:10:13 +02:00

49 lines
1 KiB
Dart

// 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";
class A {
final x;
final y;
final z;
final t;
const A(this.z, tt)
: y = 499,
t = tt,
x = 3;
const A.named(z, this.t)
: y = 400 + z,
this.z = z,
x = 3;
const A.named2(t, z, y, x)
: x = t,
y = z,
z = y,
t = x;
toString() => "A $x $y $z $t";
}
const a1 = const A(99, 100);
const a2 = const A.named(99, 100);
const a3 = const A.named2(1, 2, 3, 4);
main() {
Expect.equals(3, a1.x);
Expect.equals(499, a1.y);
Expect.equals(99, a1.z);
Expect.equals(100, a1.t);
Expect.equals("A 3 499 99 100", a1.toString());
Expect.isTrue(identical(a1, a2));
Expect.equals(1, a3.x);
Expect.equals(2, a3.y);
Expect.equals(3, a3.z);
Expect.equals(4, a3.t);
Expect.equals("A 1 2 3 4", a3.toString());
}