add --verbose support to Kernel worker
diff --git a/pkg/front_end/lib/src/api_unstable/bazel_worker.dart b/pkg/front_end/lib/src/api_unstable/bazel_worker.dart
index eacc6bb..1febf02 100644
--- a/pkg/front_end/lib/src/api_unstable/bazel_worker.dart
+++ b/pkg/front_end/lib/src/api_unstable/bazel_worker.dart
@@ -96,15 +96,17 @@
}
Future<InitializedCompilerState> initializeCompiler(
- InitializedCompilerState oldState,
- Uri sdkSummary,
- Uri librariesSpecificationUri,
- Uri packagesFile,
- List<Uri> additionalDills,
- Target target,
- FileSystem fileSystem,
- Iterable<String> experiments,
- Map<String, String> environmentDefines) async {
+ InitializedCompilerState oldState,
+ Uri sdkSummary,
+ Uri librariesSpecificationUri,
+ Uri packagesFile,
+ List<Uri> additionalDills,
+ Target target,
+ FileSystem fileSystem,
+ Iterable<String> experiments,
+ Map<String, String> environmentDefines, {
+ bool verbose: false,
+}) async {
// TODO(sigmund): use incremental compiler when it supports our use case.
// Note: it is common for the summary worker to invoke the compiler with the
// same input summary URIs, but with different contents, so we'd need to be
@@ -120,7 +122,8 @@
..environmentDefines = environmentDefines
..experimentalFlags = parseExperimentalFlags(
parseExperimentalArguments(experiments),
- onError: (e) => throw e);
+ onError: (e) => throw e)
+ ..verbose = verbose;
ProcessedOptions processedOpts = new ProcessedOptions(options: options);
diff --git a/pkg/front_end/lib/src/api_unstable/modular_incremental_compilation.dart b/pkg/front_end/lib/src/api_unstable/modular_incremental_compilation.dart
index 16c2863..9668bc0 100644
--- a/pkg/front_end/lib/src/api_unstable/modular_incremental_compilation.dart
+++ b/pkg/front_end/lib/src/api_unstable/modular_incremental_compilation.dart
@@ -53,7 +53,8 @@
Map<String, String> environmentDefines: const {},
bool outlineOnly,
bool omitPlatform: false,
- bool trackNeededDillLibraries: false}) async {
+ bool trackNeededDillLibraries: false,
+ bool verbose: false}) async {
bool isRetry = false;
while (true) {
try {
@@ -98,7 +99,8 @@
..fileSystem = fileSystem
..omitPlatform = omitPlatform
..environmentDefines = environmentDefines
- ..experimentalFlags = experimentalFlags;
+ ..experimentalFlags = experimentalFlags
+ ..verbose = verbose;
processedOpts = new ProcessedOptions(options: options);
cachedSdkInput = new WorkerInputComponent(
diff --git a/utils/bazel/kernel_worker.dart b/utils/bazel/kernel_worker.dart
index a374fc2..240ffd7 100644
--- a/utils/bazel/kernel_worker.dart
+++ b/utils/bazel/kernel_worker.dart
@@ -143,7 +143,8 @@
..addFlag('track-widget-creation', defaultsTo: false)
..addMultiOption('enable-experiment',
help: 'Enable a language experiment when invoking the CFE.')
- ..addMultiOption('define', abbr: 'D');
+ ..addMultiOption('define', abbr: 'D')
+ ..addFlag('verbose', defaultsTo: false);
class ComputeKernelResult {
final bool succeeded;
@@ -247,6 +248,7 @@
bool usingIncrementalCompiler = false;
bool recordUsedInputs = parsedArgs["used-inputs"] != null;
var environmentDefines = _parseEnvironmentDefines(parsedArgs['define']);
+ var verbose = parsedArgs['verbose'] as bool;
if (parsedArgs['use-incremental-compiler']) {
usingIncrementalCompiler = true;
@@ -303,12 +305,15 @@
target,
fileSystem,
parsedArgs['enable-experiment'] as List<String>,
- environmentDefines);
+ environmentDefines,
+ verbose: verbose);
}
void onDiagnostic(fe.DiagnosticMessage message) {
fe.printDiagnosticMessage(message, out.writeln);
- succeeded = false;
+ if (message.severity == fe.Severity.error) {
+ succeeded = false;
+ }
}
List<int> kernel;