
#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 nh2): Replying to [comment:3 simonmar]:
you wouldn't perhaps consider Phabricator instead? It's much easier to review code there
I will when I have it working and have some non-hacky commits; until then I prefer Github because it is much easier to update multi-commit patch series there than on Phab.
I'd be surprised if you can do that, we thought pretty hard about whether this was feasible and came to the conclusion that it probably wasn't, due to things like parallel builds, ghc --make needing to have unique supplies for multiple modules, and lazy I/O in the typechecker.
I'm not convinced either yet that it will work, and the `'r'` `UniqueSupply` in the global `--make` `HscEnv` is giving me some troubles at the current state, 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 that happens? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14769#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler