dart-sdk/tests/language_2/exception_in_increment_test.dart
Jaime Wren 3d020fa91e Migrated test block 60 to Dart 2.0, take 2
Original review at https://dart-review.googlesource.com/c/sdk/+/7160

Change-Id: If2aeecec04640bee3b622d97c8fcdd6cb1bdd369
Reviewed-on: https://dart-review.googlesource.com/8731
Commit-Queue: Jaime Wren <jwren@google.com>
Reviewed-by: Janice Collins <jcollins@google.com>
Reviewed-by: Jaime Wren <jwren@google.com>
2017-09-27 18:07:05 +00:00

25 lines
629 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.
// Test throws exception in the middle of the increment operation, the setter
// part of the instance field increment never completes.
// VMOptions=--optimization-counter-threshold=10
main() {
var a = new A();
a.field = new A();
for (int i = 0; i < 20; i++) {
try {
a.foo(i);
} catch (e) {
// Ignore.
}
}
}
class A {
var field;
foo(i) {
field++; // throw exception
}
}