[GHC] #14769: The RecompBecause [TH] check is not resume-build-safe
GHC
ghc-devs at haskell.org
Fri Feb 23 14:33:34 UTC 2018
#14769: The RecompBecause [TH] check is not resume-build-safe
-------------------------------------+-------------------------------------
Reporter: nh2 | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 8.2.2
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Incorrect result | Unknown/Multiple
at runtime | Test Case:
Blocked By: | Blocking:
Related Tickets: #481 | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by simonmar):
> but so far I haven't found a reason why maintaining an independent
"seed" for each module (as we know all modules ahead of time in a --make
invocation) wouldn't cover at least the cases of multiple modules and -j.
But what are those seeds? The unique supply for each module would need to
generate uniques that are
- different from those in every other module
- the same each time you compile this module
So it seems like the uniques would have to be qualifed by the
module/package names somehow. Or did you have some other idea in mind?
> Regarding the lazy I/O in the typechecker, could you point me at where
that happens?
Look at `TcRnMonad.forkM_maybe`.
If you solved the seed problem (above) then the same solution could be
applied to unique supplies for imported modules which would also solve the
lazy I/O problem, but it's still not clear to me how you do this.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14769#comment:6>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list