diff options
Diffstat (limited to 'testsuite/tests/typecheck')
-rw-r--r-- | testsuite/tests/typecheck/should_fail/T13677.hs | 11 | ||||
-rw-r--r-- | testsuite/tests/typecheck/should_fail/T13677.stderr | 4 | ||||
-rw-r--r-- | testsuite/tests/typecheck/should_fail/all.T | 1 |
3 files changed, 16 insertions, 0 deletions
diff --git a/testsuite/tests/typecheck/should_fail/T13677.hs b/testsuite/tests/typecheck/should_fail/T13677.hs new file mode 100644 index 0000000000..f452a202bb --- /dev/null +++ b/testsuite/tests/typecheck/should_fail/T13677.hs @@ -0,0 +1,11 @@ +{-# LANGUAGE ConstraintKinds #-} +{-# LANGUAGE GADTs #-} +module T13677 where + +import GHC.Exts (Constraint) + +data Dict a where + Dict :: a => Dict a + +foo :: Dict (Int ~ Int) => Int +foo = undefined diff --git a/testsuite/tests/typecheck/should_fail/T13677.stderr b/testsuite/tests/typecheck/should_fail/T13677.stderr new file mode 100644 index 0000000000..c29aba248e --- /dev/null +++ b/testsuite/tests/typecheck/should_fail/T13677.stderr @@ -0,0 +1,4 @@ + +T13677.hs:10:8: error: + • Expected a constraint, but ‘Dict (Int ~ Int)’ has kind ‘*’ + • In the type signature: foo :: Dict (Int ~ Int) => Int diff --git a/testsuite/tests/typecheck/should_fail/all.T b/testsuite/tests/typecheck/should_fail/all.T index 4a409e092d..3875063917 100644 --- a/testsuite/tests/typecheck/should_fail/all.T +++ b/testsuite/tests/typecheck/should_fail/all.T @@ -438,3 +438,4 @@ test('T13506', normal, compile_fail, ['']) test('T13611', expect_broken(13611), compile_fail, ['']) test('T13320', normal, compile_fail, ['']) test('T13640', normal, compile_fail, ['']) +test('T13677', normal, compile_fail, ['']) |