Cannot parse unsaturated unboxed sum types
To my surprise, GHC does not parse the type (# | | #)
. I expected this to be the unboxed 3-sum, of kind TYPE rep1 -> TYPE rep2 -> TYPE rep3 -> TYPE (SumRep [rep1, rep2, rep3])
. I suppose this isn't a bug, per se, as the manual does not suggest GHC would parse this. But it is very odd that there is no way to say this, short of $( return (UnboxedSumT 3) )
(which does work fine).