blob: 41aea1e10603c53b51fe941a5577815998431962 [file] [log] [blame]
/*
* Copyright (c) 2016, 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.
*/
/**
* @assertion int toSigned(int width)
* ...
* If the input value fits in width bits without truncation, the result is the
* same as the input. The minimum width needed to avoid truncation of x is
* x.bitLength + 1, i.e.
*
* x == x.toSigned(x.bitLength + 1);
* @description Checks that x == x.toSigned(x.bitLength + 1);
* @author sgrekhov@unipro.ru
*/
import "../../../Utils/expect.dart";
test(int x) {
Expect.equals(x, x.toSigned(x.bitLength + 1));
}
main() {
test(0);
test(1);
test(17);
test(1024);
test(123456789);
test(-1);
test(-17);
test(-1024);
test(-123456789);
}