Add regression test for #16946
authornineonine <mail4chemik@gmail.com>
Thu, 25 Jul 2019 18:13:20 +0000 (11:13 -0700)
committerMarge Bot <ben+marge-bot@smart-cactus.org>
Fri, 26 Jul 2019 13:49:51 +0000 (09:49 -0400)
testsuite/tests/typecheck/should_compile/T16946.hs [new file with mode: 0644]
testsuite/tests/typecheck/should_compile/all.T

diff --git a/testsuite/tests/typecheck/should_compile/T16946.hs b/testsuite/tests/typecheck/should_compile/T16946.hs
new file mode 100644 (file)
index 0000000..e824f7c
--- /dev/null
@@ -0,0 +1,12 @@
+{-# LANGUAGE RankNTypes, TypeFamilies, PolyKinds, FunctionalDependencies #-}
+module T16946 where
+
+import Data.Kind
+
+class CatMonad (c :: k -> k -> Type) (m :: forall (x :: k) (y :: k). c x y -> Type -> Type) | c -> m where
+  type Id c :: c x x
+
+  xpure :: a -> m (Id c) a
+
+boom :: forall k (c :: k -> k -> Type) (m :: forall (x :: k) (y :: k). c x y -> Type -> Type) a. CatMonad c m => a -> m (Id c) a
+boom = xpure
index 906ee4b..9e9d486 100644 (file)
@@ -684,3 +684,4 @@ test('UnlifNewUnify', normal, compile, [''])
 test('UnliftedNewtypesLPFamily', normal, compile, [''])
 test('UnliftedNewtypesDifficultUnification', normal, compile, [''])
 test('T16832', normal, ghci_script, ['T16832.script'])
+test('T16946', normal, compile, [''])