diff options
author | John Ericson <John.Ericson@Obsidian.Systems> | 2020-04-22 00:59:26 -0400 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2020-05-08 15:29:36 -0400 |
commit | f4d5c6df56a28be5448acf43e4f45b1695ae9eb5 (patch) | |
tree | 5f33c35d500de9883feaa2555760c9903a607e5e /compiler/GHC/Rename | |
parent | 4e9aef9ea732e8157ee0b7fbb85b2cdfbf49de5f (diff) | |
download | haskell-f4d5c6df56a28be5448acf43e4f45b1695ae9eb5.tar.gz |
Rename local `real_fvs` to `implicit_vs`
It doesn't make sense to call the "free" variables we are about to
implicitly bind the real ones.
Diffstat (limited to 'compiler/GHC/Rename')
-rw-r--r-- | compiler/GHC/Rename/HsType.hs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/compiler/GHC/Rename/HsType.hs b/compiler/GHC/Rename/HsType.hs index 90540eda08..144534f4ec 100644 --- a/compiler/GHC/Rename/HsType.hs +++ b/compiler/GHC/Rename/HsType.hs @@ -324,14 +324,16 @@ rnImplicitBndrs bind_free_tvs fvs_with_dups thing_inside = do { let fvs = nubL fvs_with_dups - real_fvs | bind_free_tvs = fvs - | otherwise = [] + -- implicit_vs are the surface-syntax free vars that are in fact + -- actually captured by implicit bindings + implicit_vs | bind_free_tvs = fvs + | otherwise = [] ; traceRn "rnImplicitBndrs" $ - vcat [ ppr fvs_with_dups, ppr fvs, ppr real_fvs ] + vcat [ ppr fvs_with_dups, ppr fvs, ppr implicit_vs ] ; loc <- getSrcSpanM - ; vars <- mapM (newLocalBndrRn . L loc . unLoc) real_fvs + ; vars <- mapM (newLocalBndrRn . L loc . unLoc) implicit_vs ; bindLocalNamesFV vars $ thing_inside vars } |