@@ -27,12 +27,16 @@ import GHC.Types (Int(..))
27#ifdef __GLASGOW_HASKELL__
27#ifdef __GLASGOW_HASKELL__
28# if __GLASGOW_HASKELL__ < 611
28# if __GLASGOW_HASKELL__ < 611
29import GHC.Integer.Internals
29import GHC.Integer.Internals
30−# else
30+# elif defined(INTEGER_GMP)
31import GHC.Integer.GMP.Internals
31import GHC.Integer.GMP.Internals
32+# elif defined(INTEGER_SIMPLE)
35+# error "You need to use either GMP or integer-simple."
35−#ifdef INTEGER_GMP
39+#if defined(INTEGER_GMP) || defined(INTEGER_SIMPLE)
36# define PAIR(a,b) (# a,b #)
40# define PAIR(a,b) (# a,b #)
38# define PAIR(a,b) (a,b)
42# define PAIR(a,b) (a,b)
@@ -93,8 +97,13 @@ int = decimal
93data T = T !Integer !Int
97data T = T !Integer !Int
95integer :: Int -> Integer -> Builder
99integer :: Int -> Integer -> Builder
96integer 10 (S# i#) = decimal (I# i#)
101integer 10 (S# i#) = decimal (I# i#)
97integer 16 (S# i#) = hexadecimal (I# i#)
102integer 16 (S# i#) = hexadecimal (I# i#)
104+integer 10 i = decimal i
105+integer 16 i = hexadecimal i
98integer base i
107integer base i
99 | i < 0 = singleton '-' <> go (-i)
108 | i < 0 = singleton '-' <> go (-i)
100 | otherwise = go i
109 | otherwise = go i