X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FbasicTypes%2FUnique.lhs;h=aecd37219790545cce74339e7945f9d7f745c40e;hb=432b9c9322181a3644083e3c19b7e240d90659e7;hp=d8f244e7ea10d4bc5226f797578aa8467a559975;hpb=3d9d59ff6b7f41a90f1325046d3d2bd09b9450b9;p=ghc-hetmet.git diff --git a/compiler/basicTypes/Unique.lhs b/compiler/basicTypes/Unique.lhs index d8f244e..aecd372 100644 --- a/compiler/basicTypes/Unique.lhs +++ b/compiler/basicTypes/Unique.lhs @@ -61,7 +61,6 @@ import FastTypes import FastString import Outputable import StaticFlags -import Util #if defined(__GLASGOW_HASKELL__) --just for implementing a fast [0,61) -> Char function @@ -135,8 +134,8 @@ newTagUnique u c = mkUnique c i where (_,i) = unpkUnique u mkUnique c i = MkUnique (tag `bitOrFastInt` bits) where - tag = fastOrd (cUnbox c) `shiftLFastInt` _ILIT(24) - bits = iUnbox i `bitAndFastInt` _ILIT(16777215){-``0x00ffffff''-} + !tag = fastOrd (cUnbox c) `shiftLFastInt` _ILIT(24) + !bits = iUnbox i `bitAndFastInt` _ILIT(16777215){-``0x00ffffff''-} unpkUnique (MkUnique u) = let @@ -212,7 +211,7 @@ We do sometimes make strings with @Uniques@ in them: \begin{code} pprUnique :: Unique -> SDoc pprUnique uniq - | debugIsOn || opt_SuppressUniques + | opt_SuppressUniques = empty -- Used exclusively to suppress uniques so you | otherwise -- can compare output easily = case unpkUnique uniq of @@ -267,7 +266,7 @@ iToBase62 n_ #if defined(__GLASGOW_HASKELL__) --then FastInt == Int# chooseChar62 n = C# (indexCharOffAddr# chars62 n) - chars62 = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"# + !chars62 = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"# #else --Haskell98 arrays are portable chooseChar62 n = (!) chars62 n