... | ... | @@ -62,6 +62,16 @@ GHCi, version 8.2.1: http://www.haskell.org/ghc/ :? for help |
|
|
|
|
|
Note that `Foo`, a GADT, is *not* reified as a `GadtC`, whereas `Bar`, which is not a GADT, *is* reified as a `GadtC`. In GHC 8.4, this bug has been fixed, so as a result, `Foo` will be reified as a `GadtC`, but `Bar` will not be, as one would expect.
|
|
|
|
|
|
|
|
|
In accordance with the changes to GADT constructor type variable order (mentioned [ above](https://ghc.haskell.org/trac/ghc/wiki/Migration/8.4#TypevariableorderinGADTconstructors)), reified GADT constructors also now track the order in which users wrote type variables. Continuing the earlier example:
|
|
|
|
|
|
```
|
|
|
dataT a whereMkT:: forall b a. b ->T a
|
|
|
```
|
|
|
|
|
|
|
|
|
In earlier GHCs, reifying `MkT` would have yielded a type headed by `ForallC [PlainTV a, PlainTV b]`. Now, reifying `MkT` will give a type headed by `ForallC [PlainTV b, PlainTV a]`, as one would expect.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Library changes
|
... | ... | |