public override void LeaveBinaryExpression(BinaryExpression node) { if (BinaryOperatorType.Assign == node.Operator && (node.Right.NodeType != NodeType.TryCastExpression) && (IsTopLevelOfConditional(node))) { Warnings.Add(CompilerWarningFactory.EqualsInsteadOfAssign(node)); } }