id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	os	architecture	failure	difficulty	testcase	blockedby	blocking	related
6066	Constraint Kinds don't work with Template Haskell	sseverance		"If I have a record with a constraint kind that has multiple constraints such as:

{{{
type MyConstraint a = (Show a, Eq a, Typeable a)
data MyConstraint a => MyType a =  MyType {
  someField :: a
}
}}}

If I try to use template haskell on the type (in my case mkLabels from fclabels) you get the following error:  Can't represent tuple predicates in Template Haskell: MyConstraint a

Complete Repro Case:

{{{
{-# LANGUAGE ConstraintKinds #-}
{-# LANGUAGE DatatypeContexts #-}
{-# LANGUAGE ExistentialQuantification #-}
{-# LANGUAGE TemplateHaskell #-}

import Data.Label
import Data.Typeable

type MyConstraint a = (Show a, Eq a, Typeable a)

data MyConstraint a => MyType a = MyType {
  myField :: a
} deriving (Show, Eq)

mkLabels [''MyType]
}}}"	bug	closed	normal		Compiler	7.4.1	duplicate			Unknown/Multiple	Unknown/Multiple	None/Unknown					
