diff options
author | Matthew Pickering <matthewtpickering@gmail.com> | 2022-01-31 16:20:09 +0000 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2022-02-05 19:22:25 -0500 |
commit | 549292eb3725eca61722ddd2cfb4d964ccba3fc7 (patch) | |
tree | 302c5e889a1474c8910a06897b306357b6bd704a /compiler | |
parent | 299acff08aa1b7b720ad2b69c459c514033bc395 (diff) | |
download | haskell-549292eb3725eca61722ddd2cfb4d964ccba3fc7.tar.gz |
Make implication tidying agree with Note [Tidying multiple names at once]
Note [Tidying multiple names at once] indicates that if multiple
variables have the same name then we shouldn't prioritise one of them
and instead rename them all to a1, a2, a3... etc
This patch implements that change, some error message changes as
expected.
Closes #20932
Diffstat (limited to 'compiler')
-rw-r--r-- | compiler/GHC/Tc/Errors.hs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/GHC/Tc/Errors.hs b/compiler/GHC/Tc/Errors.hs index 12576437e2..3474626289 100644 --- a/compiler/GHC/Tc/Errors.hs +++ b/compiler/GHC/Tc/Errors.hs @@ -82,7 +82,7 @@ import Control.Monad ( unless, when, foldM, forM_ ) import Data.Foldable ( toList ) import Data.Functor ( (<&>) ) import Data.Function ( on ) -import Data.List ( partition, mapAccumL, sort ) +import Data.List ( partition, sort ) import Data.List.NonEmpty ( NonEmpty(..), (<|) ) import qualified Data.List.NonEmpty as NE ( map, reverse ) import Data.List ( sortBy ) @@ -357,7 +357,7 @@ reportImplic ctxt implic@(Implic { ic_skols = tvs warnRedundantConstraints ctxt' tcl_env info' dead_givens } where insoluble = isInsolubleStatus status - (env1, tvs') = mapAccumL tidyVarBndr (cec_tidy ctxt) $ + (env1, tvs') = tidyVarBndrs (cec_tidy ctxt) $ scopedSort tvs -- scopedSort: the ic_skols may not be in dependency order -- (see Note [Skolems in an implication] in GHC.Tc.Types.Constraint) |