anchor.diff:      return buffer.toString();
     }
   
  -  /**
  -   * If the given [parameter]'s type is different when any type parameters from
  -   * the defining type's declaration are replaced with the actual type
  -   * arguments from the [definingType], create a parameter member representing
  -   * the given parameter. Return the member that was created, or the base
  -   * parameter if no member was created.
  -   */
     static List<TypeParameterElement> from(
  -      List<TypeParameterElement> formals, FunctionType definingType) {
  -    var substitution = Substitution.fromPairs(
  -      definingType.typeParameters,
  -      definingType.typeArguments,
  -    );
  -    return from2(formals, substitution);
  -  }
  -
  -  static List<TypeParameterElement> from2(
       List<TypeParameterElement> elements,
       MapSubstitution substitution,
     ) {
  
positive.code: 
    @override
    List<TypeParameterElement> get typeParameters {
      return TypeParameterMember.from2(
        baseElement.typeParameters,
        _substitution,
      );
  
negative.code: 
    @override
    List<TypeParameterElement> get typeParameters {
      return TypeParameterMember.from(
        baseElement.typeParameters,
        _substitution,
      );
  