
#15038: Memory Corruption (strange closure type) -------------------------------------+------------------------------------- Reporter: andrewthad | Owner: (none) Type: bug | Status: patch Priority: highest | Milestone: 8.6.1 Component: Compiler | Version: 8.4.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: Runtime crash | Test Case: Blocked By: | Blocking: Related Tickets: #9718 | Differential Rev(s): Phab:D4652 Wiki Page: | -------------------------------------+------------------------------------- Comment (by simonpj):
I also realized that unarise uses absentError wrong: absentError expects an Addr# argument (for a string that represents the "absent" argument) but unarise just uses absentError without an argument. So there's also a type error.
I think your patch is to fix this problem. But I see nothing about giving it an argument of the right type ... I see stuff about not giving it an argument at all for some reason; and strange stable pointers. If we are going to fix #9718, how much of this do we need? Perhaps very little? At least, if there's 1. something that is necessary regardless; and 2. something that's a temporary sticking plaster to deal with the absence of #9718 then let's keep them separate so we can revert (2) when we get #9718. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15038#comment:28 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler