X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2FcoreSyn%2FPprCore.lhs;h=36c7df0d0416aa6d5df17daa40371d11a2f4f56b;hp=0e3b82d307e817a642ca65cc03d1c42fe9d7bd95;hb=cb8efb737dae6e41f28d471883df67724a33120f;hpb=9f8e195e69e54c733eb93b2e2e39c2ebe818ce62 diff --git a/compiler/coreSyn/PprCore.lhs b/compiler/coreSyn/PprCore.lhs index 0e3b82d..36c7df0 100644 --- a/compiler/coreSyn/PprCore.lhs +++ b/compiler/coreSyn/PprCore.lhs @@ -40,6 +40,7 @@ import IdInfo ( cprInfo, ppCprInfo, strictnessInfo, ppStrictnessInfo ) import DataCon ( dataConTyCon ) import TyCon ( tupleTyConBoxity, isTupleTyCon ) import Type ( pprParendType, pprType, pprParendKind ) +import Coercion ( coercionKindTyConApp ) import BasicTypes ( tupleParens, isNoOcc, isAlwaysActive ) import Util ( lengthIs ) import Outputable @@ -122,6 +123,14 @@ ppr_expr add_par (Type ty) = add_par (ptext SLIT("TYPE") <+> ppr ty) -- Wierd ppr_expr add_par (Var name) = ppr name ppr_expr add_par (Lit lit) = ppr lit +ppr_expr add_par (Cast expr co) + = add_par $ + sep [pprParendExpr expr, + ptext SLIT("`cast`") <+> parens (pprCo co)] + where + pprCo co = sep [ppr co, dcolon <+> ppr (coercionKindTyConApp co)] + + ppr_expr add_par expr@(Lam _ _) = let (bndrs, body) = collectBinders expr @@ -214,24 +223,6 @@ ppr_expr add_par (Let bind expr) ppr_expr add_par (Note (SCC cc) expr) = add_par (sep [pprCostCentreCore cc, pprCoreExpr expr]) -#ifdef DEBUG -ppr_expr add_par (Note (Coerce to_ty from_ty) expr) - = add_par $ - getPprStyle $ \ sty -> - if debugStyle sty then - sep [ptext SLIT("__coerce") <+> - sep [pprParendType to_ty, pprParendType from_ty], - pprParendExpr expr] - else - sep [hsep [ptext SLIT("__coerce"), pprParendType to_ty], - pprParendExpr expr] -#else -ppr_expr add_par (Note (Coerce to_ty from_ty) expr) - = add_par $ - sep [sep [ptext SLIT("__coerce"), nest 2 (pprParendType to_ty)], - pprParendExpr expr] -#endif - ppr_expr add_par (Note InlineMe expr) = add_par $ ptext SLIT("__inline_me") <+> pprParendExpr expr