T1133A.hs:6:28: Can't make a derived instance of ‛Enum X’: ‛X’ must be an enumeration type (an enumeration consists of one or more nullary, non-GADT constructors) Try -XGeneralizedNewtypeDeriving for GHC's newtype-deriving extension In the newtype declaration for ‛X’