summaryrefslogtreecommitdiff
path: root/testsuite/tests/polykinds
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/tests/polykinds')
-rw-r--r--testsuite/tests/polykinds/T11399.hs4
-rw-r--r--testsuite/tests/polykinds/T11399.stderr7
-rw-r--r--testsuite/tests/polykinds/T14172.stderr8
-rw-r--r--testsuite/tests/polykinds/T14846.stderr8
-rw-r--r--testsuite/tests/polykinds/T9017.stderr8
5 files changed, 19 insertions, 16 deletions
diff --git a/testsuite/tests/polykinds/T11399.hs b/testsuite/tests/polykinds/T11399.hs
index 56f3c11ef7..ffa3848dc6 100644
--- a/testsuite/tests/polykinds/T11399.hs
+++ b/testsuite/tests/polykinds/T11399.hs
@@ -8,3 +8,7 @@ newtype UhOh (k :: * -> *) (a :: k *) = UhOh (k *)
-- UhOh :: forall (k : * -> *). k * -> *
instance Functor a => Functor (UhOh a) where
+
+{- Functor expects (* -> *)
+ (UhOh a) :: k * -> *
+-} \ No newline at end of file
diff --git a/testsuite/tests/polykinds/T11399.stderr b/testsuite/tests/polykinds/T11399.stderr
index a3baab2378..d8a6c83ecb 100644
--- a/testsuite/tests/polykinds/T11399.stderr
+++ b/testsuite/tests/polykinds/T11399.stderr
@@ -1,9 +1,6 @@
-T11399.hs:10:32: error: [GHC-18872]
- • Couldn't match kind ‘*’ with ‘GHC.Types.RuntimeRep’
- When matching kinds
- a :: * -> *
- TYPE :: GHC.Types.RuntimeRep -> *
+T11399.hs:10:32: error: [GHC-83865]
+ • Couldn't match kind ‘*’ with ‘GHC.Types.LiftedRep’
Expected kind ‘* -> *’, but ‘UhOh a’ has kind ‘a (*) -> *’
• In the first argument of ‘Functor’, namely ‘(UhOh a)’
In the instance declaration for ‘Functor (UhOh a)’
diff --git a/testsuite/tests/polykinds/T14172.stderr b/testsuite/tests/polykinds/T14172.stderr
index 45ff51c259..df3868fb6c 100644
--- a/testsuite/tests/polykinds/T14172.stderr
+++ b/testsuite/tests/polykinds/T14172.stderr
@@ -12,9 +12,11 @@ T14172.hs:7:46: error: [GHC-88464]
traverseCompose :: (a -> f b) -> g a -> f (h _)
T14172.hs:8:19: error: [GHC-25897]
- • Couldn't match type ‘h’ with ‘Compose f'0 g'0’
- arising from a use of ‘_Wrapping’
- ‘h’ is a rigid type variable bound by
+ • Couldn't match type ‘a’ with ‘g'1 a'0’
+ Expected: (f'0 a -> f (f'0 b)) -> g a -> f (h a')
+ Actual: (Unwrapped (Compose f'0 g'1 a'0) -> f (Unwrapped (h a')))
+ -> Compose f'0 g'1 a'0 -> f (h a')
+ ‘a’ is a rigid type variable bound by
the inferred type of
traverseCompose :: (a -> f b) -> g a -> f (h a')
at T14172.hs:7:1-47
diff --git a/testsuite/tests/polykinds/T14846.stderr b/testsuite/tests/polykinds/T14846.stderr
index 2959f7669a..5b8ca76084 100644
--- a/testsuite/tests/polykinds/T14846.stderr
+++ b/testsuite/tests/polykinds/T14846.stderr
@@ -5,8 +5,8 @@ T14846.hs:38:8: error: [GHC-25897]
Actual: Hom riki a a
‘ríki’ is a rigid type variable bound by
the type signature for:
- i :: forall {k4} {k5} {cls2 :: k5 -> Constraint} (xx :: k4)
- (a :: Struct cls2) (ríki :: Struct cls2 -> Struct cls2 -> *).
+ i :: forall {k4} {k5} {cls1 :: k5 -> Constraint} (xx :: k4)
+ (a :: Struct cls1) (ríki :: Struct cls1 -> Struct cls1 -> *).
StructI xx a =>
ríki a a
at T14846.hs:38:8-48
@@ -23,8 +23,8 @@ T14846.hs:38:8: error: [GHC-25897]
In the instance declaration for ‘Category (Hom riki)’
T14846.hs:39:44: error: [GHC-25897]
- • Couldn't match kind ‘k3’ with ‘Struct cls2’
- Expected kind ‘Struct cls2 -> Constraint’,
+ • Couldn't match kind ‘k3’ with ‘Struct cls1’
+ Expected kind ‘Struct cls1 -> Constraint’,
but ‘cls’ has kind ‘k3 -> Constraint’
‘k3’ is a rigid type variable bound by
the instance declaration
diff --git a/testsuite/tests/polykinds/T9017.stderr b/testsuite/tests/polykinds/T9017.stderr
index 3ee1032c0a..f89e54a249 100644
--- a/testsuite/tests/polykinds/T9017.stderr
+++ b/testsuite/tests/polykinds/T9017.stderr
@@ -1,12 +1,12 @@
T9017.hs:8:7: error: [GHC-25897]
- • Couldn't match kind ‘k2’ with ‘*’
+ • Couldn't match kind ‘k1’ with ‘*’
When matching types
- a0 :: * -> * -> *
- a :: k1 -> k2 -> *
+ b0 :: *
+ b :: k1
Expected: a b (m b)
Actual: a0 b0 (m0 b0)
- ‘k2’ is a rigid type variable bound by
+ ‘k1’ is a rigid type variable bound by
the type signature for:
foo :: forall {k1} {k2} (a :: k1 -> k2 -> *) (b :: k1)
(m :: k1 -> k2).