summaryrefslogtreecommitdiff
path: root/testsuite/tests/warnings
diff options
context:
space:
mode:
authorSebastian Graf <sebastian.graf@kit.edu>2020-11-18 10:29:25 +0100
committerMarge Bot <ben+marge-bot@smart-cactus.org>2020-11-18 23:38:40 -0500
commit8150f6546e6fd0006252e245d5697f13ffd8ce3e (patch)
treeacaeb469600a942f0541b94485e4587caba198d8 /testsuite/tests/warnings
parent52114fa0f97805d4c4924bc3abce1a8b0fc7a5c6 (diff)
downloadhaskell-8150f6546e6fd0006252e245d5697f13ffd8ce3e.tar.gz
PmCheck: Print types of uncovered patterns (#18932)
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.
Diffstat (limited to 'testsuite/tests/warnings')
-rw-r--r--testsuite/tests/warnings/should_fail/WerrorFail.stderr3
-rw-r--r--testsuite/tests/warnings/should_fail/WerrorFail2.stderr2
2 files changed, 3 insertions, 2 deletions
diff --git a/testsuite/tests/warnings/should_fail/WerrorFail.stderr b/testsuite/tests/warnings/should_fail/WerrorFail.stderr
index 8b96c483f7..03e93567bc 100644
--- a/testsuite/tests/warnings/should_fail/WerrorFail.stderr
+++ b/testsuite/tests/warnings/should_fail/WerrorFail.stderr
@@ -1,4 +1,5 @@
WerrorFail.hs:6:1: error: [-Wincomplete-patterns (in -Wextra), -Werror=incomplete-patterns]
Pattern match(es) are non-exhaustive
- In an equation for ‘foo’: Patterns not matched: Just _
+ In an equation for ‘foo’:
+ Patterns of type ‘Maybe a’ not matched: Just _
diff --git a/testsuite/tests/warnings/should_fail/WerrorFail2.stderr b/testsuite/tests/warnings/should_fail/WerrorFail2.stderr
index afbcd61374..66e99b9bbb 100644
--- a/testsuite/tests/warnings/should_fail/WerrorFail2.stderr
+++ b/testsuite/tests/warnings/should_fail/WerrorFail2.stderr
@@ -4,7 +4,7 @@ WerrorFail2.hs:15:1: warning: [-Wmissing-signatures (in -Wall)]
WerrorFail2.hs:15:10: error: [-Wincomplete-patterns (in -Wextra), -Werror=incomplete-patterns]
Pattern match(es) are non-exhaustive
- In a case alternative: Patterns not matched: C2 _
+ In a case alternative: Patterns of type ‘S’ not matched: C2 _
WerrorFail2.hs:19:1: warning: [-Wmissing-signatures (in -Wall)]
Top-level binding with no type signature: printRec :: IO ()