From 1aaf9dc3eee4942855cfa3416ae8a518cd65a95a Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Sun, 13 Jul 2008 12:13:09 +0000 Subject: [PATCH] Fix some build problems when GHCI is not definde --- compiler/hsSyn/HsExpr.lhs | 5 +---- compiler/hsSyn/HsPat.lhs | 9 +++++++++ compiler/typecheck/TcSplice.lhs | 8 +++++--- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/compiler/hsSyn/HsExpr.lhs b/compiler/hsSyn/HsExpr.lhs index 78508c8..d213158 100644 --- a/compiler/hsSyn/HsExpr.lhs +++ b/compiler/hsSyn/HsExpr.lhs @@ -441,10 +441,7 @@ ppr_expr (HsSpliceE s) = pprSplice s ppr_expr (HsBracket b) = pprHsBracket b ppr_expr (HsBracketOut e []) = ppr e ppr_expr (HsBracketOut e ps) = ppr e $$ ptext (sLit "pending") <+> ppr ps -ppr_expr (HsQuasiQuoteE (HsQuasiQuote name quoter _ quote)) - = char '$' <> brackets (ppr name) <> - ptext (sLit "[:") <> ppr quoter <> ptext (sLit "|") <> - ppr quote <> ptext (sLit "|]") +ppr_expr (HsQuasiQuoteE qq) = ppr qq ppr_expr (HsProc pat (L _ (HsCmdTop cmd _ _ _))) = hsep [ptext (sLit "proc"), ppr pat, ptext (sLit "->"), ppr cmd] diff --git a/compiler/hsSyn/HsPat.lhs b/compiler/hsSyn/HsPat.lhs index 0320706..9e954a6 100644 --- a/compiler/hsSyn/HsPat.lhs +++ b/compiler/hsSyn/HsPat.lhs @@ -210,6 +210,15 @@ data HsQuasiQuote id = HsQuasiQuote id SrcSpan FastString + +instance OutputableBndr id => Outputable (HsQuasiQuote id) where + ppr = ppr_qq + +ppr_qq :: OutputableBndr id => HsQuasiQuote id -> SDoc +ppr_qq (HsQuasiQuote name quoter _ quote) = + char '$' <> brackets (ppr name) <> + ptext (sLit "[:") <> ppr quoter <> ptext (sLit "|") <> + ppr quote <> ptext (sLit "|]") \end{code} diff --git a/compiler/typecheck/TcSplice.lhs b/compiler/typecheck/TcSplice.lhs index 51cf392..60d6a6b 100644 --- a/compiler/typecheck/TcSplice.lhs +++ b/compiler/typecheck/TcSplice.lhs @@ -157,6 +157,7 @@ The predicate we use is TcEnv.thTopLevelId. %************************************************************************ \begin{code} +tcBracket :: HsBracket Name -> BoxyRhoType -> TcM (LHsExpr TcId) tcSpliceDecls :: LHsExpr Name -> TcM [LHsDecl RdrName] tcSpliceExpr :: HsSplice Name -> BoxyRhoType -> TcM (HsExpr TcId) kcSpliceType :: HsSplice Name -> TcM (HsType Name, TcKind) @@ -166,8 +167,10 @@ runQuasiQuoteExpr :: HsQuasiQuote Name -> TcM (LHsExpr RdrName) runQuasiQuotePat :: HsQuasiQuote Name -> TcM (LPat RdrName) #ifndef GHCI -tcSpliceExpr _ e _ = pprPanic "Cant do tcSpliceExpr without GHCi" (ppr e) -tcSpliceDecls e = pprPanic "Cant do tcSpliceDecls without GHCi" (ppr e) +tcBracket x _ = pprPanic "Cant do tcBracket without GHCi" (ppr x) +tcSpliceExpr e = pprPanic "Cant do tcSpliceExpr without GHCi" (ppr e) +tcSpliceDecls x = pprPanic "Cant do tcSpliceDecls without GHCi" (ppr x) +kcSpliceType x = pprPanic "Cant do kcSpliceType without GHCi" (ppr x) runQuasiQuoteExpr q = pprPanic "Cant do runQuasiQuoteExpr without GHCi" (ppr q) runQuasiQuotePat q = pprPanic "Cant do runQuasiQuotePat without GHCi" (ppr q) @@ -193,7 +196,6 @@ Desugared: f = do { s7 <- g Int 3 ; return (ConE "Data.Maybe.Just" s7) } \begin{code} -tcBracket :: HsBracket Name -> BoxyRhoType -> TcM (LHsExpr TcId) tcBracket brack res_ty = do level <- getStage case bracketOK level of { -- 1.7.10.4