Every method except calls cast, except for `Expression::getIntRange` on which it's a no-op.  I don't see how it could change meaning.

Then again we can save that for later, I'll revert it.