@@ -147,7 +147,13 @@ final summaryArgsParser = new ArgParser()
147
147
help: 'Enable a language experiment when invoking the CFE.' )
148
148
..addMultiOption ('define' , abbr: 'D' )
149
149
..addFlag ('verbose' , defaultsTo: false )
150
- ..addFlag ('sound-null-safety' , defaultsTo: false );
150
+ ..addFlag ('sound-null-safety' , defaultsTo: false )
151
+ ..addOption ('verbosity' ,
152
+ defaultsTo: fe.Verbosity .defaultValue,
153
+ help: 'Sets the verbosity level used for filtering messages during '
154
+ 'compilation.' ,
155
+ allowed: fe.Verbosity .allowedValues,
156
+ allowedHelp: fe.Verbosity .allowedValuesHelp);
151
157
152
158
class ComputeKernelResult {
153
159
final bool succeeded;
@@ -257,6 +263,7 @@ Future<ComputeKernelResult> computeKernel(List<String> args,
257
263
bool recordUsedInputs = parsedArgs["used-inputs" ] != null ;
258
264
var environmentDefines = _parseEnvironmentDefines (parsedArgs['define' ]);
259
265
var verbose = parsedArgs['verbose' ] as bool ;
266
+ var verbosity = fe.Verbosity .parseArgument (parsedArgs['verbosity' ]);
260
267
261
268
if (parsedArgs['use-incremental-compiler' ]) {
262
269
usingIncrementalCompiler = true ;
@@ -321,7 +328,9 @@ Future<ComputeKernelResult> computeKernel(List<String> args,
321
328
}
322
329
323
330
void onDiagnostic (fe.DiagnosticMessage message) {
324
- fe.printDiagnosticMessage (message, out.writeln);
331
+ if (fe.Verbosity .shouldPrint (verbosity, message)) {
332
+ fe.printDiagnosticMessage (message, out.writeln);
333
+ }
325
334
if (message.severity == fe.Severity .error) {
326
335
succeeded = false ;
327
336
}
0 commit comments