summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
Diffstat (limited to 'utils')
-rw-r--r--utils/check-ppr/Main.hs15
1 files changed, 10 insertions, 5 deletions
diff --git a/utils/check-ppr/Main.hs b/utils/check-ppr/Main.hs
index 8c937695cc..c9fac7dc33 100644
--- a/utils/check-ppr/Main.hs
+++ b/utils/check-ppr/Main.hs
@@ -132,10 +132,10 @@ showAstData n =
space "" = ""
space s = ' ':s
indent i = "\n" ++ replicate i ' '
- string = show :: String -> String
- fastString = ("{FastString: "++) . (++"}") . show
+ string = normalize_newlines . show :: String -> String
+ fastString = ("{FastString: "++) . (++"}") . normalize_newlines . show
:: FastString -> String
- bytestring = show :: B.ByteString -> String
+ bytestring = normalize_newlines . show :: B.ByteString -> String
list l = indent n ++ "["
++ intercalate "," (map (showAstData (n+1)) l)
++ "]"
@@ -179,11 +179,16 @@ showAstData n =
++ showAstData (n+1) a
++ ")"
+normalize_newlines :: String -> String
+normalize_newlines ('\\':'r':'\\':'n':xs) = '\\':'n':normalize_newlines xs
+normalize_newlines (x:xs) = x:normalize_newlines xs
+normalize_newlines [] = []
+
showSDoc_ :: SDoc -> String
-showSDoc_ = showSDoc unsafeGlobalDynFlags
+showSDoc_ = normalize_newlines . showSDoc unsafeGlobalDynFlags
showSDocDebug_ :: SDoc -> String
-showSDocDebug_ = showSDocDebug unsafeGlobalDynFlags
+showSDocDebug_ = normalize_newlines . showSDocDebug unsafeGlobalDynFlags
-- ---------------------------------------------------------------------