anchor.diff:            FunctionElement.CALL_METHOD_NAME, invocation.function);
         ExecutableElement callMethod = propertyResolver.result.getter;
         invocation.staticElement = callMethod;
  -      parameterizableType = callMethod?.type;
  +      parameterizableType = _elementTypeProvider.safeExecutableType(callMethod);
         parameters = (parameterizableType as FunctionType)?.typeFormals;
       }
   
  
positive.code:     if (executableElement == null) {
        return null;
      }
      List<ParameterElement> parameters = executableElement.parameters;
      return _resolveArgumentsToParameters(argumentList, parameters);
    }
  
  
negative.code:     if (expression is NullLiteral) {
        return _resolver.typeProvider.nullType;
      }
      DartType type = read
          ? getReadType(expression, elementTypeProvider: _elementTypeProvider)
          : expression.staticType;
      return _resolveTypeParameter(type);
    }
  
  