Illegal role name. [GHC-09009]
Language extension: RoleAnnotations
With the RoleAnnotations extension, type role annotations can be added to type or class declarations. These must be one of representational, nominal, or phantom.
Examples
Type roles should be one of representational, nominal, or phantom.
Type role annotations should be one of representational, nominal, or phantom. Fortunately as the choices are limited, GHC is smart enough to suggest which role you intended if a mistake is made.
Error Message
IllegalRole.hs:5:13: error:
Illegal role name ‘pantom’
Perhaps you meant ‘phantom’
|
5 | type role A pantom
| ^^^^^^
IllegalRole.hs
Before
{-# LANGUAGE RoleAnnotations #-}
module IllegalRole where
type role A pantom
data A a = A
After
{-# LANGUAGE RoleAnnotations #-}
module IllegalRole where
type role A phantom
data A a = A