anchor.diff:        });
         resolveMetadata(node, node.metadata, element);
         _setGenericFunctionType(node.type, element.type);
  -      return null;
  -    } else {
  -      return super.visitFieldFormalParameter(node);
  -    }
  -  }
  -
  -  @override
  -  Object visitFunctionDeclaration(FunctionDeclaration node) {
  +    } else {
  +      super.visitFieldFormalParameter(node);
  +    }
  +  }
  +
  +  @override
  +  void visitFunctionDeclaration(FunctionDeclaration node) {
       SimpleIdentifier functionName = node.name;
       Token property = node.propertyKeyword;
       ExecutableElement element;
  
positive.code:     } else {
        super.visitVariableDeclaration(node);
      }
      return null;
    }
  
    @override
    Object visitVariableDeclarationList(VariableDeclarationList node) {
      if (_walker.elementBuilder != null) {
        return _walker.elementBuilder.visitVariableDeclarationList(node);
      } else {
        node.variables.accept(this);
        VariableElement firstVariable = node.variables[0].declaredElement;
  
negative.code:     });
  
      resolveMetadata(node, node.metadata, element);
    }
  
    @override
    void visitEnumDeclaration(EnumDeclaration node) {
      ClassElement element = _match(node.name, _walker.getEnum());
      node.name.staticType = _typeProvider.typeType;
      resolveMetadata(node, node.metadata, element);
  