Simon Jakobi pushed to branch wip/sjakobi/checkTyEqRhs at Glasgow Haskell Compiler / GHC Commits: 5068e09e by Simon Jakobi at 2026-05-25T12:46:06+02:00 Prevent dictionary-passing in checkTyEqRhs ...by pre-specializing it to TcM. Previously, wherever checkTyEqRhs was used in other modules, the Core showed dictionary passing ($fMonadIOEnv). The added SPECIALIZE pragma prevents this. - - - - - 1 changed file: - compiler/GHC/Tc/Utils/Unify.hs Changes: ===================================== compiler/GHC/Tc/Utils/Unify.hs ===================================== @@ -4240,6 +4240,8 @@ checkTyEqRhs flags rhs = recurseIntoFamTyConApp flags tc tys | otherwise = check_ty_eq_rhs flags rhs +-- Prevent dictionary-passing when checkTyEqRhs is used in TcM in other modules: +{-# SPECIALIZE checkTyEqRhs :: TyEqFlags TcM a -> TcType -> TcM (PuResult a Reduction) #-} {- Note [Special case for top-level of Given equality] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/5068e09ee25cfb004f9178bd6603c4eb... -- View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/5068e09ee25cfb004f9178bd6603c4eb... You're receiving this email because of your account on gitlab.haskell.org.
participants (1)
-
Simon Jakobi (@sjakobi2)