anchor.diff:      _flowAnalysis.doStatement_bodyBegin(node, _assignedVariables[node]);
       node.body.accept(this);
       _flowAnalysis.doStatement_conditionBegin();
  -    _handleAssignment(node.condition, destinationType: _nonNullableBoolType);
  +    _checkExpressionNotNull(node.condition);
       _flowAnalysis.doStatement_end(node.condition);
       return null;
     }
  
positive.code:       targetType = target.accept(this);
      } else {
        _checkNonObjectMember(propertyName.name); // TODO(paulberry)
        targetType = _handleAssignment(target, destinationType: _notNullType);
      }
      var callee = propertyName.staticElement;
      if (callee == null) {
  
negative.code:         targetType = target.accept(this);
        } else {
          _checkNonObjectMember(node.methodName.name); // TODO(paulberry)
          targetType = _checkExpressionNotNull(target);
        }
      }
      var callee = node.methodName.staticElement;
  