WIP: Fix #13363
The pattern match checker doesn't handle pattern synonyms (yet); it
just regards them as additional data constructors. But that's wrong
from the perspective of redudancy checking: A match on a pattern synonym
will always lead to an overlap warning, because the mismatch case in
ConCon
will always return NotCovered
, which is unsound.
The proper conservative approximation is to return Covered
whenever we
mismatched against a pattern synonym.
Edited by Ben Gamari