[GHC] #8184: Compiler panic in the presence of cyclic imports

GHC ghc-devs at haskell.org
Thu Aug 29 16:07:10 UTC 2013


#8184: Compiler panic in the presence of cyclic imports
---------------------------------------+-----------------------------------
        Reporter:  parcs               |            Owner:
            Type:  bug                 |           Status:  new
        Priority:  normal              |        Milestone:
       Component:  Compiler            |          Version:  7.7
      Resolution:                      |         Keywords:
Operating System:  Unknown/Multiple    |     Architecture:
 Type of failure:  Compile-time crash  |  Unknown/Multiple
       Test Case:                      |       Difficulty:  Unknown
        Blocking:  910                 |       Blocked By:
                                       |  Related Tickets:
---------------------------------------+-----------------------------------

Comment (by parcs):

 I noticed a different but perhaps related discrepancy when compiling each
 module separately in one-shot mode:

 {{{
 $ rm *.hi *.hi-boot
 $ ghc-stage2 -O -c  B.hs-boot
 $ ghc-stage2 -O -c  A.hs
 $ ghc-stage2 -O -c  B.hs
 $ ghc-stage2 --show-iface B.hi
 ...
   $wthing :: forall a. GHC.Types.Int -> GHC.Types.Int -> a
     {- Arity: 2, HasNoCafRefs, Strictness: <B,U><B,U>b -}
 ...
   thing :: forall a. A.X -> a
     {- Arity: 1, HasNoCafRefs, Strictness: <B,1*U(1*U(U,U))>b,
        Inline: INLINE[0], Unfolding: Worker(ext): B.$wthing (arity 1) -}
 ...
 }}}

 The arity of `$wthing` is 1 according to the declaration of `thing`, but
 `$wthing`'s actual arity is 2.

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




More information about the ghc-tickets mailing list