anchor.diff:    }
   
     @override
  +  DecoratedType visitComment(Comment node) {
  +    // Ignore comments.
  +    return null;
  +  }
  +
  +  @override
     DecoratedType visitConditionalExpression(ConditionalExpression node) {
       _handleAssignment(_notNullType, node.condition);
       // TODO(paulberry): guard anything inside the true and false branches
  
positive.code:           DecoratedType bound;
            bound = _variables.decoratedElementType(element.typeParameters[i],
                create: true);
            _checkAssignment(
                bound,
                _variables.decoratedTypeAnnotation(_source, typeArguments[i]),
                null,
                hard: true);
          }
        }
      }
  
negative.code: 
    @override
    DecoratedType visitExpressionFunctionBody(ExpressionFunctionBody node) {
      if (_currentFunctionType == null) {
        _unimplemented(
            node,
            'ExpressionFunctionBody with no current function '
            '(parent is ${node.parent.runtimeType})');
      }
      _handleAssignment(_currentFunctionType.returnType, node.expression);
      return null;
    }
  