X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FcoreSyn%2FPprCore.lhs;h=f297a79eb1ebc6fa725f7b7d2092a7b66a959474;hb=d04e338c3b78fb76341e374bf776b14cbca78bd1;hp=8023b988f28928e0dad975b39c8145eca16bcc9e;hpb=49c98d143c382a1341e1046f5ca00819a25691ba;p=ghc-hetmet.git diff --git a/compiler/coreSyn/PprCore.lhs b/compiler/coreSyn/PprCore.lhs index 8023b98..f297a79 100644 --- a/compiler/coreSyn/PprCore.lhs +++ b/compiler/coreSyn/PprCore.lhs @@ -6,6 +6,13 @@ Printing of Core syntax \begin{code} +{-# OPTIONS -w #-} +-- The above warning supression flag is a temporary kludge. +-- While working on this module you are encouraged to remove it and fix +-- any warnings in the module. See +-- http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings +-- for details + module PprCore ( pprCoreExpr, pprParendExpr, pprCoreBinding, pprCoreBindings, pprCoreAlt, @@ -132,7 +139,7 @@ ppr_expr add_par expr@(App fun arg) let pp_args = sep (map pprArg args) val_args = dropWhile isTypeArg args -- Drop the type arguments for tuples - pp_tup_args = sep (punctuate comma (map pprArg val_args)) + pp_tup_args = sep (punctuate comma (map pprCoreExpr val_args)) in case fun of Var f -> case isDataConWorkId_maybe f of @@ -186,7 +193,6 @@ ppr_expr add_par (Let bind@(NonRec val_bdr rhs@(Let _ _)) body) nest 2 (pprCoreExpr rhs), ptext SLIT("} in"), pprCoreExpr body ] --} ppr_expr add_par (Let bind@(NonRec val_bdr rhs) expr@(Let _ _)) = add_par @@ -195,15 +201,16 @@ ppr_expr add_par (Let bind@(NonRec val_bdr rhs) expr@(Let _ _)) ptext SLIT("} in")]) $$ pprCoreExpr expr) +-} --- general case (recursive case, too) +-- General case (recursive case, too) ppr_expr add_par (Let bind expr) = add_par $ - sep [hang (ptext keyword) 2 (ppr_bind bind), - hang (ptext SLIT("} in ")) 2 (pprCoreExpr expr)] + sep [hang (ptext keyword) 2 (ppr_bind bind <+> ptext SLIT("} in")), + pprCoreExpr expr] where keyword = case bind of - Rec _ -> SLIT("__letrec {") + Rec _ -> SLIT("letrec {") NonRec _ _ -> SLIT("let {") ppr_expr add_par (Note (SCC cc) expr) @@ -354,10 +361,9 @@ pprRule (BuiltinRule { ru_fn = fn, ru_name = name}) pprRule (Rule { ru_name = name, ru_act = act, ru_fn = fn, ru_bndrs = tpl_vars, ru_args = tpl_args, ru_rhs = rhs }) - = doubleQuotes (ftext name) <+> ppr act <+> - sep [ - ptext SLIT("__forall") <+> braces (sep (map pprTypedBinder tpl_vars)), - nest 2 (ppr fn <+> sep (map pprArg tpl_args)), - nest 2 (ptext SLIT("=") <+> pprCoreExpr rhs) - ] <+> semi + = hang (doubleQuotes (ftext name) <+> ppr act) + 4 (sep [ptext SLIT("forall") <+> braces (sep (map pprTypedBinder tpl_vars)), + nest 2 (ppr fn <+> sep (map pprArg tpl_args)), + nest 2 (ptext SLIT("=") <+> pprCoreExpr rhs) + ]) \end{code}