anchor.diff:            }
           }
   
  -        callbacks.applyFileRemoved(info.analysisDriver, path);
  +        Resource resource = resourceProvider.getResource(path);
  +        if (resource is File &&
  +            _shouldFileBeAnalyzed(resource, mustExist: false)) {
  +          callbacks.applyFileRemoved(info.analysisDriver, path);
  +        }
           break;
         case ChangeType.MODIFY:
           Resource resource = resourceProvider.getResource(path);
  
positive.code:   /**
     * Return `true` if the given [file] should be analyzed.
     */
    bool _shouldFileBeAnalyzed(File file) {
      for (Glob glob in analyzedFilesGlobs) {
        if (glob.matches(file.path)) {
          // Emacs creates dummy links to track the fact that a file is open for
  
negative.code:         // the non-existent file 'username@hostname.pid'. To avoid these dummy
          // links causing the analyzer to thrash, just ignore links to
          // non-existent files.
          return !mustExist || file.exists;
        }
      }
      return false;
  