anchor.diff:     * return `true` to indicate that the task is done, return `false` to indicate
      * that the task should continue to be run.
      */
  -  Future<bool> perform() async {
  +  bool perform() {
       // Prepare files to check.
       if (filesToCheck.isEmpty) {
         filesToCheck.addAll(driver.addedFiles.difference(checkedFiles));
  
positive.code:     if (_definingClassMemberNameTasks.isNotEmpty) {
        _FilesDefiningClassMemberNameTask task =
            _definingClassMemberNameTasks.first;
        bool isDone = await task.perform();
        if (isDone) {
          _definingClassMemberNameTasks.remove(task);
        }
  
negative.code:     // Compute top-level declarations.
      if (_topLevelNameDeclarationsTasks.isNotEmpty) {
        _TopLevelNameDeclarationsTask task = _topLevelNameDeclarationsTasks.first;
        bool isDone = task.perform();
        if (isDone) {
          _topLevelNameDeclarationsTasks.remove(task);
        }
  