Use (fixed_lev = True) in mkDataTyConRhs
This seems to be either a one-line mistake or very confusing documentation.
All use sites of this function make classes (so the result kind Constraint
is monomorphic) except GHC.Builtin.Types.pcTyCon
, which explicitly assumes no kind polymorphism.