Files
sdk/tests/language/deferred/optimized_test.dart
Robert Nystrom fd3882091c Migrate language_2/deferred to NNBD.
Change-Id: I6c936a9ad34befccf1b6775d7c9bdc621995a96f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/142280
Reviewed-by: Leaf Petersen <leafp@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Auto-Submit: Bob Nystrom <rnystrom@google.com>
2020-04-03 20:04:47 +00:00

35 lines
740 B
Dart

// Copyright (c) 2014, 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=--optimization-counter-threshold=10 --compiler-passes=-Inlining
// Declares foo that returns 42.
import "constraints_lib2.dart" deferred as lib;
import 'package:expect/expect.dart';
bool libLoaded = false;
main() {
Expect.equals(88, heyhey());
for (int i = 0; i < 30; i++) {
heyhey();
}
lib.loadLibrary().then((_) {
libLoaded = true;
Expect.equals(42, heyhey());
});
}
heyhey() => barbar();
barbar() {
if (libLoaded) {
// Returns 42.
return lib.foo();
}
return 88;
}