Dear Haskellers,

 

I had used some code which worked fine on GHC 6.4 and now it don’t compile on GHC 6.6.

Can anyone please give me some workarounds and/or explanations about these 2 errors?

 

instance InfoKind a b => InfoKind (Maybe a) b where

    blank = Nothing

    check n _ Nothing  = ["No info value stored with "++n]

    check n g (Just a) = check n g a

 

GHC complains that

Illegal instance declaration for `InfoKind (Maybe a) b'

        (the Coverage Condition fails for one of the functional dependencies)

    In the instance declaration for `InfoKind (Maybe a) b'

 

 

multiListViewGetTSelections :: MultiListView x () -> IO [x]

multiListViewGetTSelections multiListView =

 do { Just ((model, _) :: (Var [x], x -> String)) <- unsafeObjectGetClientData multiListView

    ; -- more and more code

    }

 

GHC complains that

    A pattern type signature cannot bind scoped type variables `x'

      unless the pattern has a rigid type context

    In the pattern: (model, _) :: (Var [x], x -> String)

 

I would really appreciate some help.

 

Best regards

Miguel Vilaça