| Index: pkg/analyzer_cli/lib/src/build_mode.dart
|
| diff --git a/pkg/analyzer_cli/lib/src/build_mode.dart b/pkg/analyzer_cli/lib/src/build_mode.dart
|
| index 879ec69787978c60890d288998a0181102681244..f79e4012f324a6699eb51b73a3a6af328f237e6f 100644
|
| --- a/pkg/analyzer_cli/lib/src/build_mode.dart
|
| +++ b/pkg/analyzer_cli/lib/src/build_mode.dart
|
| @@ -184,8 +184,10 @@ class BuildMode {
|
|
|
| // Write summary.
|
| assembler = new PackageBundleAssembler(
|
| - excludeHashes: options.buildSummaryExcludeInformative);
|
| - if (options.buildSummaryOutput != null) {
|
| + excludeHashes: options.buildSummaryExcludeInformative &&
|
| + options.buildSummaryOutputSemantic == null);
|
| + if (options.buildSummaryOutput != null ||
|
| + options.buildSummaryOutputSemantic != null) {
|
| if (options.buildSummaryOnlyAst && !options.buildSummaryFallback) {
|
| _serializeAstBasedSummary(explicitSources);
|
| } else {
|
| @@ -209,8 +211,17 @@ class BuildMode {
|
| if (options.buildSummaryExcludeInformative) {
|
| sdkBundle.flushInformative();
|
| }
|
| - io.File file = new io.File(options.buildSummaryOutput);
|
| - file.writeAsBytesSync(sdkBundle.toBuffer(), mode: io.FileMode.WRITE_ONLY);
|
| + if (options.buildSummaryOutput != null) {
|
| + io.File file = new io.File(options.buildSummaryOutput);
|
| + file.writeAsBytesSync(sdkBundle.toBuffer(),
|
| + mode: io.FileMode.WRITE_ONLY);
|
| + }
|
| + if (options.buildSummaryOutputSemantic != null) {
|
| + sdkBundle.flushInformative();
|
| + io.File file = new io.File(options.buildSummaryOutputSemantic);
|
| + file.writeAsBytesSync(sdkBundle.toBuffer(),
|
| + mode: io.FileMode.WRITE_ONLY);
|
| + }
|
| }
|
|
|
| if (options.buildSummaryOnly) {
|
|
|