[GHC] #14481: Mutually dependent modules with orphan instances causes missing symbols with single-shot compilation

GHC ghc-devs at haskell.org
Sat Nov 18 01:05:53 UTC 2017


#14481: Mutually dependent modules with orphan instances causes missing symbols
with single-shot compilation
-------------------------------------+-------------------------------------
        Reporter:  bgamari           |                Owner:  (none)
            Type:  bug               |               Status:  closed
        Priority:  normal            |            Milestone:  8.4.1
       Component:  Compiler (Type    |              Version:  8.2.1
  checker)                           |
      Resolution:  invalid           |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #14482            |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by bgamari):

 There may be more bugs along the lines of #14482. In general we require
 that hs-boot files are compiled before hs files. However, we aren't very
 good at checking this in single-shot mode. `tcHiBootIface` makes something
 of an attempt, but the logic there will fail if the compiler hasn't seen
 any SOURCE imports of the module being compiled (since the module will
 have no entry in `eps_is_boot`, leading `tcHiBootIface` to conclude that
 the module simply has no boot file).

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


More information about the ghc-tickets mailing list