87874f81c822b3cf27f81270afdba85d8bf35628
[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,
40      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns +RTS -M1G -RTS'])
41 test('T11276', collect_compiler_stats('bytes allocated',10), compile,
42      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns +RTS -M1G -RTS'])
43
44 test('T11303b', collect_compiler_stats('bytes allocated',10), compile,
45      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns +RTS -M1G -RTS'])
46
47 test('T11374', collect_compiler_stats('bytes allocated',10), compile,
48      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns +RTS -M1G -RTS'])
49
50 test('T11195', collect_compiler_stats('bytes allocated',10), compile,
51      ['-package ghc -fwarn-incomplete-patterns -fwarn-overlapping-patterns +RTS -M2G -RTS'])
52
53 test('T11984', normal, compile,
54     ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
55 test('T14086', normal, compile,
56      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
57 test('T14098', normal, compile,
58      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
59 test('T14813', normal, compile,
60      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
61 test('T15305', normal, compile,
62      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
63 test('T15385', normal, compile,
64      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
65 test('T15450', normal, compile,
66      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
67 test('T15584', normal, compile,
68      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
69 test('T15713', normal, compile,
70      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
71 test('T15753a', expect_broken(15753), compile,
72      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
73 test('T15753b', normal, compile,
74      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
75 test('T15884', expect_broken(15884), compile,
76      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
77 test('T16289', normal, compile,
78      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
79 test('T17112', normal, compile,
80      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
81
82 # Other tests
83 test('pmc001', [], compile,
84      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
85 test('pmc002', [], compile,
86      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
87 test('pmc003', [], compile,
88      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
89 test('pmc004', [], compile,
90      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
91 test('pmc005', [], compile,
92      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
93 test('pmc006', [], compile,
94      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
95 test('pmc007', [], compile,
96      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
97 test('T11245', [], compile,
98      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
99 test('T12949', [],  compile, ['-fwarn-overlapping-patterns'])
100 test('T12957', [], compile, ['-fwarn-overlapping-patterns'])
101 test('T12957a', [], compile, ['-fwarn-overlapping-patterns'])
102 test('PmExprVars', [],  compile,
103      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
104 test('CyclicSubst', [],  compile,
105      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
106
107 # EmptyCase
108 test('T10746', [], compile,
109      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
110 test('EmptyCase001', [], compile,
111      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
112 test('EmptyCase002', [], compile,
113      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
114 test('EmptyCase003', [], compile,
115      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
116 test('EmptyCase004', [], compile,
117      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
118 test('EmptyCase005', [], compile,
119      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
120 test('EmptyCase006', [],  compile,
121      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
122 test('EmptyCase007', [],  compile,
123      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
124 test('EmptyCase008', [],  compile,
125      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
126 test('EmptyCase009', [],  compile,
127      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])
128 test('EmptyCase010', [],  compile,
129      ['-fwarn-incomplete-patterns -fwarn-overlapping-patterns'])