anchor.diff:                entries = <CacheEntry>[];
                 entryMap[folder] = entries;
               }
  -            entries.add(iterator.value);
  +            CacheEntry value = iterator.value;
  +            if (value == null) {
  +              if (invalidKeysBuffer.isNotEmpty) {
  +                invalidKeysBuffer.write(', ');
  +              }
  +              invalidKeysBuffer.write(iterator.key.toString());
  +            } else {
  +              entries.add(value);
  +            }
             }
           }
         }
  
positive.code:     _writeResponse(request, (StringBuffer buffer) {
        _writePage(buffer, 'Analysis Server - Cache Entry',
            ['Context: $contextFilter', 'File: $sourceUri'], (HttpResponse) {
          List<CacheEntry> entries = entryMap[folder];
          buffer.write('<h3>Analyzing Contexts</h3><p>');
          bool first = true;
  
negative.code:     List<Folder> allContexts = <Folder>[];
      Map<Folder, List<CacheEntry>> entryMap =
          new HashMap<Folder, List<CacheEntry>>();
      StringBuffer invalidKeysBuffer = new StringBuffer();
      analysisServer.folderMap
          .forEach((Folder folder, InternalAnalysisContext context) {
        Source source = context.sourceFactory.forUri(sourceUri);
  