Implement specially-solved TagToEnum class
See #19915. Also implements #16989. Fixes #8318.
There are still several TODOs, and lots of missing documentation and tests. But it's coming along. Let's see what CI thinks so far.
TODOs:
-
Finish handling ExoticEnum
s inGHC.Core.Opt.ConstantFold
-
(Look into the example in Note [Ticks and mandatory eta expansion]
inGHC.CoreToStg.Prep
-
Add various test cases -
Add/update release notes and changelog entries -
Write up a CLC ticket -
Find/make a GHC ticket for DataToTag
/TagToEnum
instances in signature files
Edited by Matthew Craven