diff options
-rw-r--r-- | compiler/GHC/Tc/Gen/HsType.hs | 1 | ||||
-rw-r--r-- | compiler/GHC/Tc/Types/Origin.hs | 5 | ||||
-rw-r--r-- | compiler/GHC/Tc/Validity.hs | 6 |
3 files changed, 0 insertions, 12 deletions
diff --git a/compiler/GHC/Tc/Gen/HsType.hs b/compiler/GHC/Tc/Gen/HsType.hs index b37f36c735..550d859c81 100644 --- a/compiler/GHC/Tc/Gen/HsType.hs +++ b/compiler/GHC/Tc/Gen/HsType.hs @@ -2838,7 +2838,6 @@ expectedKindInCtxt :: UserTypeCtxt -> ContextKind -- Depending on the context, we might accept any kind (for instance, in a TH -- splice), or only certain kinds (like in type signatures). expectedKindInCtxt (TySynCtxt _) = AnyKind -expectedKindInCtxt ThBrackCtxt = AnyKind expectedKindInCtxt (GhciCtxt {}) = AnyKind -- The types in a 'default' decl can have varying kinds -- See Note [Extended defaults]" in GHC.Tc.Utils.Env diff --git a/compiler/GHC/Tc/Types/Origin.hs b/compiler/GHC/Tc/Types/Origin.hs index b2fdefa4cd..d836b8d947 100644 --- a/compiler/GHC/Tc/Types/Origin.hs +++ b/compiler/GHC/Tc/Types/Origin.hs @@ -84,15 +84,12 @@ data UserTypeCtxt -- or (x::t, y) = e | RuleSigCtxt Name -- LHS of a RULE forall -- RULE "foo" forall (x :: a -> a). f (Just x) = ... - | ResSigCtxt -- Result type sig - -- f x :: t = .... | ForSigCtxt Name -- Foreign import or export signature | DefaultDeclCtxt -- Types in a default declaration | InstDeclCtxt Bool -- An instance declaration -- True: stand-alone deriving -- False: vanilla instance declaration | SpecInstCtxt -- SPECIALISE instance pragma - | ThBrackCtxt -- Template Haskell type brackets [t| ... |] | GenSigCtxt -- Higher-rank or impredicative situations -- e.g. (f e) where f has a higher-rank type -- We might want to elaborate this @@ -136,9 +133,7 @@ pprUserTypeCtxt (StandaloneKindSigCtxt n) = text "a standalone kind signature fo pprUserTypeCtxt TypeAppCtxt = text "a type argument" pprUserTypeCtxt (ConArgCtxt c) = text "the type of the constructor" <+> quotes (ppr c) pprUserTypeCtxt (TySynCtxt c) = text "the RHS of the type synonym" <+> quotes (ppr c) -pprUserTypeCtxt ThBrackCtxt = text "a Template Haskell quotation [t|...|]" pprUserTypeCtxt PatSigCtxt = text "a pattern type signature" -pprUserTypeCtxt ResSigCtxt = text "a result type signature" pprUserTypeCtxt (ForSigCtxt n) = text "the foreign declaration for" <+> quotes (ppr n) pprUserTypeCtxt DefaultDeclCtxt = text "a type in a `default' declaration" pprUserTypeCtxt (InstDeclCtxt False) = text "an instance declaration" diff --git a/compiler/GHC/Tc/Validity.hs b/compiler/GHC/Tc/Validity.hs index fba45562b7..946d1bf9e9 100644 --- a/compiler/GHC/Tc/Validity.hs +++ b/compiler/GHC/Tc/Validity.hs @@ -348,7 +348,6 @@ checkValidType ctxt ty rank = case ctxt of DefaultDeclCtxt-> MustBeMonoType - ResSigCtxt -> MustBeMonoType PatSigCtxt -> rank0 RuleSigCtxt _ -> rank1 TySynCtxt _ -> rank0 @@ -372,7 +371,6 @@ checkValidType ctxt ty ForSigCtxt _ -> rank1 SpecInstCtxt -> rank1 - ThBrackCtxt -> rank1 GhciCtxt {} -> ArbitraryRank TyVarBndrKindCtxt _ -> rank0 @@ -500,7 +498,6 @@ vdqAllowed :: UserTypeCtxt -> Bool vdqAllowed (KindSigCtxt {}) = True vdqAllowed (StandaloneKindSigCtxt {}) = True vdqAllowed (TySynCtxt {}) = True -vdqAllowed (ThBrackCtxt {}) = True vdqAllowed (GhciCtxt {}) = True vdqAllowed (TyVarBndrKindCtxt {}) = True vdqAllowed (DataKindCtxt {}) = True @@ -518,7 +515,6 @@ vdqAllowed (TypeAppCtxt {}) = False vdqAllowed (PatSynCtxt {}) = False vdqAllowed (PatSigCtxt {}) = False vdqAllowed (RuleSigCtxt {}) = False -vdqAllowed (ResSigCtxt {}) = False vdqAllowed (ForSigCtxt {}) = False vdqAllowed (DefaultDeclCtxt {}) = False -- We count class constraints as "types of terms". All of the cases below deal @@ -1329,11 +1325,9 @@ okIPCtxt (InfSigCtxt {}) = True okIPCtxt ExprSigCtxt = True okIPCtxt TypeAppCtxt = True okIPCtxt PatSigCtxt = True -okIPCtxt ResSigCtxt = True okIPCtxt GenSigCtxt = True okIPCtxt (ConArgCtxt {}) = True okIPCtxt (ForSigCtxt {}) = True -- ?? -okIPCtxt ThBrackCtxt = True okIPCtxt (GhciCtxt {}) = True okIPCtxt SigmaCtxt = True okIPCtxt (DataTyCtxt {}) = True |