Representation-polymorphic HasField (fixes #22156)
This generalises the HasField class to support representation polymorphism, so that instead of type HasField :: forall {k} . k -> Type -> Type -> Constraint we have type HasField :: forall {k} {r_rep} {a_rep} . k -> TYPE r_rep -> TYPE a_rep -> Constraint
Showing
- compiler/GHC/Tc/Instance/Class.hs 4 additions, 3 deletionscompiler/GHC/Tc/Instance/Class.hs
- compiler/GHC/Tc/Validity.hs 1 addition, 1 deletioncompiler/GHC/Tc/Validity.hs
- docs/users_guide/9.12.1-notes.rst 7 additions, 0 deletionsdocs/users_guide/9.12.1-notes.rst
- libraries/base/changelog.md 1 addition, 0 deletionslibraries/base/changelog.md
- libraries/ghc-internal/src/GHC/Internal/Records.hs 11 additions, 6 deletionslibraries/ghc-internal/src/GHC/Internal/Records.hs
- testsuite/tests/interface-stability/base-exports.stdout 1 addition, 1 deletiontestsuite/tests/interface-stability/base-exports.stdout
- testsuite/tests/interface-stability/base-exports.stdout-javascript-unknown-ghcjs 1 addition, 1 deletion...ce-stability/base-exports.stdout-javascript-unknown-ghcjs
- testsuite/tests/interface-stability/base-exports.stdout-mingw32 1 addition, 1 deletion...ite/tests/interface-stability/base-exports.stdout-mingw32
- testsuite/tests/interface-stability/base-exports.stdout-ws-32 1 addition, 1 deletion...suite/tests/interface-stability/base-exports.stdout-ws-32
- testsuite/tests/overloadedrecflds/should_run/all.T 1 addition, 0 deletionstestsuite/tests/overloadedrecflds/should_run/all.T
- testsuite/tests/overloadedrecflds/should_run/hasfieldrun03.hs 32 additions, 0 deletions...suite/tests/overloadedrecflds/should_run/hasfieldrun03.hs
- testsuite/tests/overloadedrecflds/should_run/hasfieldrun03.stdout 8 additions, 0 deletions...e/tests/overloadedrecflds/should_run/hasfieldrun03.stdout
Loading
Please register or sign in to comment