Files
sdk/tests/language/loop/exchange2_test.dart
T
Robert Nystrom 3218ba8412 Migrate language_2/loop to NNBD.
Change-Id: Id8fee2221036b8dca12675ba3e4fc1c0ab7a09b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149393
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Srujan Gaddam <srujzs@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
2020-05-29 23:48:57 +00:00

46 lines
945 B
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";
// This program tripped dart2js.
main() {
var a = 1;
var b = 2;
var c = 3;
var d = 4;
var e = 5;
for (int i = 0; i < 2; i++) {
if (i == 1) {
Expect.equals(4, e);
Expect.equals(3, d);
Expect.equals(8, c);
Expect.equals(1, b);
Expect.equals(32, a);
}
int f;
int k;
if (i < 20) {
f = b & c | ~b & d;
k = 0x5A827999;
} else if (i < 40) {
f = b ^ c ^ d;
k = 0x6ED9EBA1;
} else if (i < 60) {
f = b & c | b & d | c & d;
k = 0x8F1BBCDC;
} else {
f = b ^ c ^ d;
k = 0xCA62C1D6;
}
int temp = a << 5;
e = d;
d = c;
c = b << 2;
b = a;
a = temp;
}
}