// Copyright (c) 2015, 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 checking that optimizations are not too aggressive and // incorrect: // - (a * (1.0 / b)) // // VMOptions=--optimization-counter-threshold=8 --no-use-osr --no-background-compilation import "package:expect/expect.dart"; var xx = 23.0; main() { xx = 1e-6; scaleIt(1e-310); Expect.isTrue(xx.isInfinite); for (int i = 0; i < 10; i++) { xx = 24.0; scaleIt(6.0); Expect.equals(4.0, xx); } xx = 1e-6; scaleIt(1e-310); Expect.isTrue(xx.isInfinite); } scaleIt(double b) { scale(1.0 / b); } scale(a) { xx *= a; }