ekmett / free

free monads
http://hackage.haskell.org/package/free
Other
161 stars 65 forks source link

Use `Eq1` in context heads. #148

Closed phadej closed 7 years ago

phadej commented 7 years ago

When building with GHC-8.1.2017xxxx

[14 of 19] Compiling Control.Monad.Trans.Free.Church ( src/Control/Monad/Trans/Free/Church.hs, /home/ogre/Documents/kmettverse/dist-newstyle/build/x86_64-linux/ghc-8.1.20170123/free-5/build/Control/Monad/Trans/Free/Church.o )

src/Control/Monad/Trans/Free/Church.hs:83:10: warning: [-Wsimplifiable-class-constraints]
    The constraint ‘Eq (FreeT f m a)’ matches an instance declaration
    instance [safe] (Data.Functor.Classes.Eq1 f,
                     Data.Functor.Classes.Eq1 m, Eq a) =>
                    Eq (FreeT f m a)

We should rewrite those instances too, to use lifted classes, shouldn't we?

RyanGlScott commented 7 years ago

Ack, I somehow never noticed that before. Yeah, we should definitely replace that with a lifted class approach.