#5736: Possible regression with functional dependencies
------------------------------+---------------------------------------------
 Reporter:  magnus            |          Owner:                         
     Type:  bug               |         Status:  new                    
 Priority:  normal            |      Component:  Compiler (Type checker)
  Version:  7.2.1             |       Keywords:                         
       Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple       
  Failure:  None/Unknown      |       Testcase:                         
Blockedby:                    |       Blocking:                         
  Related:                    |  
------------------------------+---------------------------------------------
 The following program typechecks in GHC-7.0.4, but not in 6.12.3, 7.2.2 or
 7.5.20111229:

 {{{
 {-# LANGUAGE FunctionalDependencies, MultiParamTypeClasses,
   FlexibleInstances, UndecidableInstances, TypeFamilies #-}

 class C a b | a -> b where
   c :: a -> b

 instance C b b where
   c = undefined

 instance C Bool b where
   c = undefined

 m :: Int
 m = c True
 }}}

 7.5.20111229 says

 {{{
     Couldn't match type `Bool' with `Int'
     When using functional dependencies to combine
       C b b,
         arising from the dependency `a -> b'
         in the instance declaration at Test.hs:7:10
       C Bool Int, arising from a use of `c' at Test.hs:14:5
     In the expression: c True
     In an equation for `m': m = c True
 }}}

 Was I just lucky that this worked in 7.0.4, or is it a true regression?

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

_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to