anchor.diff:      var sourceFile = entry as File;
       var destPath = p.join(buildDir, relative);
       var destFile = new File(destPath);
  -    if (!destFile.existsSync() ||
  +    if (version != COMPILER_VERSION ||
  +        !destFile.existsSync() ||
           entry.lastModifiedSync().isAfter(destFile.lastModifiedSync())) {
         _compile(sourceFile.path, sourceFile.readAsStringSync(), destPath);
         numCompiled++;
  
positive.code: 
  import 'package:async_await/async_await.dart' as async_await;
  import 'package:path/path.dart' as p;
  
  /// The path to pub's root directory (sdk/lib/_internal/pub) in the Dart repo.
  ///
  
negative.code:   buildDir = p.join(p.normalize(arguments[0]), "pub_async");
    new Directory(buildDir).createSync(recursive: true);
  
    // See if the current sources were compiled against a different version of the
    // compiler.
    var versionPath = p.join(buildDir, "compiler.version");
    var version = "none";
    try {
      version = new File(versionPath).readAsStringSync();
    } on IOException catch (ex) {
      // Do nothing. The version file didn't exist.
    }
  
    var silent = arguments.length == 2 && arguments[1] == "--silent";
    var numFiles = 0;
    var numCompiled = 0;
  