
Hello, I have some code like this (the contents don't really matter): 42 data TestChain next = ChainEntry (forall b . TestG b) next 43 | ChainDescribe String (Free TestChain... 44 deriving (Functor) 45 46 -- deriving instance Show a => Show (TestChain a) 47 48 it :: (SomeT typ, Partition t typ) => String -> t -> ... 49 it desc test = liftF (ChainEntry (mkTestG test) ()) And get the error: Clean.hs:49:43: Could not deduce (t ~ b) from the context (SomeT typ, Partition t typ) bound by the type signature for it :: (SomeT typ, Partition t typ) => String -> t -> Free TestChain () at Clean.hs:49:1-51 `t' is a rigid type variable bound by the type signature for it :: (SomeT typ, Partition t typ) => String -> t -> Free TestChain () at Clean.hs:49:1 `b' is a rigid type variable bound by a type expected by the context: TestG b at Clean.hs:49:23 [...] In that last error line, should that not be "Clean.hs:42:..." (as it references the 'b', which I only really have there), or is that intended, and if yes, why? I'm using GHC 7.4.2. Thanks Niklas