X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Ftypecheck%2FTcExpr.lhs;h=d6099816bf03709193dcda649464740d28f45677;hb=4ea5fe11fbc339a7a1bce13cbb2a2301772b493a;hp=c0a9294f529380ef09b57f718479455ae76a695e;hpb=6fcf90065dc4e75b7dc6bbf238a9891a71ae5a86;p=ghc-hetmet.git diff --git a/compiler/typecheck/TcExpr.lhs b/compiler/typecheck/TcExpr.lhs index c0a9294..d609981 100644 --- a/compiler/typecheck/TcExpr.lhs +++ b/compiler/typecheck/TcExpr.lhs @@ -12,7 +12,7 @@ module TcExpr ( tcPolyExpr, tcPolyExprNC, #ifdef GHCI /* Only if bootstrapped */ import {-# SOURCE #-} TcSplice( tcSpliceExpr, tcBracket ) import HsSyn ( nlHsVar ) -import Id ( Id ) +import Id ( Id, idName ) import Name ( isExternalName ) import TcType ( isTauTy ) import TcEnv ( checkWellStaged ) @@ -54,7 +54,7 @@ import {- Kind parts of -} import Id ( Id, idType, recordSelectorFieldLabel, isRecordSelector, isNaughtyRecordSelector, - isDataConId_maybe, idName ) + isDataConId_maybe ) import DataCon ( DataCon, dataConFieldLabels, dataConStrictMarks, dataConSourceArity, dataConWrapId, isVanillaDataCon, dataConUnivTyVars, @@ -965,16 +965,10 @@ thLocalId orig id id_ty th_bind_lvl ; case use_stage of Brack use_lvl ps_var lie_var | use_lvl > th_bind_lvl -> thBrackId orig id ps_var lie_var - other -> checkWellStaged (quotes (ppr id)) th_bind_lvl use_stage + other -> do { checkWellStaged (quotes (ppr id)) th_bind_lvl use_stage + ; return id } } -thLocalId orig id_name id th_bind_lvl (Brack use_lvl ps_var lie_var) - | use_lvl > th_bind_lvl - = thBrackId -thLocalId orig id_name id th_bind_lvl use_stage - = do { checkWellStaged - ; return id } - -------------------------------------- thBrackId orig id ps_var lie_var | isExternalName id_name