diff options
author | Krzysztof Gogolewski <krzysztof.gogolewski@tweag.io> | 2022-04-15 18:09:39 +0200 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2022-04-20 11:50:04 -0400 |
commit | a5ea65c981a70454dc56719f8566efa7ee184d3f (patch) | |
tree | 1f112a4cb990b8a498847d398129127c545ba928 /compiler/GHC/Tc | |
parent | 83c67f766be615d4db6f71f8af0cbb9b4c4917bb (diff) | |
download | haskell-a5ea65c981a70454dc56719f8566efa7ee184d3f.tar.gz |
Remove LevityInfo
Every Id was storing a boolean whether it could be levity-polymorphic.
This information is no longer needed since representation-checking
has been moved to the typechecker.
Diffstat (limited to 'compiler/GHC/Tc')
-rw-r--r-- | compiler/GHC/Tc/TyCl/PatSyn.hs | 6 | ||||
-rw-r--r-- | compiler/GHC/Tc/Utils/Zonk.hs | 3 |
2 files changed, 3 insertions, 6 deletions
diff --git a/compiler/GHC/Tc/TyCl/PatSyn.hs b/compiler/GHC/Tc/TyCl/PatSyn.hs index 6e7316d544..46691958a6 100644 --- a/compiler/GHC/Tc/TyCl/PatSyn.hs +++ b/compiler/GHC/Tc/TyCl/PatSyn.hs @@ -43,7 +43,7 @@ import GHC.Data.FastString import GHC.Types.Var import GHC.Types.Var.Env( emptyTidyEnv, mkInScopeSet ) import GHC.Types.Id -import GHC.Types.Id.Info( RecSelParent(..), setLevityInfoWithType ) +import GHC.Types.Id.Info( RecSelParent(..) ) import GHC.Tc.Gen.Bind import GHC.Types.Basic import GHC.Tc.Solver @@ -910,9 +910,7 @@ tcPatSynBuilderBind prag_fn (PSB { psb_id = ps_lname@(L loc ps_name) Just (builder_name, builder_ty, need_dummy_arg) -> -- Normal case do { -- Bidirectional, so patSynBuilder returns Just - let pat_ty = patSynResultType patsyn - builder_id = modifyIdInfo (`setLevityInfoWithType` pat_ty) $ - mkExportedVanillaId builder_name builder_ty + let builder_id = mkExportedVanillaId builder_name builder_ty -- See Note [Exported LocalIds] in GHC.Types.Id prags = lookupPragEnv prag_fn ps_name -- See Note [Pragmas for pattern synonyms] diff --git a/compiler/GHC/Tc/Utils/Zonk.hs b/compiler/GHC/Tc/Utils/Zonk.hs index 0747db57e4..eee43e8ed1 100644 --- a/compiler/GHC/Tc/Utils/Zonk.hs +++ b/compiler/GHC/Tc/Utils/Zonk.hs @@ -78,7 +78,6 @@ import GHC.Types.Name.Env import GHC.Types.Var import GHC.Types.Var.Env import GHC.Types.Id -import GHC.Types.Id.Info import GHC.Types.TypeEnv import GHC.Types.SourceText import GHC.Types.Basic @@ -385,7 +384,7 @@ zonkIdOccs env ids = map (zonkIdOcc env) ids zonkIdBndr :: ZonkEnv -> TcId -> TcM Id zonkIdBndr env v = do Scaled w' ty' <- zonkScaledTcTypeToTypeX env (idScaledType v) - return (modifyIdInfo (`setLevityInfoWithType` ty') (setIdMult (setIdType v ty') w')) + return (setIdMult (setIdType v ty') w') zonkIdBndrs :: ZonkEnv -> [TcId] -> TcM [Id] zonkIdBndrs env ids = mapM (zonkIdBndr env) ids |