anchor.diff:     *
      * See [StaticWarningCode.NON_VOID_RETURN_FOR_OPERATOR].
      */
  -  bool _checkForNonVoidReturnTypeForOperator(MethodDeclaration node) {
  +  bool _checkForNonVoidReturnTypeForOperator(MethodDeclaration declaration) {
       // check that []= operator
  -    SimpleIdentifier name = node.name;
  +    SimpleIdentifier name = declaration.name;
       if (name.name != "[]=") {
         return false;
       }
       // check return type
  -    TypeName typeName = node.returnType;
  +    TypeName typeName = declaration.returnType;
       if (typeName != null) {
         DartType type = typeName.type;
         if (type != null && !type.isVoid) {
  
positive.code:    * Verify that the given [expression] can be assigned to its corresponding
     * parameters. The [expectedStaticType] is the expected static type of the
     * parameter. The [actualStaticType] is the actual static type of the
     * argument. The [expectedPropagatedType] is the expected propagated type of
     * the parameter, may be `null`. The [actualPropagatedType] is the expected
     * propagated type of the parameter, may be `null`.
     *
     * This method corresponds to
     * [BestPracticesVerifier.checkForArgumentTypeNotAssignable].
  
negative.code:    *
     * See [StaticWarningCode.VOID_RETURN_FOR_GETTER].
     */
    bool _checkForVoidReturnType(MethodDeclaration getter) {
      TypeName returnType = getter.returnType;
      if (returnType == null || returnType.name.name != "void") {
        return false;
      }
  