Skip to content
  • Sebastian Graf's avatar
    Rubbish literals for all representations (#18983) · 57d21e6a
    Sebastian Graf authored and Marge Bot's avatar Marge Bot committed
    This patch cleans up the complexity around WW's `mk_absent_let` by
    broadening the scope of `LitRubbish`. Rubbish literals now store the
    `PrimRep` they represent and are ultimately lowered in Cmm.
    This in turn allows absent literals of `VecRep` or `VoidRep`. The latter
    allows absent literals for unlifted coercions, as requested in #18983.
    
    I took the liberty to rewrite and clean up `Note [Absent fillers]` and
    `Note [Rubbish values]` to account for the new implementation and to
    make them more orthogonal in their description.
    
    I didn't add a new regression test, as `T18982` already contains the
    test in the ticket and its test output changes as expected.
    
    Fixes #18983.
    57d21e6a