ResolveResult Convert(ResolveResult rr, IType targetType, Conversion c)
{
if (c == Conversion.IdentityConversion)
return rr;
else if (rr.IsCompileTimeConstant && c != Conversion.None && !c.IsUserDefined)
return ResolveCast(targetType, rr);
else
return new ConversionResolveResult(targetType, rr, c, checkForOverflow);
}