Skip to content

Superclass expansion fails in instance declaration

I'm sure I'm doing something very silly.

{-# LANGUAGE FlexibleInstances, UndecidableInstances #-}

module Bug where

class A a
class A a => B a
class A a => C a

instance B a => C a

GHC rejects, saying it can't prove A a, required in order to write the C a instance. But shouldn't my B a constraint imply A a?

Help?

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information