From: Simon Marlow Date: Tue, 11 Apr 2006 08:50:09 +0000 (+0000) Subject: avoid versionitis in Numeric.showHex (should fix tcrun007) X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=13de816da2c8cb8509e05198c0da47560fd3e0de;p=ghc-hetmet.git avoid versionitis in Numeric.showHex (should fix tcrun007) --- diff --git a/compiler/utils/Encoding.hs b/compiler/utils/Encoding.hs index 152bf3c..c7f9070 100644 --- a/compiler/utils/Encoding.hs +++ b/compiler/utils/Encoding.hs @@ -26,9 +26,9 @@ module Encoding ( #define COMPILING_FAST_STRING #include "HsVersions.h" import Foreign -import Data.Char ( ord, chr, isDigit, digitToInt, isHexDigit ) -import Numeric ( showHex ) - +import Data.Char ( ord, chr, isDigit, digitToInt, intToDigit, + isHexDigit ) +import Numeric ( showIntAtBase ) import Data.Bits import GHC.Ptr ( Ptr(..) ) import GHC.Base @@ -281,6 +281,9 @@ encode_ch c = 'z' : if isDigit (head hex_str) then hex_str -- eg. strings of unicode characters come out as 'z1234Uz5678U', we -- could remove the 'U' in the middle (the 'z' works as a separator). + showHex = showIntAtBase 16 intToDigit + -- needed because prior to GHC 6.2, Numeric.showHex added a "0x" prefix + zDecodeString :: EncodedString -> UserString zDecodeString [] = [] zDecodeString ('Z' : d : rest)