... | @@ -72,6 +72,21 @@ f=Proxy |
... | @@ -72,6 +72,21 @@ f=Proxy |
|
|
|
|
|
Despite the fact that `k` is used as both a type and kind variable. This is now an error unless `PolyKinds` is explicitly enabled.
|
|
Despite the fact that `k` is used as both a type and kind variable. This is now an error unless `PolyKinds` is explicitly enabled.
|
|
|
|
|
|
|
|
### `UndecidableInstances` is pickier
|
|
|
|
|
|
|
|
|
|
|
|
GHC now requires the `UndecidableInstances` extension in order to allow type family applications in instance contexts, as in the following code:
|
|
|
|
|
|
|
|
```
|
|
|
|
{-# LANGUAGE ConstraintKinds #-}{-# LANGUAGE FlexibleContexts #-}{-# LANGUAGE FlexibleInstances #-}{-# LANGUAGE TypeFamilies #-}importData.KindtypefamilyF a ::ConstraintclassC a where{-
|
|
|
|
Will error without UndecidableInstances:
|
|
|
|
|
|
|
|
• Illegal nested constraint ‘F a’
|
|
|
|
(Use UndecidableInstances to permit this)
|
|
|
|
• In the instance declaration for ‘C [[a]]’
|
|
|
|
-}instanceF a =>C[[a]]
|
|
|
|
```
|
|
|
|
|
|
---
|
|
---
|
|
|
|
|
|
## Library changes
|
|
## Library changes
|
... | | ... | |