anchor.diff:    return _fixComplexReference(name, currentLibrary, currentClass, currentMember);
   }
   
  +markdown.Node fixReferenceWithScope(String name, DeclarationMirror scope) {
  +  if (scope is LibraryMirror) return fixReference(name, scope, null, null);
  +  if (scope is ClassMirror)
  +      return fixReference(name, scope.library, scope, null);
  +  if (scope is MemberMirror) {
  +    var owner = scope.owner;
  +    if (owner is ClassMirror) {
  +        return fixReference(name, owner.library, owner, scope);
  +    } else {
  +      return fixReference(name, owner, null, scope);
  +    }
  +  }
  +  return null;
  +}
  +
   /// Returns a map of [Variable] objects constructed from [mirrorMap].
   Map<String, Variable> _variables(Map<String, VariableMirror> mirrorMap) {
     var data = {};
     // TODO(janicejl): When map to map feature is created, replace the below with
     // a filter. Issue(#9590).
     mirrorMap.forEach((String mirrorName, VariableMirror mirror) {
  -    _currentMember = mirror;
       if (_includePrivate || !_isHidden(mirror)) {
         entityMap[docName(mirror)] = new Variable(mirrorName, mirror.isFinal,
            mirror.isStatic, mirror.isConst, _type(mirror.type),
  -         _commentToHtml(mirror), _annotations(mirror), docName(mirror),
  -         _isHidden(mirror), docName(mirror.owner));
  +         (actualVariable) => _commentToHtml(mirror, actualVariable),
  +         _annotations(mirror), docName(mirror),
  +         _isHidden(mirror), docName(mirror.owner), mirror);
         data[mirrorName] = entityMap[docName(mirror)];
       }
     });
  
positive.code:   Map<String, Typedef> typedefs = {};
    Map<String, Class> errors = {};
  
    void addClass(ClassMirror mirror) {
      _currentClass = mirror;
      if (mirror.isTypedef) {
        // This is actually a Dart2jsTypedefMirror, and it does define value,
        // but we don't have visibility to that type.
        var mirror = _currentClass;
        if (_includePrivate || !mirror.isPrivate) {
          entityMap[docName(mirror)] = new Typedef(mirror.simpleName,
              docName(mirror.value.returnType), _commentToHtml(mirror),
              _generics(mirror), _parameters(mirror.value.parameters),
              _annotations(mirror), docName(mirror),  _isHidden(mirror),
              docName(mirror.owner));
          typedefs[mirror.simpleName] = entityMap[docName(mirror)];
        }
      } else {
        var clazz = _class(mirror);
  
        // Adding inherited parent variables and methods.
        clazz.parent().forEach((parent) {
  
negative.code:     }
    }
    logger.info('Package Root: ${packageRoot}');
  
    return getMirrorSystem(files, packageRoot: packageRoot, parseSdk: parseSdk)
      .then((MirrorSystem mirrorSystem) {
  