diff options
author | sheaf <sam.derbyshire@gmail.com> | 2022-01-26 14:24:48 +0100 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2022-02-08 05:27:25 -0500 |
commit | a9355e84480e421a22fee57d6ee24d9ec059e128 (patch) | |
tree | 7994b81532b131db79c56a25c17d6ee34e1f63dd /compiler/GHC/Unit/Module/ModGuts.hs | |
parent | ff867c460db9cfc43f5697c8e582f8c1ea4bd572 (diff) | |
download | haskell-a9355e84480e421a22fee57d6ee24d9ec059e128.tar.gz |
Allow HasField in quantified constraints
We perform validity checking on user-written HasField instances,
for example to disallow:
data Foo a = Foo { fld :: Int }
instance HasField "fld" (Foo a) Bool
However, these checks were also being made on quantified constraints,
e.g.
data Bar where
Bar :: (forall a. HasField s (Foo a) Int) => Proxy s -> Bar
This patch simply skips validity checking for quantified constraints,
in line with what we already do for equality constraints such as
Coercible.
Fixes #20989
Diffstat (limited to 'compiler/GHC/Unit/Module/ModGuts.hs')
0 files changed, 0 insertions, 0 deletions