[GHC] #9562: Type families + hs-boot files = unsafeCoerce

GHC ghc-devs at haskell.org
Fri May 1 18:42:29 UTC 2015


#9562: Type families + hs-boot files = unsafeCoerce
-------------------------------------+-------------------------------------
        Reporter:  goldfire          |                   Owner:  ezyang
            Type:  bug               |                  Status:  new
        Priority:  high              |               Milestone:
       Component:  Compiler          |                 Version:  7.8.3
      Resolution:                    |                Keywords:
Operating System:  Unknown/Multiple  |            Architecture:
 Type of failure:  GHC accepts       |  Unknown/Multiple
  invalid program                    |               Test Case:
      Blocked By:                    |                Blocking:
 Related Tickets:  #10270            |  Differential Revisions:
-------------------------------------+-------------------------------------

Comment (by ezyang):

 Some clarifications:

 1. It would appear that we always do GhcMake dependency analysis when
 linking (there does not seem to be a way to feed GHC a list of object
 files to link together and coax it to skip linking), so it is sufficient
 to check that some correctness condition applies to boot files in the
 import graph.

 2. If B is imported by another module which is not used by anyone, this
 will not cause the overlap check to find the overlap.  So the condition
 is, more accurately, for each boot file, the implementing file must be
 transitively imported from the root of the module graph.

 I'm pretty sure (1) is easiest to implement.

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9562#comment:8>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list