TTG: Pull AbsBinds and ABExport out of the main AST
This PR is one of the two parts of the TTG refactor started in !4782 (closed) by @Ericson2314, who has also helped me here.
It's a refactor of AbsBinds
and ABExport
independent of HsBracket
(which remains unchanged in this commit).
TTG Pull AbsBinds and ABExport out of the main AST
AbsBinds and ABExport both depended on the typechecker, and were thus
removed from the main AST Expr.
CollectPass now has a new function `collectXXHsBindsLR` used for the new
HsBinds extension point
Bumped haddock submodule to work with AST changes.
The removed Notes from Language.Haskell.Syntax.Binds were duplicated
(and not referenced) and the copies in GHC.Hs.Binds are kept (and
referenced there). (See #19252)
Fix up Note [Bind free vars]
Move GHC-specific comments from Language.Haskell.Syntax.Binds to
GHC.Hs.Binds
It looks like the Note was deleted but there were actually two copies of
it. L.H.S.B no longer references it, and GHC.Hs.Binds keeps an updated
copy. (See #19252)
There are other duplicated notes -- they will be fixed in the next
commit