public static bool HasMatchingLHSOrRet(this StatementSyntax expression, StatementSyntax other, ISemanticModel model, Assumptions assume) { Contract.Requires(model != null); if (expression == null) return false; if (other == null) return false; if (expression.IsReturnValue() && other.IsReturnValue()) return true; var lhs1 = expression.TryGetLHSExpOfAssignmentOrInit(); var lhs2 = other.TryGetLHSExpOfAssignmentOrInit(); if (lhs1 == null || lhs2 == null) return false; return lhs1.IsMatchingLHS(lhs2, model, assume); }