
#12899: ghc panics at random places with -jX -------------------------------------+------------------------------------- Reporter: pacak | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.0.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by mpickering): For anyone not following along at home, the problem is that the `Unique`s were overflowing. The `UniqSupply` counter was reaching over 25 million but only 24 bits (around 17 million) were being used to store the uniques. This led to uniques being allocated multiple times. The failures were different each time because the overflow was only bad if it overflowed into the same label and then we relied on this unique at some point in compilation (to do an equality check for example). It was a coincidence that compiling with `-j1` didn't trigger these problems, it must have been the ordering these uniques were applied didn't cause terrible things like this to happen. Ben has produced a diff (D2844) which bumps the number of bits we use so hopefully this is never a problem again! -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12899#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler