diff options
author | Ben Gamari <bgamari.foss@gmail.com> | 2017-09-19 16:57:08 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2017-09-19 16:57:20 -0400 |
commit | bbb8cb92b66d83bb7d472e7905c84c28cbb0997c (patch) | |
tree | bed46af690f174b9e79a76b76341074ccd0bf614 /docs | |
parent | 022455ffcf01e950ec020f9873874e68fbf7c666 (diff) | |
download | haskell-bbb8cb92b66d83bb7d472e7905c84c28cbb0997c.tar.gz |
users-guide: Mention changes necessary due to #13391
Some variant of this should also be added to the migration guide.
[skip ci]
Test Plan: Read it
Reviewers: goldfire, austin
Reviewed By: goldfire
Subscribers: rwbarton, thomie
GHC Trac Issues: #13391
Differential Revision: https://phabricator.haskell.org/D3966
Diffstat (limited to 'docs')
-rw-r--r-- | docs/users_guide/8.4.1-notes.rst | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/docs/users_guide/8.4.1-notes.rst b/docs/users_guide/8.4.1-notes.rst index 2d03190663..9a1235f5a8 100644 --- a/docs/users_guide/8.4.1-notes.rst +++ b/docs/users_guide/8.4.1-notes.rst @@ -59,6 +59,24 @@ Language data StrictJust a <- Just !a where StrictJust !a = Just a +- GADTs with kind-polymorphic type arguments now require :ghc-flag:`TypeInType`. + For instance, consider the following, :: + + data G :: k -> * where + GInt :: G Int + GMaybe :: G Maybe + + In previous releases this would compile with :ghc-flag:`PolyKinds` alone due + to bug :ghc-ticket:`13391`. As of GHC 8.4, however, this requires + :ghc-flag:`TypeInType`. Note that since GADT kind signatures aren't generalized, + this will also require that you provide a :ref:`CUSK + <complete-kind-signatures>` by explicitly quantifying over the kind argument, + ``k``, :: + + data G :: forall k. k -> * where + GInt :: G Int + GMaybe :: G Maybe + Compiler ~~~~~~~~ |