Skip to content

Don't use absentError thunks for strict constructor fields

Simon Peyton Jones requested to merge wip/T19133 into master

This patch fixes #19133 (closed) by using LitRubbish for strict constructor fields, even if they are of lifted types. Previously LitRubbish worked only for unlifted (but boxed) types.

The change is very easy, although I needed a boolean field in LitRubbish to say whether or not it is lifted. (That seemed easier than giving it another type argument.

This is preparing for Andreas's work on establishing the invariant that strict constructor fields are always tagged and evaluated (see #16970 (closed)).

Meanwhile, nothing was actually wrong before, so there are no tests.

Merge request reports