When turning an IntegerL to an IntegralLit during TH
conversion, we were stupidly casting an Integer to an Int in
order to determine how it should be pretty-printed. Unsurprisingly,
this causes problems when the Integer doesn't lie within the bounds
of an Int, as demonstrated in Trac #15502.
The fix is simple: don't cast to an Int.