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 [aQU] [d.Bar_aQY] [([aQU], Print002.f3d{-r4L-}, f3d_a13B)]
36 /////_a13C = Print002./////{-r4t-} aQU d.Bar_aQY
37 f3d_a13B x_r4v y_r4w = x_r4v /////_a13C y_r4w
38 AbsBinds [aRf] [d.Bar_aRj] [([aRf], Print002.f3c{-r4M-}, f3c_a13H)]
39 /////_a13I = Print002./////{-r4t-} aRf d.Bar_aRj
40 f3c_a13H x_r4r y_r4s = /////_a13I x_r4r y_r4s
41 AbsBinds [aRA] [d.Bar_aRE] [([aRA], Print002.f3b{-r4N-}, f3b_a13J)]
42 meth1_a13K = Print002.meth1{-r4m-} aRA d.Bar_aRE
43 f3b_a13J x_r4o y_r4p = x_r4o meth1_a13K y_r4p
44 AbsBinds [aRV] [d.Bar_aRZ] [([aRV], Print002.f3a{-r4O-}, f3a_a13L)]
45 meth1_a13M = Print002.meth1{-r4m-} aRV d.Bar_aRZ
46 f3a_a13L x_r4k y_r4l = meth1_a13M x_r4k y_r4l
50 [([aSq, aSs, aSu], Print002.<<<<{-r4P-}, <<<<_a13N)]
52 = Print002.:***{-rs-} [aSq, aSs, aSu] x_r4e y_r4f
54 = Print002.:***{-rs-} [aSq, aSs, aSu] x_r4h y_r4i
58 [([aSL, aSN, aSP], Print002......{-r4Q-}, ....._a13O)]
59 ....._a13O x_r4b y_r4c
60 = Print002.MkFoo3{-rq-} [aSL, aSN, aSP] x_r4b y_r4c
64 [([aT6, aT8, aTa], Print002.....{-r4R-}, ...._a13P)]
66 = Print002.MkFoo3{-rq-} [aT6, aT8, aTa] x_r48 y_r49
70 [([aTr, aTt, aTv], Print002.f2a{-r4S-}, f2a_a13Q)]
72 = Print002.:##{-rn-} [aTr, aTt, aTv] x_r45 y_r46
76 [([aTM, aTO, aTQ], Print002.f2{-r4T-}, f2_a13R)]
78 = Print002.:##{-rn-} [aTM, aTO, aTQ] x_r42 y_r43
82 [([aU7, aU9, aUb], Print002.f1a{-r4U-}, f1a_a13S)]
84 = Print002.MkFoo1{-ro-} [aU7, aU9, aUb] x_r3Z y_r40
88 [([aUs, aUu, aUw], Print002.f1{-r4V-}, f1_a13T)]
90 = Print002.MkFoo1{-ro-} [aUs, aUu, aUw] x_r3W y_r3X
94 [([aVd, aVg, aVh], con2tag_Foo#_rOp, con2tag_Foo#_a13U)]
95 con2tag_Foo#_a13U (Print002.MkFoo1{-ro-} _ _) = 0#
96 con2tag_Foo#_a13U (Print002.:##{-rn-} _ _) = 1#
97 con2tag_Foo#_a13U (Print002.MkFoo3{-rq-} _ _) = 2#
98 con2tag_Foo#_a13U (Print002.:***{-rs-} _ _) = 3#
100 [a_taVs, b_taVt, c_taVu]
101 [d.Eq_aXB, d.Eq_aXC, d.Eq_aXD]
102 [([a_taVs, b_taVt, c_taVu], Print002.$dEqFoo0{-r13G-}, d.Eq_aVp)]
104 ==_a13f = PrelBase.=={-8X-} c_taVu d.Eq_aXO
107 ==_a13c = PrelBase.=={-8X-} b_taVt d.Eq_aXQ
110 ==_a13a = PrelBase.=={-8X-} a_taVs d.Eq_aXS
115 AbsBinds [] [] [([], /=_aVr, /=_a13V)]
116 /=_a13V a_rOT b_rOU = PrelBase.not{-rhG-} ==_a13h a_rOT b_rOU
117 AbsBinds [] [] [([], ==_aVH, ==_a13W)]
118 ==_a13W (Print002.MkFoo1{-ro-} a1_rOw a2_rOx)
119 (Print002.MkFoo1{-ro-} b1_rOy b2_rOz)
120 = (a1_rOw ==_a13a b1_rOy)
121 PrelBase.&&{-rgy-} (a2_rOx ==_a139 b2_rOz)
122 ==_a13W (Print002.:##{-rn-} a1_rOB a2_rOC)
123 (Print002.:##{-rn-} b1_rOD b2_rOE)
124 = (a1_rOB ==_a13b b1_rOD)
125 PrelBase.&&{-rgy-} (a2_rOC ==_a13e b2_rOE)
126 ==_a13W (Print002.MkFoo3{-rq-} a1_rOG a2_rOH)
127 (Print002.MkFoo3{-rq-} b1_rOI b2_rOJ)
128 = (a1_rOG ==_a13c b1_rOI)
129 PrelBase.&&{-rgy-} (a2_rOH ==_a13d b2_rOJ)
130 ==_a13W (Print002.:***{-rs-} a1_rOL a2_rOM)
131 (Print002.:***{-rs-} b1_rON b2_rOO)
132 = (a1_rOL ==_a13f b1_rON)
133 PrelBase.&&{-rgy-} (a2_rOM ==_a13g b2_rOO)
134 ==_a13W a_rOQ b_rOR = PrelBase.False{-58-}
136 PrelBase.:Eq{-r17-} (Print002.Foo{-r52-} a_taVs b_taVt c_taVu)
140 [a_ta13i, b_ta13k, c_ta13j]
142 [([a_ta13i, b_ta13k, c_ta13j],
143 Print002.$dEvalFoo0{-r13F-},
147 {PrelBase.Eval{-24-} (Print002.Foo{-r52-} a_ta13i b_ta13k c_ta13j)} "Compiler error: bad dictionary Eval"
149 [a_taYe, b_taYf, c_taYg]
150 [d.Ord_a12F, d.Ord_a12H, d.Ord_a12I, d.Eq_a12J]
151 [([a_taYe, b_taYf, c_taYg], Print002.$dOrdFoo0{-r13E-}, d.Ord_aYb)]
152 compare_a13q = compare_aZC
153 compare_a13p = compare_aZC
154 compare_a13o = compare_aZC
155 compare_a13n = compare_aZC
156 compare_a13m = compare_aZC
157 compare_a13l = compare_aZC
158 d.Ord_a12D = d.Ord_a12I
159 d.Ord_a12C = d.Ord_a12H
160 d.Ord_a12E = d.Ord_a12F
161 d.Eq_a12G = d.Eq_a12J
162 AbsBinds [] [] [([], min_aYd, min_a13X)]
164 = case compare_a13q a_rPs b_rPt of
165 PrelBase.LT{-rbj-} -> a_rPs
166 PrelBase.EQ{-r4K-} -> b_rPt
167 PrelBase.GT{-rbk-} -> b_rPt
168 AbsBinds [] [] [([], max_aYu, max_a13Y)]
170 = case compare_a13p a_rPm b_rPn of
171 PrelBase.LT{-rbj-} -> b_rPn
172 PrelBase.EQ{-r4K-} -> a_rPm
173 PrelBase.GT{-rbk-} -> a_rPm
174 AbsBinds [] [] [([], >_aYI, >_a13Z)]
176 = case compare_a13o a_rPg b_rPh of
177 PrelBase.LT{-rbj-} -> PrelBase.False{-58-}
178 PrelBase.EQ{-r4K-} -> PrelBase.False{-58-}
179 PrelBase.GT{-rbk-} -> PrelBase.True{-5D-}
180 AbsBinds [] [] [([], >=_aYW, >=_a140)]
182 = case compare_a13n a_rPa b_rPb of
183 PrelBase.LT{-rbj-} -> PrelBase.False{-58-}
184 PrelBase.EQ{-r4K-} -> PrelBase.True{-5D-}
185 PrelBase.GT{-rbk-} -> PrelBase.True{-5D-}
186 AbsBinds [] [] [([], <=_aZa, <=_a141)]
188 = case compare_a13m a_rP4 b_rP5 of
189 PrelBase.LT{-rbj-} -> PrelBase.True{-5D-}
190 PrelBase.EQ{-r4K-} -> PrelBase.True{-5D-}
191 PrelBase.GT{-rbk-} -> PrelBase.False{-58-}
192 AbsBinds [] [] [([], <_aZo, <_a142)]
194 = case compare_a13l a_rOY b_rOZ of
195 PrelBase.LT{-rbj-} -> PrelBase.True{-5D-}
196 PrelBase.EQ{-r4K-} -> PrelBase.False{-58-}
197 PrelBase.GT{-rbk-} -> PrelBase.False{-58-}
198 AbsBinds [] [] [([], compare_aZC, compare_a143)]
199 compare_a143 a_rPy b_rPz
200 = case con2tag_Foo#_rOp [c_taYg, a_taYe, b_taYf] a_rPy of
202 -> case con2tag_Foo#_rOp [c_taYg, a_taYe, b_taYf] b_rPz of
204 -> if a#_rQm PrelGHC.==#{-79-} b#_rQo then
205 case cmp_eq_a144 a_rPy b_rPz of
206 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
207 PrelBase.EQ{-r4K-} -> PrelBase.EQ{-r4K-}
208 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
210 if a#_rQm PrelGHC.<#{-7b-} b#_rQo then
218 [d.Ord_a125, d.Ord_a122, d.Ord_a11Z]
219 [([a11D, a11G, a11H], cmp_eq_rPB, cmp_eq_a145)]
220 compare_a13x = PrelBase.compare{-rh8-} a11H d.Ord_a125
221 compare_a13y = compare_a13x
222 compare_a13w = compare_a13x
223 compare_a13v = PrelBase.compare{-rh8-} a11G d.Ord_a11Z
224 compare_a13u = compare_a13v
225 compare_a13s = PrelBase.compare{-rh8-} a11D d.Ord_a122
226 compare_a13t = compare_a13s
227 compare_a13r = compare_a13s
228 cmp_eq_a145 (Print002.MkFoo1{-ro-} a1_rPD a2_rPE)
229 (Print002.MkFoo1{-ro-} b1_rPF b2_rPG)
230 = case compare_a13u a1_rPD b1_rPF of
231 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
233 -> case compare_a13v a2_rPE b2_rPG of
234 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
235 PrelBase.EQ{-r4K-} -> PrelBase.EQ{-r4K-}
236 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
237 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
238 cmp_eq_a145 (Print002.:##{-rn-} a1_rPO a2_rPP)
239 (Print002.:##{-rn-} b1_rPQ b2_rPR)
240 = case compare_a13x a1_rPO b1_rPQ of
241 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
243 -> case compare_a13s a2_rPP b2_rPR of
244 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
245 PrelBase.EQ{-r4K-} -> PrelBase.EQ{-r4K-}
246 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
247 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
248 cmp_eq_a145 (Print002.MkFoo3{-rq-} a1_rPZ a2_rQ0)
249 (Print002.MkFoo3{-rq-} b1_rQ1 b2_rQ2)
250 = case compare_a13w a1_rPZ b1_rQ1 of
251 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
253 -> case compare_a13y a2_rQ0 b2_rQ2 of
254 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
255 PrelBase.EQ{-r4K-} -> PrelBase.EQ{-r4K-}
256 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
257 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
258 cmp_eq_a145 (Print002.:***{-rs-} a1_rQa a2_rQb)
259 (Print002.:***{-rs-} b1_rQc b2_rQd)
260 = case compare_a13r a1_rQa b1_rQc of
261 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
263 -> case compare_a13t a2_rQb b2_rQd of
264 PrelBase.LT{-rbj-} -> PrelBase.LT{-rbj-}
265 PrelBase.EQ{-r4K-} -> PrelBase.EQ{-r4K-}
266 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
267 PrelBase.GT{-rbk-} -> PrelBase.GT{-rbk-}
269 = PrelErr.error{-87-}
270 PrelBase.Ordering{-3p-} "Urk! in TcGenDeriv"
272 cmp_eq_rPB [c_taYg, a_taYe, b_taYf]
273 [d.Ord_a12C, d.Ord_a12D, d.Ord_a12E]
275 PrelBase.:Ord{-r1o-} (Print002.Foo{-r52-} a_taYe b_taYf c_taYg)
284 Print002.Bar2_sc1{-a13D-} =
285 _/\_ a_tr4y -> \ x1_B1 ->
286 _coerce_ {Print002.Bar{-r4z-} a_tr4y} {Print002.Bar2{-r4Y-} a_tr4y}
288 AbsBinds [a_ta13z] [d.Bar2_a134] []
289 Print002.meth2{-r4Z-} =
290 _/\_ a_tr4B -> \ x1_B1 ->
291 case x1_B1 of { Print002.:Bar{-r51-} x2_B2 x3_B3 x4_B4 -> x2_B2;}
292 Print002./////{-r4t-} =
293 _/\_ a_tr4B -> \ x1_B1 ->
294 case x1_B1 of { Print002.:Bar{-r51-} x2_B2 x3_B3 x4_B4 -> x3_B3;}
295 Print002.meth1{-r4m-} =
296 _/\_ a_tr4B -> \ x1_B1 ->
297 case x1_B1 of { Print002.:Bar{-r51-} x2_B2 x3_B3 x4_B4 -> x4_B4;}
298 AbsBinds [a_ta13A] [d.Bar_a138] []
302 Pattern match(es) are overlapped
303 in the definition of function `<<<<'
306 ghc: module version changed to 1; reason: no old .hi file
308 Print002 .... ..... <<<< f1 f1a f2 f2a f3a f3b f3c f3d Bar(:Bar :Bar meth2 ///// meth1) Bar2(:Bar2 :Bar2) Foo(MkFoo1 :## MkFoo3 :***);
310 instance _forall_ [a b c] {PrelBase.Eq a, PrelBase.Eq b, PrelBase.Eq c} => {PrelBase.Eq (Foo a b c)} = $dEqFoo0;
311 instance _forall_ [a b c] => {PrelBase.Eval (Foo a b c)} = $dEvalFoo0;
312 instance _forall_ [a b c] {PrelBase.Ord a, PrelBase.Ord b, PrelBase.Ord c} => {PrelBase.Ord (Foo a b c)} = $dOrdFoo0;
314 1 $dEqFoo0 _:_ _forall_ [a b c] {PrelBase.Eq a, PrelBase.Eq b, PrelBase.Eq c} => {PrelBase.Eq (Foo a b c)} ;;
315 1 $dEvalFoo0 _:_ _forall_ [a b c] => {PrelBase.Eval (Foo a b c)} ;;
316 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)} ;;
317 1 .... _:_ _forall_ [a b c] => b -> b -> Foo a b c ;;
318 1 ..... _:_ _forall_ [a b c] => b -> b -> Foo a b c ;;
319 1 <<<< _:_ _forall_ [a b c] => c -> c -> Foo a b c ;;
320 1 class Bar a where {meth2 :: _forall_ [b] => a -> b -> PrelBase.Bool; ///// :: a -> a -> PrelBase.Bool; meth1 :: a -> a -> PrelBase.Bool} ;
321 1 class {Bar a} => Bar2 a ;
322 1 data Foo a b c = MkFoo1 a a | :## b c | MkFoo3 b b | :*** c c ;
323 1 f1 _:_ _forall_ [a b c] => a -> a -> Foo a b c ;;
324 1 f1a _:_ _forall_ [a b c] => a -> a -> Foo a b c ;;
325 1 f2 _:_ _forall_ [a b c] => b -> c -> Foo a b c ;;
326 1 f2a _:_ _forall_ [a b c] => b -> c -> Foo a b c ;;
327 1 f3a _:_ _forall_ [a] {Bar a} => a -> a -> PrelBase.Bool ;;
328 1 f3b _:_ _forall_ [a] {Bar a} => a -> a -> PrelBase.Bool ;;
329 1 f3c _:_ _forall_ [a] {Bar a} => a -> a -> PrelBase.Bool ;;
330 1 f3d _:_ _forall_ [a] {Bar a} => a -> a -> PrelBase.Bool ;;