
#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.
Regarding the lazy I/O in the typechecker, could you point me at where
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? 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