| Index: tests/language/vm/regress_27671_test.dart
|
| diff --git a/tests/language/vm/regress_27671_test.dart b/tests/language/vm/regress_27671_test.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..fa258dabf0e350e93c891239a16fb3d97460362c
|
| --- /dev/null
|
| +++ b/tests/language/vm/regress_27671_test.dart
|
| @@ -0,0 +1,32 @@
|
| +// 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.
|
| +//
|
| +// VMOptions=--enable_asserts --enable-inlining-annotations --optimization-counter-threshold=10 --no-background-compilation
|
| +
|
| +import 'package:expect/expect.dart';
|
| +import 'regress_27671_other.dart';
|
| +
|
| +const AlwaysInline = "AlwaysInline";
|
| +const NeverInline = "NeverInline";
|
| +
|
| +@AlwaysInline
|
| +bounce(x) {
|
| + for (int i = 0; i < 10; i++) {
|
| + check(f, x);
|
| + }
|
| +}
|
| +
|
| +@AlwaysInline
|
| +bool f(y) => y > 0;
|
| +
|
| +main() {
|
| + for (int i = 0; i < 100; i++) {
|
| + bounce(1);
|
| + }
|
| + try {
|
| + bounce(-1);
|
| + } catch (e) {
|
| + Expect.isTrue(e.toString().contains('f(x) && true'));
|
| + }
|
| +}
|
|
|