diff options
Diffstat (limited to 'testsuite/tests/deriving/should_fail/drvfail009.hs')
-rw-r--r-- | testsuite/tests/deriving/should_fail/drvfail009.hs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/testsuite/tests/deriving/should_fail/drvfail009.hs b/testsuite/tests/deriving/should_fail/drvfail009.hs new file mode 100644 index 0000000000..06155c38a1 --- /dev/null +++ b/testsuite/tests/deriving/should_fail/drvfail009.hs @@ -0,0 +1,20 @@ +{-# LANGUAGE GeneralizedNewtypeDeriving, MultiParamTypeClasses #-} + +-- Various newtype-deriving failures + +module ShouldFail where + + +class C a b + +newtype T1 = T1 Int deriving( C ) + -- Wrong arity + +newtype T2 = T2 Int deriving( Monad ) + -- Type constructor has wrong kind + +newtype T3 a = T3 Int deriving( Monad ) + -- Rep type has wrong kind + +newtype T4 a = T4 (Either a a) deriving( Monad ) + -- Eta fails |