Skip to content
  • Sebastian Graf's avatar
    PmCheck: Print types of uncovered patterns (#18932) · 8150f654
    Sebastian Graf authored and Marge Bot's avatar Marge Bot committed
    In order to avoid confusion as in #18932, we display the type of the
    match variables in the non-exhaustiveness warning, e.g.
    
    ```
    T18932.hs:14:1: warning: [-Wincomplete-patterns]
        Pattern match(es) are non-exhaustive
        In an equation for ‘g’:
            Patterns of type  ‘T a’, ‘T a’, ‘T a’ not matched:
                (MkT2 _) (MkT1 _) (MkT1 _)
                (MkT2 _) (MkT1 _) (MkT2 _)
                (MkT2 _) (MkT2 _) (MkT1 _)
                (MkT2 _) (MkT2 _) (MkT2 _)
                ...
       |
    14 | g (MkT1 x) (MkT1 _) (MkT1 _) = x
       | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ```
    
    It also allows us to omit the type signature on wildcard matches which
    we previously showed in only some situations, particularly
    `-XEmptyCase`.
    
    Fixes #18932.
    8150f654