blob: c98cfa98808aeba3436109dca081f0b4cebe6e38 [file] [log] [blame]
// 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.
// @dart = 2.9
// 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);
}
}