Import GHC.Err so we see bottoming functions properly
Before this patch, GHC/Err.lhs-boot exported divZeroError and overflowError,
as well as plain 'error'. The latter has a wired-in defn in GHC (MkId.lhs),
but the former two do not. As a result GHC doesn't see that overflowError
is a bottoming function at a crucial moment when compiling GHC.Real, and
that means that divMod wasn't getting the CPR property.
The fix is easy:
- GHC/Err.lhs-boot should export only 'error'
- GHC.Real, GHC.Int, and GHC.Word should import GHC.Err
directly. They can do this nowadays without creating
a module loop, thanks to the new exception story