anchor.diff:    }
   
     String createLinkedReturnTypeName() {
  -    if (returnElement == null) {
  +    if ((_type as FunctionType).returnType.element == null ||
  +        (_type as FunctionType).returnType.element.library == null) {
         if (_returnTypeName != null) {
           return _returnTypeName;
         } else {
  
positive.code: 
      // not TypeParameterType or Void or Union type
      if (isParameterizedType) {
        if (!typeArguments.isEmpty &&
            (typeArguments.length > 1 ||
                typeArguments.first.toString() != 'dynamic')) {
  
negative.code:   List<ElementType> get typeArguments =>
        (_type as ParameterizedType).typeArguments.map((f) {
      var lib = new Library(f.element.library, _element.package);
      return new ElementType(f, new ModelElement.from(f.element, lib));
    }).toList();
  
    String createLinkedName() {
  