Fix #15450 by refactoring checkEmptyCase'
[ghc.git] / testsuite / tests / pmcheck / should_compile / all.T
1
2 # Tests for pattern match checker (coverage and exhaustiveness)
3
4 # Just do the normal way...
5 def f( name, opts ):
6   opts.only_ways = ['normal']
7
8 setTestOpts(f)
9
10 # Bug reports / feature requests
11 test('T2006', [], compile,
12      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
13 test('T2204', [], compile,
14      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
15 test('T3078', [], compile,
16      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
17 test('T322', [], compile,
18      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
19 test('T366', [], compile,
20      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
21 test('T3927a', [], compile,
22      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
23 test('T3927b', [], compile,
24      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
25 test('T3927', [], compile,
26      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
27 test('T4139', [], compile,
28      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
29 test('T6124', [], compile,
30      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
31 test('T7669a', [], compile,
32      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
33 test('T8970', [], compile,
34      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
35 test('T9951b', [], compile,
36      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
37 test('T9951', [], compile,
38      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
39 test('T11303', normal, compile, ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns +RTS -M1G -RTS'])
40 test('T11276', compiler_stats_num_field('bytes allocated',
41   [(wordsize(64), 165890392, 10)]
42     # 2018-07-14: 165890392   INITIAL
43   ), compile, ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns +RTS -M1G -RTS'])
44
45 test('T11303b', compiler_stats_num_field('bytes allocated',
46   [(wordsize(64), 54373936, 10)]
47     # 2018-07-14: 54373936    INITIAL
48   ), compile, ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns +RTS -M1G -RTS'])
49
50 test('T11374', compiler_stats_num_field('bytes allocated',
51   [(wordsize(64), 280144864, 10)]
52     # 2018-07-14: 280144864   INITIAL
53   ), compile, ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns +RTS -M1G -RTS'])
54
55 test('T11195', compiler_stats_num_field('bytes allocated',
56   [(wordsize(64), 7852567480, 10)]
57     # 2018-07-14: 7852567480   INITIAL
58   ), compile, ['-package ghc -fwarn-incomplete-patterns -fwarn-overlapping-patterns +RTS -M2G -RTS'])
59
60 test('T11984', normal, compile,
61     ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
62 test('T14086', normal, compile,
63      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
64 test('T14098', normal, compile,
65      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
66 test('T15385', normal, compile,
67      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
68 test('T15450', normal, compile,
69      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
70
71 # Other tests
72 test('pmc001', [], compile,
73      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
74 test('pmc002', [], compile,
75      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
76 test('pmc003', [], compile,
77      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
78 test('pmc004', [], compile,
79      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
80 test('pmc005', [], compile,
81      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
82 test('pmc006', [], compile,
83      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
84 test('pmc007', [], compile,
85      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
86 test('T11245', [], compile,
87      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
88 test('T12957', [], compile, ['-fwarn-overlapping-patterns'])
89 test('T12957a', [], compile, ['-fwarn-overlapping-patterns'])
90
91 # EmptyCase
92 test('T10746', [], compile,
93      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
94 test('EmptyCase001', [], compile,
95      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
96 test('EmptyCase002', [], compile,
97      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
98 test('EmptyCase003', [], compile,
99      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
100 test('EmptyCase004', [], compile,
101      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
102 test('EmptyCase005', [], compile,
103      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
104 test('EmptyCase006', [],  compile,
105      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
106 test('EmptyCase007', [],  compile,
107      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
108 test('EmptyCase008', [],  compile,
109      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
110 test('EmptyCase009', [],  compile,
111      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
112 test('EmptyCase010', [],  compile,
113      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])