[GHC] #15345: Duplication between `CoreSubst` and `SimplEnv` is very unfortunate
GHC
ghc-devs at haskell.org
Thu Jul 5 16:35:22 UTC 2018
#15345: Duplication between `CoreSubst` and `SimplEnv` is very unfortunate
-------------------------------------+-------------------------------------
Reporter: mpickering | Owner: (none)
Type: task | Status: new
Priority: normal | Milestone: 8.6.1
Component: Compiler | Version: 8.4.3
Keywords: | Operating System: Unknown/Multiple
Architecture: | Type of failure: None/Unknown
Unknown/Multiple |
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
There are lots of very similar functions in `SimplEnv` and `CoreSubst`.
For example, in `SimpleEnv` there is a function `substIdType` and likewise
in `CoreSubst` but they are different to each other.
There is also a `substIdBndr` function in both modules but the one in
`SimplEnv` calls `SimpleEnv.substIdType`, the one in `CoreSubst` doesn't
call `CoreSubst.substIdType` but has its own inlined version. This means
there's at least three different versions of `substIdType` floating
around.
The correctness of this function is crucial so it would be better not to
duplicate it.
Can we remove this duplication? Help me Simon!
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15345>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list