anchor.diff:  
     @override
     void visitMethodInvocation(MethodInvocation node) {
  -    Element element = node.methodName.staticElement;
  +    Element element = node.methodName?.staticElement;
       if (element is MethodElement) {
         Element enclosingElement = element.enclosingElement;
         if (enclosingElement is ClassElement) {
  
positive.code: 
    @override
    void visitFunctionExpressionInvocation(FunctionExpressionInvocation node) {
      Element element = node.staticElement;
      if (element is MethodElement) {
        Element enclosingElement = element.enclosingElement;
        if (enclosingElement is ExtensionElement) {
          if (_isAllocatorExtension(enclosingElement) &&
              element.name == _allocateExtensionMethodName) {
  
negative.code: 
    void _validateElementAt(MethodInvocation node) {
      Expression target = node.realTarget;
      DartType targetType = target?.staticType;
      if (targetType is InterfaceType &&
          _isPointer(targetType.element) &&
          targetType.typeArguments.length == 1) {
  