2 ==================== Typechecked ====================
3 Print002.MkFoo1{-ro-} =
8 Print002.MkFoo1{-ro-} {_@_ a_tr4H
18 Print002.:##{-rn-} {_@_ a_tr4H _@_ b_tr4I _@_ c_tr4J x1_B1 x2_B2}
19 Print002.MkFoo3{-rq-} =
24 Print002.MkFoo3{-rq-} {_@_ a_tr4H
34 Print002.:***{-rs-} {_@_ a_tr4H _@_ b_tr4I _@_ c_tr4J x1_B1 x2_B2}
35 AbsBinds [aQk] [d.Bar_aQo] [([aQk], Print002.f3d{-r4L-}, f3d_a131)]
36 /////_a132 = Print002./////{-r4t-} aQk d.Bar_aQo
37 f3d_a131 x_r4v y_r4w = x_r4v /////_a132 y_r4w
38 AbsBinds [aQF] [d.Bar_aQJ] [([aQF], Print002.f3c{-r4M-}, f3c_a137)]
39 /////_a138 = Print002./////{-r4t-} aQF d.Bar_aQJ
40 f3c_a137 x_r4r y_r4s = /////_a138 x_r4r y_r4s
41 AbsBinds [aR0] [d.Bar_aR4] [([aR0], Print002.f3b{-r4N-}, f3b_a139)]
42 meth1_a13a = Print002.meth1{-r4m-} aR0 d.Bar_aR4
43 f3b_a139 x_r4o y_r4p = x_r4o meth1_a13a y_r4p
44 AbsBinds [aRl] [d.Bar_aRp] [([aRl], Print002.f3a{-r4O-}, f3a_a13b)]
45 meth1_a13c = Print002.meth1{-r4m-} aRl d.Bar_aRp
46 f3a_a13b x_r4k y_r4l = meth1_a13c x_r4k y_r4l
50 [([aRQ, aRS, aRU], Print002.<<<<{-r4P-}, <<<<_a13d)]
52 = Print002.:***{-rs-} [aRQ, aRS, aRU] x_r4e y_r4f
54 = Print002.:***{-rs-} [aRQ, aRS, aRU] x_r4h y_r4i
58 [([aSb, aSd, aSf], Print002......{-r4Q-}, ....._a13e)]
59 ....._a13e x_r4b y_r4c
60 = Print002.MkFoo3{-rq-} [aSb, aSd, aSf] x_r4b y_r4c
64 [([aSw, aSy, aSA], Print002.....{-r4R-}, ...._a13f)]
66 = Print002.MkFoo3{-rq-} [aSw, aSy, aSA] x_r48 y_r49
70 [([aSR, aST, aSV], Print002.f2a{-r4S-}, f2a_a13g)]
72 = Print002.:##{-rn-} [aSR, aST, aSV] x_r45 y_r46
76 [([aTc, aTe, aTg], Print002.f2{-r4T-}, f2_a13h)]
78 = Print002.:##{-rn-} [aTc, aTe, aTg] x_r42 y_r43
82 [([aTx, aTz, aTB], Print002.f1a{-r4U-}, f1a_a13i)]
84 = Print002.MkFoo1{-ro-} [aTx, aTz, aTB] x_r3Z y_r40
88 [([aTS, aTU, aTW], Print002.f1{-r4V-}, f1_a13j)]
90 = Print002.MkFoo1{-ro-} [aTS, aTU, aTW] x_r3W y_r3X
94 [([aUD, aUG, aUH], con2tag_Foo#_rNP, con2tag_Foo#_a13k)]
95 con2tag_Foo#_a13k (Print002.MkFoo1{-ro-} _ _) = 0#
96 con2tag_Foo#_a13k (Print002.:##{-rn-} _ _) = 1#
97 con2tag_Foo#_a13k (Print002.MkFoo3{-rq-} _ _) = 2#
98 con2tag_Foo#_a13k (Print002.:***{-rs-} _ _) = 3#
100 [a_taUS, b_taUT, c_taUU]
101 [d.Eq_aX1, d.Eq_aX2, d.Eq_aX3]
102 [([a_taUS, b_taUT, c_taUU], Print002.$dEqFoo0{-r136-}, d.Eq_aUP)]
104 ==_a12F = PrelBase.=={-8X-} c_taUU d.Eq_aXe
107 ==_a12C = PrelBase.=={-8X-} b_taUT d.Eq_aXg
110 ==_a12A = PrelBase.=={-8X-} a_taUS d.Eq_aXi
115 AbsBinds [] [] [([], /=_aUR, /=_a13l)]
116 /=_a13l a_rOj b_rOk = PrelBase.not{-rhG-} ==_a12H a_rOj b_rOk
117 AbsBinds [] [] [([], ==_aV7, ==_a13m)]
118 ==_a13m (Print002.MkFoo1{-ro-} a1_rNW a2_rNX)
119 (Print002.MkFoo1{-ro-} b1_rNY b2_rNZ)
120 = (a1_rNW ==_a12A b1_rNY)
121 PrelBase.&&{-rgy-} (a2_rNX ==_a12z b2_rNZ)
122 ==_a13m (Print002.:##{-rn-} a1_rO1 a2_rO2)
123 (Print002.:##{-rn-} b1_rO3 b2_rO4)
124 = (a1_rO1 ==_a12B b1_rO3)
125 PrelBase.&&{-rgy-} (a2_rO2 ==_a12E b2_rO4)
126 ==_a13m (Print002.MkFoo3{-rq-} a1_rO6 a2_rO7)
127 (Print002.MkFoo3{-rq-} b1_rO8 b2_rO9)
128 = (a1_rO6 ==_a12C b1_rO8)
129 PrelBase.&&{-rgy-} (a2_rO7 ==_a12D b2_rO9)
130 ==_a13m (Print002.:***{-rs-} a1_rOb a2_rOc)
131 (Print002.:***{-rs-} b1_rOd b2_rOe)
132 = (a1_rOb ==_a12F b1_rOd)
133 PrelBase.&&{-rgy-} (a2_rOc ==_a12G b2_rOe)
134 ==_a13m a_rOg b_rOh = PrelBase.False{-58-}
137 (Print002.Foo{-r52-} a_taUS b_taUT c_taUU) /=_aUR ==_aV7
139 [a_ta12I, b_ta12K, c_ta12J]
141 [([a_ta12I, b_ta12K, c_ta12J],
142 Print002.$dEvalFoo0{-r135-},
146 {PrelBase.Eval{-24-} (Print002.Foo{-r52-} a_ta12I b_ta12K c_ta12J)} "Compiler error: bad dictionary Eval"
148 [a_taXE, b_taXF, c_taXG]
149 [d.Ord_a125, d.Ord_a127, d.Ord_a128, d.Eq_a129]
150 [([a_taXE, b_taXF, c_taXG], Print002.$dOrdFoo0{-r134-}, d.Ord_aXB)]
151 compare_a12Q = compare_aZ2
152 compare_a12P = compare_aZ2
153 compare_a12O = compare_aZ2
154 compare_a12N = compare_aZ2
155 compare_a12M = compare_aZ2
156 compare_a12L = compare_aZ2
157 d.Ord_a123 = d.Ord_a128
158 d.Ord_a122 = d.Ord_a127
159 d.Ord_a124 = d.Ord_a125
160 d.Eq_a126 = d.Eq_a129
161 AbsBinds [] [] [([], min_aXD, min_a13n)]
163 = case compare_a12Q a_rOS b_rOT of
164 PrelBase.LT{-rbj-} -> a_rOS
165 PrelBase.EQ{-r4K-} -> b_rOT
166 PrelBase.GT{-rbk-} -> b_rOT
167 AbsBinds [] [] [([], max_aXU, max_a13o)]
169 = case compare_a12P a_rOM b_rON of
170 PrelBase.LT{-rbj-} -> b_rON
171 PrelBase.EQ{-r4K-} -> a_rOM
172 PrelBase.GT{-rbk-} -> a_rOM
173 AbsBinds [] [] [([], >_aY8, >_a13p)]
175 = case compare_a12O a_rOG b_rOH of
176 PrelBase.LT{-rbj-} -> PrelBase.False{-58-}
177 PrelBase.EQ{-r4K-} -> PrelBase.False{-58-}
178 PrelBase.GT{-rbk-} -> PrelBase.True{-5E-}
179 AbsBinds [] [] [([], >=_aYm, >=_a13q)]
181 = case compare_a12N a_rOA b_rOB of
182 PrelBase.LT{-rbj-} -> PrelBase.False{-58-}
183 PrelBase.EQ{-r4K-} -> PrelBase.True{-5E-}
184 PrelBase.GT{-rbk-} -> PrelBase.True{-5E-}
185 AbsBinds [] [] [([], <=_aYA, <=_a13r)]
187 = case compare_a12M a_rOu b_rOv of
188 PrelBase.LT{-rbj-} -> PrelBase.True{-5E-}
189 PrelBase.EQ{-r4K-} -> PrelBase.True{-5E-}
190 PrelBase.GT{-rbk-} -> PrelBase.False{-58-}
191 AbsBinds [] [] [([], <_aYO, <_a13s)]
193 = case compare_a12L a_rOo b_rOp of
194 PrelBase.LT{-rbj-} -> PrelBase.True{-5E-}
195 PrelBase.EQ{-r4K-} -> PrelBase.False{-58-}
196 PrelBase.GT{-rbk-} -> PrelBase.False{-58-}
197 AbsBinds [] [] [([], compare_aZ2, compare_a13t)]
198 compare_a13t a_rOY b_rOZ
199 = case con2tag_Foo#_rNP [c_taXG, a_taXE, b_taXF] a_rOY of
201 -> case con2tag_Foo#_rNP [c_taXG, a_taXE, b_taXF] b_rOZ of
203 -> if a#_rPM PrelGHC.==#{-79-} b#_rPO then
204 case cmp_eq_a13u a_rOY b_rOZ of
205 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
206 PrelBase.EQ{-r4K-} -> PrelBase.EQ{-r4K-}
207 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
209 if a#_rPM PrelGHC.<#{-7b-} b#_rPO then
217 [d.Ord_a11v, d.Ord_a11s, d.Ord_a11p]
218 [([a113, a116, a117], cmp_eq_rP1, cmp_eq_a13v)]
219 compare_a12X = PrelBase.compare{-rh8-} a117 d.Ord_a11v
220 compare_a12Y = compare_a12X
221 compare_a12W = compare_a12X
222 compare_a12V = PrelBase.compare{-rh8-} a116 d.Ord_a11p
223 compare_a12U = compare_a12V
224 compare_a12S = PrelBase.compare{-rh8-} a113 d.Ord_a11s
225 compare_a12T = compare_a12S
226 compare_a12R = compare_a12S
227 cmp_eq_a13v (Print002.MkFoo1{-ro-} a1_rP3 a2_rP4)
228 (Print002.MkFoo1{-ro-} b1_rP5 b2_rP6)
229 = case compare_a12U a1_rP3 b1_rP5 of
230 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
232 -> case compare_a12V a2_rP4 b2_rP6 of
233 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
234 PrelBase.EQ{-r4K-} -> PrelBase.EQ{-r4K-}
235 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
236 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
237 cmp_eq_a13v (Print002.:##{-rn-} a1_rPe a2_rPf)
238 (Print002.:##{-rn-} b1_rPg b2_rPh)
239 = case compare_a12X a1_rPe b1_rPg of
240 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
242 -> case compare_a12S a2_rPf b2_rPh of
243 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
244 PrelBase.EQ{-r4K-} -> PrelBase.EQ{-r4K-}
245 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
246 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
247 cmp_eq_a13v (Print002.MkFoo3{-rq-} a1_rPp a2_rPq)
248 (Print002.MkFoo3{-rq-} b1_rPr b2_rPs)
249 = case compare_a12W a1_rPp b1_rPr of
250 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
252 -> case compare_a12Y a2_rPq b2_rPs of
253 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
254 PrelBase.EQ{-r4K-} -> PrelBase.EQ{-r4K-}
255 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
256 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
257 cmp_eq_a13v (Print002.:***{-rs-} a1_rPA a2_rPB)
258 (Print002.:***{-rs-} b1_rPC b2_rPD)
259 = case compare_a12R a1_rPA b1_rPC of
260 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
262 -> case compare_a12T a2_rPB b2_rPD of
263 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
264 PrelBase.EQ{-r4K-} -> PrelBase.EQ{-r4K-}
265 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
266 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
268 = PrelErr.error{-87-}
269 PrelBase.Ordering{-3n-} "Urk! in TcGenDeriv"
271 cmp_eq_rP1 [c_taXG, a_taXE, b_taXF]
272 [d.Ord_a122, d.Ord_a123, d.Ord_a124]
275 (Print002.Foo{-r52-} a_taXE b_taXF c_taXG) d.Eq_a126
283 Print002.Bar2_sc1{-a133-} =
284 _/\_ a_tr4y -> \ x1_B1 ->
285 _coerce_ {Print002.Bar{-r4z-} a_tr4y} x1_B1
286 AbsBinds [a_ta12Z] [d.Bar2_a12u] []
287 Print002.meth2{-r4Z-} =
288 _/\_ a_tr4B -> \ x1_B1 ->
289 case x1_B1 of { Print002.:Bar{-r51-} x2_B2 x3_B3 x4_B4 -> x2_B2;}
290 Print002./////{-r4t-} =
291 _/\_ a_tr4B -> \ x1_B1 ->
292 case x1_B1 of { Print002.:Bar{-r51-} x2_B2 x3_B3 x4_B4 -> x3_B3;}
293 Print002.meth1{-r4m-} =
294 _/\_ a_tr4B -> \ x1_B1 ->
295 case x1_B1 of { Print002.:Bar{-r51-} x2_B2 x3_B3 x4_B4 -> x4_B4;}
296 AbsBinds [a_ta130] [d.Bar_a12y] []
300 Pattern match(es) are overlapped
301 in the definition of function `<<<<'
304 ghc: module version changed to 1; reason: no old .hi file
305 _interface_ Print002 1 302
307 IO PrelAddr PrelArr PrelBounded PrelCCall PrelForeign PrelNum
309 PrelBase 1 :: $dEq0 1 $dEqBool0 1 $dEqInt0 1 $dEqOrdering0 1 $dEval0 1 $dEval2 1 $dEvalBool0 1 $dEvalDouble0 1 $dEvalInt0 1 $dEvalOrdering0 1 $dOrd0 1 $dOrdBool0 1 $dOrdInt0 1 $dOrdOrdering0 1 $m/= 1 $m< 1 $m<= 1 $m> 1 $m>= 1 $mcompare 1 $mmax 1 $mmin 1 && 1 . 1 not 1 Eq 1 Eval 1 Ord 1 Ordering 1;
310 PrelNum 1 :: $dEqDouble0 1 $dOrdDouble0 1;
312 Print002 .... ..... <<<< f1 f1a f2 f2a f3a f3b f3c f3d Bar(:Bar :Bar meth2 ///// meth1) Bar2(:Bar2 :Bar2) Foo(MkFoo1 :## MkFoo3 :***);
314 instance _forall_ [a b c] {PrelBase.Eq a, PrelBase.Eq b, PrelBase.Eq c} => {PrelBase.Eq (Foo a b c)} = $dEqFoo0;
315 instance _forall_ [a b c] => {PrelBase.Eval (Foo a b c)} = $dEvalFoo0;
316 instance _forall_ [a b c] {PrelBase.Ord a, PrelBase.Ord b, PrelBase.Ord c} => {PrelBase.Ord (Foo a b c)} = $dOrdFoo0;
318 1 $dEqFoo0 _:_ _forall_ [a b c] {PrelBase.Eq a, PrelBase.Eq b, PrelBase.Eq c} => {PrelBase.Eq (Foo a b c)} ;;
319 1 $dEvalFoo0 _:_ _forall_ [a b c] => {PrelBase.Eval (Foo a b c)} ;;
320 1 $dOrdFoo0 _:_ _forall_ [a b c] {PrelBase.Ord a, PrelBase.Ord b, PrelBase.Ord c, PrelBase.Eq (Foo a b c)} => {PrelBase.Ord (Foo a b c)} ;;
321 1 .... _:_ _forall_ [a b c] => b -> b -> Foo a b c ;;
322 1 ..... _:_ _forall_ [a b c] => b -> b -> Foo a b c ;;
323 1 <<<< _:_ _forall_ [a b c] => c -> c -> Foo a b c ;;
324 1 class Bar a where {meth2 :: _forall_ [b] => a -> b -> PrelBase.Bool; ///// :: a -> a -> PrelBase.Bool; meth1 :: a -> a -> PrelBase.Bool} ;
325 1 class {Bar a} => Bar2 a ;
326 1 data Foo a b c = MkFoo1 a a | :## b c | MkFoo3 b b | :*** c c ;
327 1 f1 _:_ _forall_ [a b c] => a -> a -> Foo a b c ;;
328 1 f1a _:_ _forall_ [a b c] => a -> a -> Foo a b c ;;
329 1 f2 _:_ _forall_ [a b c] => b -> c -> Foo a b c ;;
330 1 f2a _:_ _forall_ [a b c] => b -> c -> Foo a b c ;;
331 1 f3a _:_ _forall_ [a] {Bar a} => a -> a -> PrelBase.Bool ;;
332 1 f3b _:_ _forall_ [a] {Bar a} => a -> a -> PrelBase.Bool ;;
333 1 f3c _:_ _forall_ [a] {Bar a} => a -> a -> PrelBase.Bool ;;
334 1 f3d _:_ _forall_ [a] {Bar a} => a -> a -> PrelBase.Bool ;;