// 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. // VMOptions=--stacktrace-every=3 --optimization-counter-threshold=10 --no-background-compilation // Test generating stacktraces with inlining and deferred code. // Regression test for issue dartbug.com/22331 class A { final N; final inc; var next; A(this.N, this.inc) { next = this; } } foo(o, value) { for (var i = 0; i < o.N; i += o.inc as int) { if (value < i) { throw ""; } o = o.next; } return value; } @pragma('vm:never-inline') baz(x, y, z) => z; bar(o) { var value = 0x100000000 + o.inc; baz(0, 0, foo(o, value)); } main() { var o = new A(10, 1); for (var i = 0; i < 100; i++) bar(o); bar(new A(100000, 1)); }