-
These packages in particular were harshly affected by changes to Template Haskell introduced in GHC 8.8, so they need a bit of surgery in certain places in order to be made to compile. Some particulars: * GHC 8.8 changes the API for `TySynInstD`, `TySynEqn`, `DataInstD`, `NewtypeInstD`, and `RuleP`, so I had to add quite a bit of CPP to `th-desugar` to make everything work on 8.8. (Refer to the original commit that I took this patch from, https://github.com/goldfirere/th-desugar/commit/9b9a6f0bdb6becd3f5ae896ddb539069131f7ba0, for the full story.) * Due to [GHC Trac #16133](https://ghc.haskell.org/trac/ghc/ticket/16133) being fixed, `singletons`-generated code now requires explicitly enabling the `TypeApplications` extension. (The generated code was always using `TypeApplications` under the hood, but it's only now that GHC is detecting it.) * In `singletons`, some local definitions now require explicit type signatures due to changes in kind generalization brought about in GHC 8.8. In addition, I had to tweak the generated code slightly to avoid harmful kind generalization in certain spots. I've included the lengthu `Note` from the original patch that I adapted this one on (in https://github.com/goldfirere/singletons/commit/ccd61699716be9eac1f753383965b94a2023db5a) in case you want the full, gory details.
6f2c86bd