
I'm getting the errors below if I try to build tagged with head: src/Data/Tagged.hs:57:5: 'Tagged' is applied to too many type arguments In an expression type signature: Tagged k s b -> Tagged k s b -> Bool In the expression: ghc-prim:GHC.Prim.coerce ((==) :: b -> b -> Bool) :: Tagged k s b -> Tagged k s b -> Bool In an equation for '==': (==) = ghc-prim:GHC.Prim.coerce ((==) :: b -> b -> Bool) :: Tagged k s b -> Tagged k s b -> Bool src/Data/Tagged.hs:57:9: 'Tagged' is applied to too many type arguments In an expression type signature: Tagged k s b -> Tagged k s b -> Ordering In the expression: ghc-prim:GHC.Prim.coerce (compare :: b -> b -> Ordering) :: Tagged k s b -> Tagged k s b -> Ordering In an equation for 'compare': compare = ghc-prim:GHC.Prim.coerce (compare :: b -> b -> Ordering) :: Tagged k s b -> Tagged k s b -> Ordering src/Data/Tagged.hs:57:14: 'Tagged' is applied to too many type arguments In an expression type signature: (,) (Tagged k s b) (Tagged k s b) -> [] (Tagged k s b) In the expression: ghc-prim:GHC.Prim.coerce (range :: (,) b b -> [] b) :: (,) (Tagged k s b) (Tagged k s b) -> [] (Tagged k s b) In an equation for 'range': range = ghc-prim:GHC.Prim.coerce (range :: (,) b b -> [] b) :: (,) (Tagged k s b) (Tagged k s b) -> [] (Tagged k s b) src/Data/Tagged.hs:57:18: 'Tagged' is applied to too many type arguments In an expression type signature: Tagged k s b In the expression: ghc-prim:GHC.Prim.coerce (minBound :: b) :: Tagged k s b In an equation for 'minBound': minBound = ghc-prim:GHC.Prim.coerce (minBound :: b) :: Tagged k s b Line 57 is the "(" in newtype Tagged s b = Tagged { unTagged :: b } deriving ( Eq, Ord, Ix, Bounded #if __GLASGOW_HASKELL__ >= 707 , Typeable #endif ) Anyone any ideas what's going on? -E