toEnum package:ghc-lib-parser
TcRnTagToEnumMissingValArg is an error that occurs when the
'tagToEnum#' function is not applied to a single value argument.
Example(s): tagToEnum# 1 2
Test cases: None
TcRnTagToEnumResTyNotAnEnum is an error that occurs when the
'tagToEnum#' function is given a result type that is not an
enumeration type.
Example(s): foo :: Int -- not an enumeration TyCon foo = tagToEnum# 0#
Test cases: typecheckshould_failtcfail164
TcRnTagToEnumResTyTypeData is an error that occurs when the
'tagToEnum#' function is given a result type that is headed by a
type data type, as the data constructors of a type
data do not exist at the term level.
Example(s): type data Letter = A | B | C
foo :: Letter foo = tagToEnum# 0#
Test cases: type-datashould_failTDTagToEnum.hs
TcRnTagToEnumUnspecifiedResTy is an error that occurs when the
'tagToEnum#' function is not given a concrete result type.
Example(s): foo :: forall a. a foo = tagToEnum# 0#
Test cases: typecheckshould_failtcfail164