[GHC] #9739: GHC 7.8 chokes on recursive classes

GHC ghc-devs at haskell.org
Wed Oct 29 00:27:59 UTC 2014


#9739: GHC 7.8 chokes on recursive classes
-------------------------------------+-------------------------------------
       Reporter:  bitonic            |                   Owner:
           Type:  bug                |                  Status:  new
       Priority:  normal             |               Milestone:
      Component:  Compiler (Type     |                 Version:  7.8.3
  checker)                           |        Operating System:
       Keywords:                     |  Unknown/Multiple
   Architecture:  Unknown/Multiple   |         Type of failure:
     Difficulty:  Unknown            |  None/Unknown
     Blocked By:                     |               Test Case:
Related Tickets:                     |                Blocking:
                                     |  Differential Revisions:
-------------------------------------+-------------------------------------
 Type checking this makes GHC 7.8.3 loop:

 {{{#!hs
 {-# LANGUAGE MultiParamTypeClasses #-}
 module Foo where

 class Class3 a => Class1 a where

 class Class2 t a where
   class2 :: (Class3 t) => a -> m

 class (Class1 t, Class2 t t) => Class3 t where
 }}}

 Does not happen in 7.6.3.

 I think it's something to do with the `Class3` constraint appearing in
 `class2`.

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


More information about the ghc-tickets mailing list