blob: 8320f374e0e544d6a5cc59a0734403102fadea4a [file] [log] [blame]
// Copyright (c) 2018, 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.
// @dart=2.9
import "dart:io" show File, exitCode;
import "generate_experimental_flags.dart"
show
computeCfeGeneratedFile,
computeKernelGeneratedFile,
generateCfeFile,
generateKernelFile;
main() {
{
Uri generatedFile = computeCfeGeneratedFile();
String generated = generateCfeFile();
String actual = (new File.fromUri(generatedFile).readAsStringSync())
.replaceAll('\r\n', '\n');
check(generated, actual, generatedFile);
}
{
Uri generatedFile = computeKernelGeneratedFile();
String generated = generateKernelFile();
String actual = (new File.fromUri(generatedFile).readAsStringSync())
.replaceAll('\r\n', '\n');
check(generated, actual, generatedFile);
}
}
void check(String generated, String actual, Uri generatedFile) {
if (generated != actual) {
print("""
------------------------
The generated file
${generatedFile.path}
is out of date. To regenerate the file, run
dart pkg/front_end/tool/fasta.dart generate-experimental-flags
------------------------
""");
exitCode = 1;
}
}