all.T 11.9 KB
Newer Older
1 2

# This test needs to come before the setTestOpts calls below, as we want
3 4
# to run it if !compiler_profiled
test('T4255', unless(compiler_profiled(), skip), compile_fail, ['-v0'])
5

6
def f(name, opts):
7
  opts.extra_hc_opts = '-XTemplateHaskell -package template-haskell'
Simon Marlow's avatar
Simon Marlow committed
8
  if (ghc_with_interpreter == 0):
9
	opts.skip = 1
chak's avatar
chak committed
10 11

setTestOpts(f)
ross's avatar
ross committed
12
setTestOpts(only_compiler_types(['ghc']))
Simon Peyton Jones's avatar
Simon Peyton Jones committed
13
setTestOpts(only_ways(['normal','ghci']))
14
setTestOpts(when(compiler_profiled(), skip))
chak's avatar
chak committed
15

16
test('TH_mkName', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
17
test('TH_1tuple', normal, compile_fail, ['-v0'])
18

chak's avatar
chak committed
19
test('TH_repE1', normal, compile, [''])
20
test('TH_repE2', normal, compile_and_run, [''])
21
test('TH_repE3', normal, compile, [''])
22
test('TH_repPrim', normal, compile, ['-v0'])
23
test('TH_repPrim2', normal, compile, ['-v0'])
24
test('TH_repUnboxedTuples', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
25
test('TH_spliceGuard', normal, compile, ['-v0'])
26
test('TH_repPrimOutput', normal, compile_and_run, [''])
27
test('TH_repPrimOutput2', normal, compile_and_run, [''])
28
test('TH_repGuard', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
29
test('TH_repGuardOutput', normal, compile_and_run, [''])
Simon Marlow's avatar
Simon Marlow committed
30
test('TH_repPatSig', normal, compile_fail, [''])
chak's avatar
chak committed
31

32 33 34
test('TH_spliceE5',
     extra_clean(['TH_spliceE5_Lib.hi', 'TH_spliceE5_Lib.o']),
     multimod_compile_and_run,
ian@well-typed.com's avatar
ian@well-typed.com committed
35
     ['TH_spliceE5.hs', '-v0 ' + config.ghc_th_way_flags])
Simon Marlow's avatar
Simon Marlow committed
36

37 38
test('TH_spliceE6', normal, compile, ['-v0'])

Simon Peyton Jones's avatar
Simon Peyton Jones committed
39 40 41
test('TH_NestedSplices',
     extra_clean(['TH_NestedSplices_Lib.hi', 'TH_NestedSplices_Lib.o']),
     multimod_compile,
ian@well-typed.com's avatar
ian@well-typed.com committed
42
     ['TH_NestedSplices.hs', '-v0 ' + config.ghc_th_way_flags])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
43

Ian Lynagh's avatar
Ian Lynagh committed
44 45
# Testing profiling with TH is a bit tricky; we've already disabled
# the prof way above, and also we want to add options specifically for
46
# profiling (-osuf p.o) because this is necessary when mixing
Ian Lynagh's avatar
Ian Lynagh committed
47
# profiling w/ TH.  Furthermore we must have built the program the
Simon Marlow's avatar
Simon Marlow committed
48
# normal way first, which is why the work is done by a Makefile rule.
Ian Lynagh's avatar
Ian Lynagh committed
49 50 51
test('TH_spliceE5_prof',
     [req_profiling,
      omit_ways(['ghci']),
52 53
      extra_clean(['TH_spliceE5_prof_Lib.p.o', 'TH_spliceE5_prof_Lib.hi',
                   'TH_spliceE5_prof_Lib.o','TH_spliceE5_prof.p.o'])],
Simon Marlow's avatar
Simon Marlow committed
54 55
     run_command,
     ['$MAKE -s --no-print-directory TH_spliceE5_prof'])
Ian Lynagh's avatar
Ian Lynagh committed
56 57 58 59

test('TH_spliceD1',
     extra_clean(['TH_spliceD1_Lib.hi', 'TH_spliceD1_Lib.o']),
     multimod_compile_fail,
ian@well-typed.com's avatar
ian@well-typed.com committed
60
     ['TH_spliceD1', '-v0 ' + config.ghc_th_way_flags])
Ian Lynagh's avatar
Ian Lynagh committed
61 62 63 64 65

test('TH_spliceD2',
     extra_clean(['TH_spliceD2_Lib.hi', 'TH_spliceD2_Lib.o']),
     multimod_compile,
     ['TH_spliceD2', '-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
66

67
test('TH_reifyDecl1', normal, compile, ['-v0'])
68
test('TH_reifyDecl2', normal, compile, ['-v0'])
chak's avatar
chak committed
69 70 71

test('TH_reifyType1', normal, compile, [''])
test('TH_reifyType2', normal, compile, [''])
72
test('TH_reifyMkName', normal, compile, ['-v0'])
chak's avatar
chak committed
73

reinerp's avatar
reinerp committed
74 75
test('TH_reifyInstances', normal, compile, ['-v0'])

76
test('TH_spliceDecl1', normal, compile, ['-v0'])
chak's avatar
chak committed
77
test('TH_spliceDecl2', normal, compile, ['-v0'])
Ian Lynagh's avatar
Ian Lynagh committed
78 79 80
test('TH_spliceDecl3',
     extra_clean(['TH_spliceDecl3_Lib.hi', 'TH_spliceDecl3_Lib.o']),
     multimod_compile,
ian@well-typed.com's avatar
ian@well-typed.com committed
81
     ['TH_spliceDecl3', '-v0 ' + config.ghc_th_way_flags])
Ian Lynagh's avatar
Ian Lynagh committed
82 83 84
test('TH_spliceDecl4',
     extra_clean(['TH_spliceDecl4_Lib.hi', 'TH_spliceDecl4_Lib.o']),
     multimod_compile,
ian@well-typed.com's avatar
ian@well-typed.com committed
85
     ['TH_spliceDecl4', '-v0 ' + config.ghc_th_way_flags])
86

Simon Peyton Jones's avatar
Simon Peyton Jones committed
87 88 89
test('T2597a',
     extra_clean(['T2597a_Lib.hi', 'T2597a_Lib.o']),
     multimod_compile,
ian@well-typed.com's avatar
ian@well-typed.com committed
90
     ['T2597a', '-v0 ' + config.ghc_th_way_flags])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
91 92 93 94

test('T2597b',
     extra_clean(['T2597b_Lib.hi', 'T2597b_Lib.o']),
     multimod_compile_fail,
ian@well-typed.com's avatar
ian@well-typed.com committed
95
     ['T2597b', '-v0 ' + config.ghc_th_way_flags])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
96

97
test('TH_spliceE1', normal, compile_and_run, [''])
98
test('TH_spliceExpr1', normal, compile, ['-v0'])
99
test('TH_spliceE3', normal, compile, ['-v0'])
100
test('TH_spliceE4', normal, compile_and_run, [''])
101 102

test('TH_bracket1', normal, compile, [''])
103 104
test('TH_bracket2', normal, compile, [''])
test('TH_bracket3', normal, compile, [''])
105

106 107
test('TH_class1', normal, compile, ['-v0'])
test('TH_tuple1', normal, compile, ['-v0'])
Ian Lynagh's avatar
Ian Lynagh committed
108
test('TH_genEx',
109
     extra_clean(['TH_genExLib.hi', 'TH_genExLib.o']),
Ian Lynagh's avatar
Ian Lynagh committed
110
     multimod_compile,
ian@well-typed.com's avatar
ian@well-typed.com committed
111
     ['TH_genEx', '-v0 ' + config.ghc_th_way_flags])
112

113
test('TH_where', normal, compile_and_run, [''])
114

115
test('TH_spliceInst', normal, compile, ['-v0'])
116

117
test('TH_exn1', normal, compile_fail, ['-v0'])
118

119
test('TH_dupdecl', normal, compile_fail, ['-v0'])
120
test('TH_exn2', normal, compile_fail, ['-v0'])
121 122

test('TH_recover', normal, compile_and_run, [''])
123
test('TH_dataD1', normal, compile, ['-v0'])
Ian Lynagh's avatar
Ian Lynagh committed
124

125
test('TH_ppr1', normal, compile_and_run, [''])
126

127
test('TH_fail', normal, compile_fail, ['-v0'])
128
test('TH_scopedTvs', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
129

130
test('TH_runIO', normal, compile_fail, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
131 132

test('TH_ghci1', normal, ghci_script, ['TH_ghci1.script'])
Ian Lynagh's avatar
Ian Lynagh committed
133

Simon Peyton Jones's avatar
Simon Peyton Jones committed
134
test('TH_scope', normal, compile, [''])
simonpj's avatar
simonpj committed
135
test('T2632', normal, compile, [''])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
136
test('T2700', normal, compile, ['-v0'])
simonpj's avatar
simonpj committed
137
test('T2817', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
138
test('T2713', normal, compile_fail, ['-v0'])
simonpj's avatar
simonpj committed
139
test('T2674', normal, compile_fail, ['-v0'])
simonpj's avatar
simonpj committed
140
test('T2931', normal, compile, ['-v0'])
141
test('TH_emptycase', normal, compile, ['-v0'])
Ian Lynagh's avatar
Ian Lynagh committed
142

Simon Peyton Jones's avatar
Simon Peyton Jones committed
143 144 145
test('T2386', extra_clean(['T2386_Lib.hi', 'T2386_Lib.o']),
	      run_command,
	      ['$MAKE -s --no-print-directory T2386'] )
Simon Marlow's avatar
Simon Marlow committed
146

147
test('T2685', extra_clean(['T2685a.hi','T2685a.o']),
ian@well-typed.com's avatar
ian@well-typed.com committed
148
              multimod_compile, ['T2685', '-v0 ' + config.ghc_th_way_flags])
149 150 151

test('TH_sections', normal, compile, ['-v0'])

152 153 154
test('TH_tf1', normal, compile, ['-v0'])
test('TH_tf2', normal, compile, ['-v0'])
test('TH_tf3', normal, compile, ['-v0'])
155

156
test('TH_pragma', normal, compile, ['-v0 -dsuppress-uniques'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
157 158
test('T3177', normal, compile, ['-v0'])
test('T3177a', normal, compile_fail, ['-v0'])
Ian Lynagh's avatar
Ian Lynagh committed
159

Simon Marlow's avatar
Simon Marlow committed
160
test('T3319', normal, compile, ['-ddump-splices -v0'])
161 162
test('TH_foreignInterruptible', normal, compile, ['-ddump-splices -v0'])

Simon Peyton Jones's avatar
Simon Peyton Jones committed
163
test('T3395', normal, compile_fail, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
164
test('T3467', normal, compile, [''])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
165
test('T3572', normal, compile_and_run, [''])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
166
test('T3100', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
167
test('T3920', normal, compile_and_run, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
168

169
test('T3600', extra_clean(['T3600a.hi','T3600a.o']),
ian@well-typed.com's avatar
ian@well-typed.com committed
170
              multimod_compile, ['T3600', '-v0 ' + config.ghc_th_way_flags])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
171
test('T3845', normal, compile, ['-v0'])
172
test('T3899', extra_clean(['T3899a.hi','T3899a.o']),
ian@well-typed.com's avatar
ian@well-typed.com committed
173 174
              multimod_compile,
              ['T3899','-v0 -ddump-splices -dsuppress-uniques ' + config.ghc_th_way_flags])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
175
test('T4056', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
176
test('T4188', normal, compile, ['-v0'])
Ian Lynagh's avatar
Ian Lynagh committed
177
test('T4233', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
178
test('T4169', normal, compile, ['-v0'])
179
test('T1835', normal, compile_and_run, ['-v0'])
180

181 182
test('TH_viewPatPrint', normal, compile_and_run, [''])
test('T4436', normal, compile, ['-v0 -ddump-splices'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
183
test('T4949', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
184
test('T5126', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
185
test('T5217', normal, compile, ['-v0 -dsuppress-uniques -ddump-splices'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
186
test('T5037', normal, compile, ['-v0'])
187
test('TH_unboxedSingleton', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
188
test('T5290', normal, compile, ['-v0 -ddump-splices'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
189
test('T5362', normal, compile, ['-v0'])
190

191 192 193
test('TH_unresolvedInfix',
     extra_clean(['TH_unresolvedInfix_Lib.hi', 'TH_unresolvedInfix_Lib.o']),
     multimod_compile_and_run,
ian@well-typed.com's avatar
ian@well-typed.com committed
194
     ['TH_unresolvedInfix.hs', '-v0 ' + config.ghc_th_way_flags])
195
test('TH_unresolvedInfix2',
196 197 198
     normal,
     compile_fail,
     ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
199

200
test('T5358', normal, compile_fail, [' -v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
201
test('T5379', normal, compile_and_run, [''])
202 203
test('T5404', normal, compile, ['-v0'])
test('T5410', normal, compile_and_run, ['-v0'])
204
test('TH_lookupName',
reinerp's avatar
reinerp committed
205 206
     extra_clean(['TH_lookupName_Lib.hi', 'TH_lookupName_Lib.o']),
     multimod_compile_and_run,
ian@well-typed.com's avatar
ian@well-typed.com committed
207
     ['TH_lookupName.hs', config.ghc_th_way_flags])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
208
test('T5452', normal, compile, ['-v0'])
209
test('T5434', extra_clean(['T5434a.hi','T5434a.o']),
ian@well-typed.com's avatar
ian@well-typed.com committed
210 211
              multimod_compile,
              ['T5434','-v0 -Wall ' + config.ghc_th_way_flags])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
212
test('T5508', normal, compile, ['-v0 -ddump-splices'])
213 214 215 216 217
test('TH_Depends',
     [extra_clean(['TH_Depends_External.o', 'TH_Depends_External.hi',
                   'TH_Depends_external.txt'])],
     run_command,
     ['$MAKE -s --no-print-directory TH_Depends'])
218
test('T5597', extra_clean(['T5597a.hi','T5597a.o']),
ian@well-typed.com's avatar
ian@well-typed.com committed
219
              multimod_compile, ['T5597', '-v0 ' + config.ghc_th_way_flags])
220
test('T5665', extra_clean(['T5665a.hi','T5665a.o']),
ian@well-typed.com's avatar
ian@well-typed.com committed
221
              multimod_compile, ['T5665', '-v0 ' + config.ghc_th_way_flags])
222
test('T5700', extra_clean(['T5700a.hi','T5700a.o']),
ian@well-typed.com's avatar
ian@well-typed.com committed
223 224
              multimod_compile,
              ['T5700','-v0 -ddump-splices ' + config.ghc_th_way_flags])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
225
test('T5721', normal, compile, ['-v0'])
226 227 228 229 230 231 232

test('TH_PromotedTuple', normal, compile, ['-v0 -ddump-splices'])
test('TH_PromotedList', normal, compile, ['-v0'])
test('TH_Promoted1Tuple', normal, compile_fail, ['-v0'])
test('TH_RichKinds', normal, compile, ['-v0'])
test('TH_RichKinds2', normal, compile, ['-v0'])

Simon Peyton Jones's avatar
Simon Peyton Jones committed
233
test('T1541', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
234
test('T5883', normal, compile, ['-v0 -dsuppress-uniques -ddump-splices'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
235
test('T5882', normal, compile, ['-v0'])
236
test('T5886', extra_clean(['T5886a.hi','T5886a.o']),
ian@well-typed.com's avatar
ian@well-typed.com committed
237
              multimod_compile, ['T5886','-v0 ' + config.ghc_th_way_flags])
238 239
test('T4135',  normal, compile, ['-v0'])
test('T4135a', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
240
test('T5971', normal, compile_fail, ['-v0 -dsuppress-uniques'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
241
test('T5968', normal, compile, ['-v0'])
pcapriotti's avatar
pcapriotti committed
242
test('T5984', extra_clean(['T5984_Lib.hi', 'T5984_Lib.o']),
ian@well-typed.com's avatar
ian@well-typed.com committed
243 244
              multimod_compile,
              ['T5984', '-v0 -ddump-splices ' + config.ghc_th_way_flags])
pcapriotti's avatar
pcapriotti committed
245
test('T5555', extra_clean(['T5555_Lib.hi', 'T5555_Lib.o']),
246
              multimod_compile, ['T5555', '-v0 ' + config.ghc_th_way_flags])
pcapriotti's avatar
pcapriotti committed
247
test('T5976', normal, compile_fail, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
248
test('T5795', normal, compile_fail, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
249
test('T6005', normal, compile, ['-v0'])
250
test('T6005a', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
251
test('T5737', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
252
test('T6114', normal, compile_fail, ['-v0 -dsuppress-uniques'])
reinerp's avatar
reinerp committed
253
test('TH_StringPrimL', normal, compile_and_run, [''])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
254 255 256
test('T7064',
     extra_clean(['T7064a.hi', 'T7064a.o']),
     multimod_compile_and_run,
ian@well-typed.com's avatar
ian@well-typed.com committed
257
     ['T7064.hs', '-v0 ' + config.ghc_th_way_flags])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
258
test('T7092', extra_clean(['T7092a.hi','T7092a.o']),
ian@well-typed.com's avatar
ian@well-typed.com committed
259
              multimod_compile, ['T7092', '-v0 ' + config.ghc_th_way_flags])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
260
test('T7276', normal, compile_fail, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
261
test('T7276a', combined_output, ghci_script, ['T7276a.script'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
262

263 264 265
test('TH_TyInstWhere1', normal, compile, ['-v0 -ddump-splices -dsuppress-uniques'])
test('TH_TyInstWhere2', normal, compile, ['-v0'])

Simon Peyton Jones's avatar
Simon Peyton Jones committed
266 267 268
test('T7445', extra_clean(['T7445a.hi', 'T7445a.o']),
	      run_command,
	      ['$MAKE -s --no-print-directory T7445'] )
Simon Peyton Jones's avatar
Simon Peyton Jones committed
269 270 271
test('T7532',
     extra_clean(['T7532a.hi', 'T7532a.o']),
     multimod_compile,
ian@well-typed.com's avatar
ian@well-typed.com committed
272
     ['T7532', '-v0 ' + config.ghc_th_way_flags])
ian@well-typed.com's avatar
ian@well-typed.com committed
273
test('T2222', normal, compile, ['-v0'])
ian@well-typed.com's avatar
ian@well-typed.com committed
274
test('T1849', normal, ghci_script, ['T1849.script'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
275 276
test('T7681', normal, compile, ['-v0'])
test('T7910', normal, compile_and_run, ['-v0'])
277

Jan Stolarek's avatar
Jan Stolarek committed
278 279
test('ClosedFam1TH', normal, compile, ['-dsuppress-uniques -v0'])
test('ClosedFam2TH', normal, compile, ['-v0'])
eir@cis.upenn.edu's avatar
eir@cis.upenn.edu committed
280 281 282 283 284

test('T8028',
     extra_clean(['T8028a.hi', 'T8028a.o']),
     multimod_compile_fail,
     ['T8028', '-v0 ' + config.ghc_th_way_flags])
eir@cis.upenn.edu's avatar
eir@cis.upenn.edu committed
285 286 287

test('TH_Roles1', normal, compile_fail, ['-v0'])
test('TH_Roles2', normal, compile, ['-v0 -ddump-tc'])
eir@cis.upenn.edu's avatar
eir@cis.upenn.edu committed
288
test('TH_Roles3', normal, compile, ['-v0 -dsuppress-uniques'])
289
test('TH_Roles4', normal, compile, ['-v0'])
eir@cis.upenn.edu's avatar
eir@cis.upenn.edu committed
290

Simon Peyton Jones's avatar
Simon Peyton Jones committed
291 292 293 294 295 296
test('T8186', normal, compile_and_run, ['-v0'])

test('T8333',
     normal,
     run_command,
     ['$MAKE -s --no-print-directory T8333'])
297 298 299 300 301 302

test('T4170', normal, compile, ['-v0'])
test('T4124', normal, compile, ['-v0'])
test('T4128', normal, compile, ['-v0'])
test('T6062', normal, compile, ['-v0'])
test('T4364', normal, compile, ['-v0'])
Krzysztof Gogolewski's avatar
Krzysztof Gogolewski committed
303
test('T8412', normal, compile_fail, ['-v0'])
eir@cis.upenn.edu's avatar
eir@cis.upenn.edu committed
304
test('T7667', normal, compile, ['-v0'])
305
test('T7667a', normal, compile_fail, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
306 307
test('T8455', normal, compile, ['-v0'])
test('T8499', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
308
test('T7477', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
309
test('T8507', normal, compile, ['-v0'])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
310 311 312 313
test('T8540',
     extra_clean(['T8540a.hi', 'T8540a.o']),
     multimod_compile,
     ['T8540', '-v0 ' + config.ghc_th_way_flags])
Simon Peyton Jones's avatar
Simon Peyton Jones committed
314 315 316 317
test('T8577',
     extra_clean(['T8577a.hi', 'T8577a.o']),
     multimod_compile_fail,
     ['T8577', '-v0 ' + config.ghc_th_way_flags])