id,summary,reporter,owner,description,type,status,priority,milestone,component,version,resolution,keywords,cc,os,architecture,failure,difficulty,testcase,blockedby,blocking,related
2639,"Core lint failure with type families, data families, and typeclasses",ryani,chak,"I haven't been able to shrink this case smaller and still fail core lint.

{{{
{-# LANGUAGE TypeFamilies, EmptyDataDecls #-}
module CoreLint where

data Eps

data family Work a v
data instance Work Eps v = Eps v

type family Dual a
type instance Dual Eps = Eps

class Connect s where
    connect :: (Dual s ~ c, Dual c ~ s) => Work s a -> Work c b -> (a,b)

instance Connect Eps where
    connect (Eps a) (Eps b) = (a,b)
}}}

Output from ghc -dcore-lint is attached
",bug,closed,normal,6.10.1,Compiler,6.9,fixed,,,Unknown/Multiple,Unknown/Multiple,,Unknown,T2639,,,
