diff options
author | Ryan Scott <ryan.gl.scott@gmail.com> | 2023-05-01 20:03:39 -0400 |
---|---|---|
committer | Ryan Scott <ryan.gl.scott@gmail.com> | 2023-05-03 22:05:13 -0400 |
commit | 78a7d47bd0523483d5008a131e190d92fa8cd4d8 (patch) | |
tree | f0a030ff963901405a8cd1044ad0488d46d138fb /compiler/GHC/Builtin/Names | |
parent | 00a8a5ff9abf5bb1a0c2a9225c7bca5ec3bdf306 (diff) | |
download | haskell-wip/T23329.tar.gz |
Fix type variable substitution in gen_Newtype_fam_instswip/T23329
Previously, `gen_Newtype_fam_insts` was substituting the type variable binders
of a type family instance using `substTyVars`, which failed to take type
variable dependencies into account. There is similar code in
`GHC.Tc.TyCl.Class.tcATDefault` that _does_ perform this substitution properly,
so this patch:
1. Factors out this code into a top-level `substATBndrs` function, and
2. Uses `substATBndrs` in `gen_Newtype_fam_insts`.
Fixes #23329.
Diffstat (limited to 'compiler/GHC/Builtin/Names')
0 files changed, 0 insertions, 0 deletions