3b6a8c8d35744ab69634e3f33e1feb6849a6c757
[ghc.git] / testsuite / tests / arrows / should_compile / arrowdo3.hs
1 {-# LANGUAGE Arrows #-}
2
3 -- test for out-size tuples: takes a _long_ time to compile
4
5 module ShouldCompile where
6
7 import Control.Arrow
8
9 data T1 = C1
10 data T2 = C2
11 data T3 = C3
12 data T4 = C4
13 data T5 = C5
14 data T6 = C6
15 data T7 = C7
16 data T8 = C8
17 data T9 = C9
18 data T10 = C10
19 data T11 = C11
20 data T12 = C12
21 data T13 = C13
22 data T14 = C14
23 data T15 = C15
24 data T16 = C16
25 data T17 = C17
26 data T18 = C18
27 data T19 = C19
28 data T20 = C20
29 data T21 = C21
30 data T22 = C22
31 data T23 = C23
32 data T24 = C24
33 data T25 = C25
34 data T26 = C26
35 data T27 = C27
36 data T28 = C28
37 data T29 = C29
38 data T30 = C30
39 data T31 = C31
40 data T32 = C32
41 data T33 = C33
42 data T34 = C34
43 data T35 = C35
44 data T36 = C36
45 data T37 = C37
46 data T38 = C38
47 data T39 = C39
48 data T40 = C40
49 data T41 = C41
50 data T42 = C42
51 data T43 = C43
52 data T44 = C44
53 data T45 = C45
54 data T46 = C46
55 data T47 = C47
56 data T48 = C48
57 data T49 = C49
58 data T50 = C50
59 data T51 = C51
60 data T52 = C52
61 data T53 = C53
62 data T54 = C54
63 data T55 = C55
64 data T56 = C56
65 data T57 = C57
66 data T58 = C58
67 data T59 = C59
68 data T60 = C60
69 data T61 = C61
70 data T62 = C62
71 data T63 = C63
72 data T64 = C64
73 data T65 = C65
74 data T66 = C66
75 data T67 = C67
76 data T68 = C68
77 data T69 = C69
78 data T70 = C70
79
80 f :: Arrow a => a Int Int
81 f = proc x0 -> do
82 x1 <- returnA -< C1
83 x2 <- returnA -< C2
84 x3 <- returnA -< C3
85 x4 <- returnA -< C4
86 x5 <- returnA -< C5
87 x6 <- returnA -< C6
88 x7 <- returnA -< C7
89 x8 <- returnA -< C8
90 x9 <- returnA -< C9
91 x10 <- returnA -< C10
92 x11 <- returnA -< C11
93 x12 <- returnA -< C12
94 x13 <- returnA -< C13
95 x14 <- returnA -< C14
96 x15 <- returnA -< C15
97 x16 <- returnA -< C16
98 x17 <- returnA -< C17
99 x18 <- returnA -< C18
100 x19 <- returnA -< C19
101 x20 <- returnA -< C20
102 x21 <- returnA -< C21
103 x22 <- returnA -< C22
104 x23 <- returnA -< C23
105 x24 <- returnA -< C24
106 x25 <- returnA -< C25
107 x26 <- returnA -< C26
108 x27 <- returnA -< C27
109 x28 <- returnA -< C28
110 x29 <- returnA -< C29
111 x30 <- returnA -< C30
112 x31 <- returnA -< C31
113 x32 <- returnA -< C32
114 x33 <- returnA -< C33
115 x34 <- returnA -< C34
116 x35 <- returnA -< C35
117 x36 <- returnA -< C36
118 x37 <- returnA -< C37
119 x38 <- returnA -< C38
120 x39 <- returnA -< C39
121 x40 <- returnA -< C40
122 x41 <- returnA -< C41
123 x42 <- returnA -< C42
124 x43 <- returnA -< C43
125 x44 <- returnA -< C44
126 x45 <- returnA -< C45
127 x46 <- returnA -< C46
128 x47 <- returnA -< C47
129 x48 <- returnA -< C48
130 x49 <- returnA -< C49
131 x50 <- returnA -< C50
132 x51 <- returnA -< C51
133 x52 <- returnA -< C52
134 x53 <- returnA -< C53
135 x54 <- returnA -< C54
136 x55 <- returnA -< C55
137 x56 <- returnA -< C56
138 x57 <- returnA -< C57
139 x58 <- returnA -< C58
140 x59 <- returnA -< C59
141 x60 <- returnA -< C60
142 x61 <- returnA -< C61
143 x62 <- returnA -< C62
144 x63 <- returnA -< C63
145 x64 <- returnA -< C64
146 x65 <- returnA -< C65
147 x66 <- returnA -< C66
148 x67 <- returnA -< C67
149 x68 <- returnA -< C68
150 x69 <- returnA -< C69
151 x70 <- returnA -< C70
152 returnA -< x70
153 returnA -< x69
154 returnA -< x68
155 returnA -< x67
156 returnA -< x66
157 returnA -< x65
158 returnA -< x64
159 returnA -< x63
160 returnA -< x62
161 returnA -< x61
162 returnA -< x60
163 returnA -< x59
164 returnA -< x58
165 returnA -< x57
166 returnA -< x56
167 returnA -< x55
168 returnA -< x54
169 returnA -< x53
170 returnA -< x52
171 returnA -< x51
172 returnA -< x50
173 returnA -< x49
174 returnA -< x48
175 returnA -< x47
176 returnA -< x46
177 returnA -< x45
178 returnA -< x44
179 returnA -< x43
180 returnA -< x42
181 returnA -< x41
182 returnA -< x40
183 returnA -< x39
184 returnA -< x38
185 returnA -< x37
186 returnA -< x36
187 returnA -< x35
188 returnA -< x34
189 returnA -< x33
190 returnA -< x32
191 returnA -< x31
192 returnA -< x30
193 returnA -< x29
194 returnA -< x28
195 returnA -< x27
196 returnA -< x26
197 returnA -< x25
198 returnA -< x24
199 returnA -< x23
200 returnA -< x22
201 returnA -< x21
202 returnA -< x20
203 returnA -< x19
204 returnA -< x18
205 returnA -< x17
206 returnA -< x16
207 returnA -< x15
208 returnA -< x14
209 returnA -< x13
210 returnA -< x12
211 returnA -< x11
212 returnA -< x10
213 returnA -< x9
214 returnA -< x8
215 returnA -< x7
216 returnA -< x6
217 returnA -< x5
218 returnA -< x4
219 returnA -< x3
220 returnA -< x2
221 returnA -< x1
222 returnA -< x0