[Git][ghc/ghc][wip/T25647] use TyVarTv instead of SkolemTv for freeArg `_`, since we also do not default...
Patrick (@soulomoon)
gitlab at gitlab.haskell.org
Sat Feb 15 00:43:18 UTC 2025
Patrick pushed to branch wip/T25647 at Glasgow Haskell Compiler / GHC
Commits:
65988f52 by Patrick at 2025-02-15T08:43:08+08:00
use TyVarTv instead of SkolemTv for freeArg `_`, since we also do not default TyVarTv in defaultTyVar and defaultTyVarTcS
- - - - -
2 changed files:
- compiler/GHC/Tc/Gen/HsType.hs
- compiler/GHC/Tc/Utils/TcMType.hs
Changes:
=====================================
compiler/GHC/Tc/Gen/HsType.hs
=====================================
@@ -2267,11 +2267,8 @@ tcAnonWildCardOcc is_extra (TcTyMode { mode_holes = Just (hole_lvl, hole_mode) }
HM_FamSig -> fsLit "_"
HM_VTA -> fsLit "w"
HM_TyAppPat -> fsLit "_"
- newSkolemTvDetailsAtLevel tclvl =
- do { skol_info <- mkSkolemInfo FamInstSkol
- ; return (SkolemTv skol_info tclvl False) }
mk_wc_details = case hole_mode of
- HM_FamPat FreeArg -> newSkolemTvDetailsAtLevel
+ HM_FamPat FreeArg -> newTyVarMetaVarDetailsAtLevel
_ -> newTauTvDetailsAtLevel
emit_holes = case hole_mode of
HM_Sig -> True
=====================================
compiler/GHC/Tc/Utils/TcMType.hs
=====================================
@@ -34,7 +34,7 @@ module GHC.Tc.Utils.TcMType (
newMultiplicityVar,
readMetaTyVar, writeMetaTyVar, writeMetaTyVarRef,
- newNoDefTauTvDetailsAtLevel, newTauTvDetailsAtLevel,
+ newTyVarMetaVarDetailsAtLevel, newTauTvDetailsAtLevel,
newMetaDetails, newMetaTyVarName,
isFilledMetaTyVar_maybe, isFilledMetaTyVar, isUnfilledMetaTyVar,
@@ -901,10 +901,10 @@ newTauTvDetailsAtLevel tclvl
, mtv_ref = ref
, mtv_tclvl = tclvl }) }
-newNoDefTauTvDetailsAtLevel :: TcLevel -> TcM TcTyVarDetails
-newNoDefTauTvDetailsAtLevel tclvl
+newTyVarMetaVarDetailsAtLevel :: TcLevel -> TcM TcTyVarDetails
+newTyVarMetaVarDetailsAtLevel tclvl
= do { ref <- newMutVar Flexi
- ; return (MetaTv { mtv_info = NoDefTauTv
+ ; return (MetaTv { mtv_info = TyVarTv
, mtv_ref = ref
, mtv_tclvl = tclvl }) }
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/65988f52616919dd5a87fbd9612384856f527bff
--
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/65988f52616919dd5a87fbd9612384856f527bff
You're receiving this email because of your account on gitlab.haskell.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20250214/256f0a92/attachment-0001.html>
More information about the ghc-commits
mailing list