[Git][ghc/ghc][master] Prevent dictionary-passing in checkTyEqRhs
Marge Bot pushed to branch master at Glasgow Haskell Compiler / GHC Commits: b8ba7e61 by Simon Jakobi at 2026-05-28T17:32:23-04: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/b8ba7e61ef3d076cf14cdac4fd0c4704... -- View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/b8ba7e61ef3d076cf14cdac4fd0c4704... You're receiving this email because of your account on gitlab.haskell.org.
participants (1)
-
Marge Bot (@marge-bot)