[cfe] Run fasta.dart commands in separate vm when asserts are not enabled
Change-Id: I8d45580e9c95ae529ce6b1071427bae5a220f531
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/237042
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
diff --git a/pkg/front_end/tool/fasta.dart b/pkg/front_end/tool/fasta.dart
index cdd5609..20ed126 100644
--- a/pkg/front_end/tool/fasta.dart
+++ b/pkg/front_end/tool/fasta.dart
@@ -106,7 +106,7 @@
stop("'$command' isn't a valid subcommand.");
}
- if (extraVmArguments.isNotEmpty) {
+ if (extraVmArguments.isNotEmpty || !assertsEnabled) {
List<String> arguments = [];
arguments.addAll(extraVmArguments);
arguments.add('--enable-asserts');
@@ -124,7 +124,7 @@
arguments.addAll(remainingArguments);
arguments.addAll(scriptArguments);
- print('Running: ${script} ${arguments.join(' ')}');
+ print('Calling: ${script} ${arguments.join(' ')}');
await mainFunction(arguments);
}
}
@@ -133,3 +133,12 @@
stderr.write(message);
exit(2);
}
+
+final bool assertsEnabled = () {
+ try {
+ assert(false);
+ return false;
+ } catch (_) {
+ return true;
+ }
+}();