all.T 3.71 KB
Newer Older
chak's avatar
chak committed
1
def f(opts):
2
  opts.extra_hc_opts = '-XTemplateHaskell -package template-haskell'
Simon Marlow's avatar
Simon Marlow committed
3
  if (ghc_with_interpreter == 0):
4
	opts.skip = 1
chak's avatar
chak committed
5
6

setTestOpts(f)
ross's avatar
ross committed
7
setTestOpts(only_compiler_types(['ghc']))
simonpj's avatar
simonpj committed
8
setTestOpts(only_ways(['normal','ghci']))
chak's avatar
chak committed
9

10
test('TH_mkName', normal, compile, ['-v0'])
11

chak's avatar
chak committed
12
test('TH_repE1', normal, compile, [''])
13
test('TH_repE2', normal, compile_and_run, [''])
14
test('TH_repE3', normal, compile, [''])
15
test('TH_repPrim', if_compiler_lt('ghc','6.9', skip), compile, ['-v0'])
simonpj's avatar
simonpj committed
16
test('TH_spliceGuard', normal, compile, ['-v0'])
17
test('TH_repPrimOutput', if_compiler_lt('ghc','6.9', skip), compile_and_run, [''])
18
test('TH_repGuard', normal, compile, ['-v0'])
simonpj's avatar
simonpj committed
19
test('TH_repGuardOutput', normal, compile_and_run, [''])
Simon Marlow's avatar
Simon Marlow committed
20
test('TH_repPatSig', normal, compile_fail, [''])
chak's avatar
chak committed
21

22
test('TH_spliceE5', normal, multimod_compile_and_run, ['TH_spliceE5', '-v0'])
Ian Lynagh's avatar
Ian Lynagh committed
23
24
25
26
27
# 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
# profiling (-osuf p_o) because this is necessary when mixing
# profiling w/ TH.  Furthermore we must have built the program the
# normal way first, so this is a bit of a hack.
Ian Lynagh's avatar
Ian Lynagh committed
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
test('TH_spliceE5_prof',
     [req_profiling,
      omit_ways(['ghci']),
      extra_clean(['TH_spliceE5_Lib.p_o', 'TH_spliceE5_Lib.hi',
                   'TH_spliceE5_Lib.o',
                   'TH_spliceE5.hi', 'TH_spliceE5.p_o'])],
     multimod_compile_and_run,
     ['TH_spliceE5', '-v0 -prof -auto-all -osuf p_o'])

test('TH_spliceD1',
     extra_clean(['TH_spliceD1_Lib.hi', 'TH_spliceD1_Lib.o']),
     multimod_compile_fail,
     ['TH_spliceD1', '-v0'])

test('TH_spliceD2',
     extra_clean(['TH_spliceD2_Lib.hi', 'TH_spliceD2_Lib.o']),
     multimod_compile,
     ['TH_spliceD2', '-v0'])
simonpj's avatar
simonpj committed
46

47
test('TH_reifyDecl1', normal, compile, ['-v0'])
48
test('TH_reifyDecl2', normal, compile, ['-v0'])
chak's avatar
chak committed
49
50
51

test('TH_reifyType1', normal, compile, [''])
test('TH_reifyType2', normal, compile, [''])
52
test('TH_reifyMkName', if_compiler_lt('ghc', '6.9', expect_fail), compile, [''])
chak's avatar
chak committed
53

54
test('TH_spliceDecl1', normal, compile, ['-v0'])
chak's avatar
chak committed
55
test('TH_spliceDecl2', normal, compile, ['-v0'])
Ian Lynagh's avatar
Ian Lynagh committed
56
57
58
59
60
61
62
63
test('TH_spliceDecl3',
     extra_clean(['TH_spliceDecl3_Lib.hi', 'TH_spliceDecl3_Lib.o']),
     multimod_compile,
     ['TH_spliceDecl3', '-v0'])
test('TH_spliceDecl4',
     extra_clean(['TH_spliceDecl4_Lib.hi', 'TH_spliceDecl4_Lib.o']),
     multimod_compile,
     ['TH_spliceDecl4', '-v0'])
64

65
test('TH_spliceE1', normal, compile_and_run, [''])
66
test('TH_spliceExpr1', normal, compile, ['-v0'])
67
test('TH_spliceE3', normal, compile, ['-v0'])
68
test('TH_spliceE4', normal, compile_and_run, [''])
69
70

test('TH_bracket1', normal, compile, [''])
71
72
test('TH_bracket2', normal, compile, [''])
test('TH_bracket3', normal, compile, [''])
73

74
75
test('TH_class1', normal, compile, ['-v0'])
test('TH_tuple1', normal, compile, ['-v0'])
Ian Lynagh's avatar
Ian Lynagh committed
76
77
78
79
test('TH_genEx',
     extra_clean(['TH_genExLib.hi', 'TH_genExLib.o']),
     multimod_compile,
     ['TH_genEx', '-v0'])
80

81
test('TH_where', normal, compile_and_run, [''])
82

83
test('TH_spliceInst', normal, compile, ['-v0'])
84

Ian Lynagh's avatar
Ian Lynagh committed
85
test('TH_exn1', if_compiler_lt('ghc','6.9', namebase('TH_exn1-6.8')), compile_fail, ['-v0'])
86

87
test('TH_dupdecl', normal, compile_fail, ['-v0'])
Ian Lynagh's avatar
Ian Lynagh committed
88
test('TH_exn2', if_compiler_lt('ghc','6.9', namebase('TH_exn2-6.8')), compile_fail, ['-v0'])
simonpj's avatar
simonpj committed
89
90

test('TH_recover', normal, compile_and_run, [''])
91
test('TH_dataD1', normal, compile_fail, ['-v0'])
Ian Lynagh's avatar
Ian Lynagh committed
92

93
94
test('TH_ppr1', normal, compile_and_run, ['-fglasgow-exts'])

95
test('TH_fail', if_compiler_lt('ghc','6.9', namebase('TH_fail-6.8')), compile_fail, ['-v0'])
simonpj's avatar
simonpj committed
96
97
test('TH_scopedTvs', normal, compile_fail, ['-v0'])

Ian Lynagh's avatar
Ian Lynagh committed
98
test('TH_runIO', if_compiler_lt('ghc','6.9', namebase('TH_runIO-6.8')), compile_fail, ['-v0'])
simonpj's avatar
simonpj committed
99
100

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

simonpj's avatar
simonpj committed
102
test('TH_scope', normal, compile, [''])
Ian Lynagh's avatar
Ian Lynagh committed
103