summaryrefslogtreecommitdiff
path: root/testsuite/tests/typecheck/should_fail/T15807.hs
diff options
context:
space:
mode:
authormynguyen <mnguyen1@brynmawr.edu>2018-12-18 11:52:26 -0500
committerRichard Eisenberg <rae@cs.brynmawr.edu>2019-01-03 08:57:32 -0500
commit17bd163566153babbf51adaff8397f948ae363ca (patch)
treeef25e933481def276de4cdcad77eb4a34a76444b /testsuite/tests/typecheck/should_fail/T15807.hs
parent6e4e63764aaf558cf177c2a9c2da345b2a360ea6 (diff)
downloadhaskell-17bd163566153babbf51adaff8397f948ae363ca.tar.gz
Visible kind application
Summary: This patch implements visible kind application (GHC Proposal 15/#12045), as well as #15360 and #15362. It also refactors unnamed wildcard handling, and requires that type equations in type families in Template Haskell be written with full type on lhs. PartialTypeSignatures are on and warnings are off automatically with visible kind application, just like in term-level. There are a few remaining issues with this patch, as documented in ticket #16082. Includes a submodule update for Haddock. Test Plan: Tests T12045a/b/c/TH1/TH2, T15362, T15592a Reviewers: simonpj, goldfire, bgamari, alanz, RyanGlScott, Iceland_jack Subscribers: ningning, Iceland_jack, RyanGlScott, int-index, rwbarton, mpickering, carter GHC Trac Issues: `#12045`, `#15362`, `#15592`, `#15788`, `#15793`, `#15795`, `#15797`, `#15799`, `#15801`, `#15807`, `#15816` Differential Revision: https://phabricator.haskell.org/D5229
Diffstat (limited to 'testsuite/tests/typecheck/should_fail/T15807.hs')
-rw-r--r--testsuite/tests/typecheck/should_fail/T15807.hs12
1 files changed, 12 insertions, 0 deletions
diff --git a/testsuite/tests/typecheck/should_fail/T15807.hs b/testsuite/tests/typecheck/should_fail/T15807.hs
new file mode 100644
index 0000000000..fa121d608e
--- /dev/null
+++ b/testsuite/tests/typecheck/should_fail/T15807.hs
@@ -0,0 +1,12 @@
+{-# Language RankNTypes #-}
+{-# Language TypeApplications #-}
+{-# Language PolyKinds #-}
+{-# Language GADTs #-}
+
+module T15807 where
+import Data.Kind
+
+data
+ App :: forall (f :: k -> Type). k -> Type
+ where
+ MkApp :: f a -> App @f a