diff options
author | DanielRrr <daniel.rogozin@serokell.io> | 2021-11-23 14:00:17 +0300 |
---|---|---|
committer | DanielRrr <daniel.rogozin@serokell.io> | 2022-07-23 16:12:35 +0300 |
commit | c0392231f2d92d5ac62668ffa6a4ae1f7b16475a (patch) | |
tree | 2f3a0e08dc793f4bde168d8a391018f9988cffb5 | |
parent | 59ab6f132c3bbf362aae693cf7e68fd924548f8d (diff) | |
download | haskell-c0392231f2d92d5ac62668ffa6a4ae1f7b16475a.tar.gz |
typechecker checkpoint
-rw-r--r-- | compiler/GHC/Tc/Utils/TcMType.hs | 6 | ||||
-rw-r--r-- | compiler/GHC/Tc/Utils/Zonk.hs | 15 |
2 files changed, 7 insertions, 14 deletions
diff --git a/compiler/GHC/Tc/Utils/TcMType.hs b/compiler/GHC/Tc/Utils/TcMType.hs index b8e3839eb5..84413351ce 100644 --- a/compiler/GHC/Tc/Utils/TcMType.hs +++ b/compiler/GHC/Tc/Utils/TcMType.hs @@ -2325,6 +2325,12 @@ zonkTyCoVarKindBinder :: (VarBndr TyCoVar fl) -> TcM (VarBndr TyCoVar fl) zonkTyCoVarKindBinder (Bndr tv fl) = do { kind' <- zonkTcType (tyVarKind tv) ; return $ Bndr (setTyVarKind tv kind') fl } +zonkTyCoBinder :: TyCoBinder -> TcM TyCoBinder +zonkTyCoBinder (Anon flag (Scaled mult ty)) = do { ty' <- zonkTcType ty + ; return $ Anon flag (Scaled mult ty') } +zonkTyCoBinder (Named tv) = do { tv' <- zonkTyCoVarKindBinder tv + ; return $ Named tv' } + {- ************************************************************************ * * diff --git a/compiler/GHC/Tc/Utils/Zonk.hs b/compiler/GHC/Tc/Utils/Zonk.hs index decbf42c1d..a8be73ec5d 100644 --- a/compiler/GHC/Tc/Utils/Zonk.hs +++ b/compiler/GHC/Tc/Utils/Zonk.hs @@ -1466,26 +1466,13 @@ zonkPats env (pat:pats) = do { (env1, pat') <- zonkPat env pat ; (env', pats') <- zonkPats env1 pats ; return (env', pat':pats') } -<<<<<<< HEAD zonkLMatchPats :: ZonkEnv -> [LMatchPat GhcTc] -> TcM (ZonkEnv, [LMatchPat GhcTc]) zonkLMatchPats env [] = return (env, []) zonkLMatchPats env (pat:pats) = do { (env1, pat') <- zonkLMatchPat env pat ; (env', pats') <- zonkLMatchPats env1 pats ; return (env', pat' : pats') } -||||||| parent of bb42152455 (parser and renamer checkpoint) -======= -zonkMatchPats :: ZonkEnv -> [LMatchPat GhcTc] -> TcM (ZonkEnv, [LMatchPat GhcTc]) -zonkMatchPats env [] = return (env, []) -zonkMatchPats env (pat:pats) = - case pat of - L l (VisPat x lpat) -> do { (env1, pat') <- zonkPat env lpat - ; (env', pats') <- zonkMatchPats env1 pats - ; return (env', L l (VisPat x pat') : pats') - } - _ -> panic "we don't have other patters at the moment" - ->>>>>>> bb42152455 (parser and renamer checkpoint) + {- ************************************************************************ * * |