Files
sdk/tests/language_2/vm/regress_33794_test.dart
T
Alexander Markov 4aacaeb684 [vm/compiler] Fix handling of exception-throwing instructions in DSE
Fixes https://github.com/dart-lang/sdk/issues/33794

Change-Id: Icf87eb79d5afd15112079964aaba5d0ed41e2476
Reviewed-on: https://dart-review.googlesource.com/64182
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Aart Bik <ajcbik@google.com>
2018-07-09 21:28:55 +00:00

21 lines
589 B
Dart

// Copyright (c) 2018, 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.
// Verify that sub-expressions with side-effects are handled correctly
// in the presence of exceptions or deoptimization.
import "package:expect/expect.dart";
int var1 = -35;
main() {
try {
var1 = (((~(var1)) ^ (++var1)) >> (++var1));
} catch (e) {
Expect.equals('Invalid argument(s): -33', e.toString());
} finally {
Expect.equals(-33, var1);
}
}