protected virtual bool ValidateAssignment(BinaryExpression node)
{
if (!AssertLValue(node.Left))
return false;
IType lhsType = GetExpressionType(node.Left);
IType rhsType = GetExpressionType(node.Right);
if (!AssertTypeCompatibility(node.Right, lhsType, rhsType))
return false;
CheckAssignmentToIndexedProperty(node.Left, node.Left.Entity);
return true;
}