diff --git a/src/Compilers/CSharp/Portable/FlowAnalysis/NullableWalker.cs b/src/Compilers/CSharp/Portable/FlowAnalysis/NullableWalker.cs index c0b85e2778a51..c7b0a4aa12fd0 100644 --- a/src/Compilers/CSharp/Portable/FlowAnalysis/NullableWalker.cs +++ b/src/Compilers/CSharp/Portable/FlowAnalysis/NullableWalker.cs @@ -6624,14 +6624,24 @@ private bool HasTopLevelNullabilityConversion(TypeWithAnnotations source, TypeWi } /// - /// Apply the conversion to the type of the operand and return the resulting type. (If the - /// operand does not have an explicit type, the operand expression is used for the type.) - /// If `checkConversion` is set, the incoming conversion is assumed to be from binding and will be - /// re-calculated, this time considering nullability. (Note that the conversion calculation considers - /// nested nullability only. The caller is responsible for checking the top-level nullability of - /// the type returned by this method.) `trackMembers` should be set if the nullability of any - /// members of the operand should be copied to the converted result when possible. + /// Apply the conversion to the type of the operand and return the resulting type. + /// If the operand does not have an explicit type, the operand expression is used. /// + /// + /// If , the incoming conversion is assumed to be from binding + /// and will be re-calculated, this time considering nullability. + /// Note that the conversion calculation considers nested nullability only. + /// The caller is responsible for checking the top-level nullability of + /// the type returned by this method. + /// + /// + /// If , the nullability of any members of the operand + /// will be copied to the converted result when possible. + /// + /// + /// If , indicates that the "non-safety" diagnostic + /// should be given for an invalid conversion. + /// private TypeWithState VisitConversion( BoundConversion? conversionOpt, BoundExpression conversionOperand,