X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Ftypecheck%2FTcRules.lhs;h=a95251d1b40627c24aa6660f3068ecadae519ac6;hb=f16dbbbe59cf3aa19c5fd384560a1b89076d7bc8;hp=50ad098e1e08ade12e1a674e3f40c044cc39b398;hpb=30c122df62ec75f9ed7f392f24c2925675bf1d06;p=ghc-hetmet.git diff --git a/compiler/typecheck/TcRules.lhs b/compiler/typecheck/TcRules.lhs index 50ad098..a95251d 100644 --- a/compiler/typecheck/TcRules.lhs +++ b/compiler/typecheck/TcRules.lhs @@ -6,17 +6,8 @@ TcRules: Typechecking transformation rules \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 TcRules ( tcRules ) where -#include "HsVersions.h" - import HsSyn import TcRnMonad import TcSimplify @@ -40,7 +31,7 @@ tcRules decls = mapM (wrapLocM tcRule) decls tcRule :: RuleDecl Name -> TcM (RuleDecl TcId) tcRule (HsRule name act vars lhs fv_lhs rhs fv_rhs) = addErrCtxt (ruleCtxt name) $ do - traceTc (ptext SLIT("---- Rule ------") <+> ppr name) + traceTc (ptext (sLit "---- Rule ------") <+> ppr name) rule_ty <- newFlexiTyVarTy openTypeKind -- Deal with the tyvars mentioned in signatures @@ -95,7 +86,7 @@ tcRule (HsRule name act vars lhs fv_lhs rhs fv_rhs) (mkHsDictLet lhs_binds lhs') fv_lhs (mkHsDictLet rhs_binds rhs') fv_rhs) - +tcRuleBndrs :: [RuleBndr Name] -> ([Id] -> TcM a) -> TcM a tcRuleBndrs [] thing_inside = thing_inside [] tcRuleBndrs (RuleBndr var : vars) thing_inside = do { ty <- newFlexiTyVarTy openTypeKind @@ -115,7 +106,8 @@ tcRuleBndrs (RuleBndrSig var rn_ty : vars) thing_inside tcExtendIdEnv [id] $ tcRuleBndrs vars (\ids -> thing_inside (id:ids)) } -ruleCtxt name = ptext SLIT("When checking the transformation rule") <+> +ruleCtxt :: FastString -> SDoc +ruleCtxt name = ptext (sLit "When checking the transformation rule") <+> doubleQuotes (ftext name) \end{code}