Skip to content
  • Sebastian Graf's avatar
    Make `singleConstructor` cope with pattern synonyms · d236d9d0
    Sebastian Graf authored and Marge Bot's avatar Marge Bot committed
    Previously, `singleConstructor` didn't handle singleton `COMPLETE` sets
    of a single pattern synonym, resulting in incomplete pattern warnings
    in #15753.
    
    This is fixed by making `singleConstructor` (now named
    `singleMatchConstructor`) query `allCompleteMatches`, necessarily making
    it effectful. As a result, most of this patch is concerned with
    threading the side-effect through to `singleMatchConstructor`.
    
    Unfortunately, this is not enough to completely fix the original
    reproduction from #15753 and #15884, which are related to function
    applications in pattern guards being translated too conservatively.
    d236d9d0