[project @ 1998-04-17 15:58:37 by simonm]
[ghc-hetmet.git] / ghc / tests / printing / should_compile / Print002.stderr
1
2 ==================== Typechecked ====================
3 Print002.MkFoo1{-ro-} =
4     _/\_ a_tr4H
5          b_tr4I
6          c_tr4J -> \ x1_B1
7                      x2_B2 ->
8         Print002.MkFoo1{-ro-} {_@_ a_tr4H
9                                _@_ b_tr4I
10                                _@_ c_tr4J
11                                x1_B1
12                                x2_B2}
13 Print002.:##{-rn-} =
14     _/\_ a_tr4H
15          b_tr4I
16          c_tr4J -> \ x1_B1
17                      x2_B2 ->
18         Print002.:##{-rn-} {_@_ a_tr4H _@_ b_tr4I _@_ c_tr4J x1_B1 x2_B2}
19 Print002.MkFoo3{-rq-} =
20     _/\_ a_tr4H
21          b_tr4I
22          c_tr4J -> \ x1_B1
23                      x2_B2 ->
24         Print002.MkFoo3{-rq-} {_@_ a_tr4H
25                                _@_ b_tr4I
26                                _@_ c_tr4J
27                                x1_B1
28                                x2_B2}
29 Print002.:***{-rs-} =
30     _/\_ a_tr4H
31          b_tr4I
32          c_tr4J -> \ x1_B1
33                      x2_B2 ->
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
47 AbsBinds
48 [aRQ, aRS, aRU]
49 []
50 [([aRQ, aRS, aRU], Print002.<<<<{-r4P-}, <<<<_a13d)]
51     <<<<_a13d x_r4e y_r4f
52               = Print002.:***{-rs-} [aRQ, aRS, aRU] x_r4e y_r4f
53     <<<<_a13d x_r4h y_r4i
54               = Print002.:***{-rs-} [aRQ, aRS, aRU] x_r4h y_r4i
55 AbsBinds
56 [aSb, aSd, aSf]
57 []
58 [([aSb, aSd, aSf], Print002......{-r4Q-}, ....._a13e)]
59     ....._a13e x_r4b y_r4c
60                = Print002.MkFoo3{-rq-} [aSb, aSd, aSf] x_r4b y_r4c
61 AbsBinds
62 [aSw, aSy, aSA]
63 []
64 [([aSw, aSy, aSA], Print002.....{-r4R-}, ...._a13f)]
65     ...._a13f x_r48 y_r49
66               = Print002.MkFoo3{-rq-} [aSw, aSy, aSA] x_r48 y_r49
67 AbsBinds
68 [aSR, aST, aSV]
69 []
70 [([aSR, aST, aSV], Print002.f2a{-r4S-}, f2a_a13g)]
71     f2a_a13g x_r45 y_r46
72              = Print002.:##{-rn-} [aSR, aST, aSV] x_r45 y_r46
73 AbsBinds
74 [aTc, aTe, aTg]
75 []
76 [([aTc, aTe, aTg], Print002.f2{-r4T-}, f2_a13h)]
77     f2_a13h x_r42 y_r43
78             = Print002.:##{-rn-} [aTc, aTe, aTg] x_r42 y_r43
79 AbsBinds
80 [aTx, aTz, aTB]
81 []
82 [([aTx, aTz, aTB], Print002.f1a{-r4U-}, f1a_a13i)]
83     f1a_a13i x_r3Z y_r40
84              = Print002.MkFoo1{-ro-} [aTx, aTz, aTB] x_r3Z y_r40
85 AbsBinds
86 [aTS, aTU, aTW]
87 []
88 [([aTS, aTU, aTW], Print002.f1{-r4V-}, f1_a13j)]
89     f1_a13j x_r3W y_r3X
90             = Print002.MkFoo1{-ro-} [aTS, aTU, aTW] x_r3W y_r3X
91 AbsBinds
92 [aUD, aUG, aUH]
93 []
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#
99 AbsBinds
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)]
103     ==_a12H = ==_aV7
104     ==_a12F = PrelBase.=={-8X-} c_taUU d.Eq_aXe
105     ==_a12G = ==_a12F
106     ==_a12E = ==_a12F
107     ==_a12C = PrelBase.=={-8X-} b_taUT d.Eq_aXg
108     ==_a12D = ==_a12C
109     ==_a12B = ==_a12C
110     ==_a12A = PrelBase.=={-8X-} a_taUS d.Eq_aXi
111     ==_a12z = ==_a12A
112     d.Eq_aXe = d.Eq_aX3
113     d.Eq_aXg = d.Eq_aX2
114     d.Eq_aXi = d.Eq_aX1
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-}
135     d.Eq_aUP =
136         PrelBase.:Eq{-r17-}
137             (Print002.Foo{-r52-} a_taUS b_taUT c_taUU) /=_aUR ==_aV7
138 AbsBinds
139 [a_ta12I, b_ta12K, c_ta12J]
140 []
141 [([a_ta12I, b_ta12K, c_ta12J],
142   Print002.$dEvalFoo0{-r135-},
143   d.Eval_aXt)]
144     d.Eval_aXt =
145         PrelErr.error{-87-}
146             {PrelBase.Eval{-24-} (Print002.Foo{-r52-} a_ta12I b_ta12K c_ta12J)} "Compiler error: bad dictionary Eval"
147 AbsBinds
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)]
162         min_a13n a_rOS b_rOT
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)]
168         max_a13o a_rOM b_rON
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)]
174         >_a13p a_rOG b_rOH
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)]
180         >=_a13q a_rOA b_rOB
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)]
186         <=_a13r a_rOu b_rOv
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)]
192         <_a13s a_rOo b_rOp
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
200                          a#_rPM
201                          -> case con2tag_Foo#_rNP [c_taXG, a_taXE, b_taXF] b_rOZ of
202                               b#_rPO
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-}
208                                  else
209                                      if a#_rPM PrelGHC.<#{-7b-} b#_rPO then
210                                          PrelBase.LT{-rbj-}
211                                      else
212                                          PrelBase.GT{-rbk-}
213                      where
214                          {- rec -}
215                          AbsBinds
216                          [a113, a116, a117]
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-}
231                                              PrelBase.EQ{-r4K-}
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-}
241                                              PrelBase.EQ{-r4K-}
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-}
251                                              PrelBase.EQ{-r4K-}
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-}
261                                              PrelBase.EQ{-r4K-}
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-}
267                              cmp_eq_a13v _ _
268                                          = PrelErr.error{-87-}
269                                                PrelBase.Ordering{-3n-} "Urk! in TcGenDeriv"
270                          cmp_eq_a13u =
271                              cmp_eq_rP1 [c_taXG, a_taXE, b_taXF]
272                                  [d.Ord_a122, d.Ord_a123, d.Ord_a124]
273     d.Ord_aXB =
274         PrelBase.:Ord{-r1o-}
275             (Print002.Foo{-r52-} a_taXE b_taXF c_taXG) d.Eq_a126
276                                                        min_aXD
277                                                        max_aXU
278                                                        >_aY8
279                                                        >=_aYm
280                                                        <=_aYA
281                                                        <_aYO
282                                                        compare_aZ2
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] []
297
298
299 Print002.hs:34: 
300     Pattern match(es) are overlapped
301         in the definition of function `<<<<'
302             x y = ...
303
304 ghc: module version changed to 1; reason: no old .hi file
305 _interface_ Print002 1 302
306 _instance_modules_
307 IO PrelAddr PrelArr PrelBounded PrelCCall PrelForeign PrelNum
308 _usages_
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;
311 _exports_
312 Print002 .... ..... <<<< f1 f1a f2 f2a f3a f3b f3c f3d Bar(:Bar :Bar meth2 ///// meth1) Bar2(:Bar2 :Bar2) Foo(MkFoo1 :## MkFoo3 :***);
313 _instances_
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;
317 _declarations_
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 ;;