Role annotations without -XRoleAnnotations.
This package is intended to ease the transition from GHC 7.6.3- to GHC 7.8+ by providing a backward-compatible role annotation syntax. The module Language.Haskell.RoleAnnots exports backward-compatible declarations usable to assign stricter roles to declarations. Proper role annotations are preferred, but these work, too. The module Language.Haskell.RoleAnnots.Check provides a way to check that a datatype has a set of desired roles. This might be suitable for use in a testsuite. See the module documentation for details. Note that this package works only with GHC 7.4 and up, because it depends on the -XPolyKinds extension. If you need backward compatibility before 7.4, then please look at the source code and adapt the definitions to the kinds of the variables in your program.
no-role-annots
This package is intended to ease the transition from GHC 7.6.3- to GHC 7.8+ by providing a backward-compatible role annotation syntax. The module Language.Haskell.RoleAnnots
exports backward-compatible declarations usable to assign stricter roles to declarations. Proper role annotations are preferred, but these work, too.
The module Language.Haskell.RoleAnnots.Check
provides a way to check that a datatype has a set of desired roles. This might be suitable for use in a testsuite.
See the module documentation for details.