public override Expression CreateExpressionTree(ResolveContext ec) { TypeCast child_cast = child as TypeCast; if (child_cast != null) { child.Type = type; return(child_cast.CreateExpressionTree(ec)); } return(base.CreateExpressionTree(ec)); }