From 1f5257c1fc3e95fd99478c4874af773cc37ee0c8 Mon Sep 17 00:00:00 2001
From: sof <unknown>
Date: Thu, 5 Jun 1997 20:59:15 +0000
Subject: [PATCH] [project @ 1997-06-05 20:58:42 by sof] ppr update

---
 ghc/compiler/hsSyn/HsImpExp.lhs  | 10 ++++++++--
 ghc/compiler/hsSyn/HsMatches.lhs | 20 +++++++++-----------
 2 files changed, 17 insertions(+), 13 deletions(-)

diff --git a/ghc/compiler/hsSyn/HsImpExp.lhs b/ghc/compiler/hsSyn/HsImpExp.lhs
index 07309d68af04..375a1e052dcd 100644
--- a/ghc/compiler/hsSyn/HsImpExp.lhs
+++ b/ghc/compiler/hsSyn/HsImpExp.lhs
@@ -29,6 +29,8 @@ One per \tr{import} declaration in a module.
 data ImportDecl name
   = ImportDecl	  Module			-- module name
 		  Bool				-- True => qualified
+		  Bool				-- True => source imported module 
+						--    (current interpretation: ignore ufolding info)
 		  (Maybe Module)		-- as Module
 		  (Maybe (Bool, [IE name]))	-- (True => hiding, names)
 		  SrcLoc
@@ -36,10 +38,14 @@ data ImportDecl name
 
 \begin{code}
 instance (NamedThing name, Outputable name) => Outputable (ImportDecl name) where
-    ppr sty (ImportDecl mod qual as spec _)
-      = hang (hsep [ptext SLIT("import"), pp_qual qual, ptext mod, pp_as as])
+    ppr sty (ImportDecl mod qual as_source as spec _)
+      = hang (hsep [ptext SLIT("import"), pp_src as_source, 
+                    pp_qual qual, ptext mod, pp_as as])
 	     4 (pp_spec spec)
       where
+	pp_src False   = empty
+	pp_src True	= ptext SLIT("{-# SOURCE #-}")
+
 	pp_qual False   = empty
 	pp_qual True	= ptext SLIT("qualified")
 
diff --git a/ghc/compiler/hsSyn/HsMatches.lhs b/ghc/compiler/hsSyn/HsMatches.lhs
index d4f4cae4f62b..6e7cb8a4508a 100644
--- a/ghc/compiler/hsSyn/HsMatches.lhs
+++ b/ghc/compiler/hsSyn/HsMatches.lhs
@@ -103,7 +103,7 @@ pprMatches sty print_info@(is_case, name) [match]
   = if is_case then
     	pprMatch sty is_case match
     else
-    	hang name 4 (pprMatch sty is_case match)
+    	name <+> (pprMatch sty is_case match)
 
 pprMatches sty print_info (match1 : rest)
  = ($$) (pprMatches sty print_info [match1])
@@ -115,8 +115,8 @@ pprMatch :: (NamedThing id, Outputable id, Outputable pat,
 	PprStyle -> Bool -> Match tyvar uvar id pat -> Doc
 
 pprMatch sty is_case first_match
- = hang (sep (map (ppr sty) row_of_pats))
-	8 grhss_etc_stuff
+ = sep [(sep (map (ppr sty) row_of_pats)),
+	grhss_etc_stuff]
  where
     (row_of_pats, grhss_etc_stuff) = ppr_match sty is_case first_match
 
@@ -129,8 +129,7 @@ pprMatch sty is_case first_match
       = ([], pprGRHSsAndBinds sty is_case grhss_n_binds)
 
     ppr_match sty is_case (SimpleMatch expr)
-      = ([], hang (text (if is_case then "->" else "="))
-		 4 (ppr sty expr))
+      = ([], text (if is_case then "->" else "=") <+> ppr sty expr)
 
 ----------------------------------------------------------
 
@@ -158,14 +157,13 @@ pprGRHS :: (NamedThing id, Outputable id, Outputable pat,
 	=> PprStyle -> Bool -> GRHS tyvar uvar id pat -> Doc
 
 pprGRHS sty is_case (GRHS [] expr locn)
- =  hang (text (if is_case then "->" else "="))
-	 4 (ppr sty expr)
+ =  text (if is_case then "->" else "=") <+> ppr sty expr
 
 pprGRHS sty is_case (GRHS guard expr locn)
- = hang (hsep [char '|', ppr sty guard, text (if is_case then "->" else "=")])
-        4 (ppr sty expr)
+ = sep [char '|' <+> ppr sty guard, 
+	text (if is_case then "->" else "=") <+> ppr sty expr
+   ]
 
 pprGRHS sty is_case (OtherwiseGRHS  expr locn)
-  = hang (text (if is_case then "->" else "="))
-	 4 (ppr sty expr)
+  = text (if is_case then "->" else "=") <+> ppr sty expr
 \end{code}
-- 
GitLab