[project @ 1996-01-08 20:28:12 by partain]
[ghc-hetmet.git] / ghc / compiler / tests / deSugar / ds005.stderr
1 Desugared:
2 {- plain CoRec -}
3 MapPairs.mappairs :: for all d, e, f. (d -> e -> f) -> [d] -> [e] -> [f]
4 MapPairs.mappairs =
5     /\ t109 t112 t105 -> \ f.146 ds.147 ys.148 ->
6         let
7           fail.149 =
8               (error [t105])
9                   "\"ds005.hs\", line 10: pattern-matching failure [function binding]\n"S
10         in 
11           case ds.147 of {
12             Nil -> Nil! t105
13             (:) x.150 xs.151 ->
14                 case ys.148 of {
15                   Nil -> let f.152 = f.146 in  Nil! t105
16                   (:) y.153 ys.154 ->
17                       let xs.155 = xs.151 in
18                       let x.156 = x.150 in
19                       let f.157 = f.146
20                       in 
21                         (: t105)
22                             (f.157 x.156 y.153)
23                             ((((MapPairs.mappairs t109) t112) t105)
24                                  f.157 xs.155 ys.154)
25                 }
26           }
27 {- end plain CoRec -}
28 {- plain CoRec -}
29 MapPairs.mappairs' :: for all d, e, f. (d -> e -> f) -> [d] -> [e] -> [f]
30 MapPairs.mappairs' =
31     /\ t133 t136 t129 -> \ f.162 ds.163 ys.164 ->
32         let
33           fail.165 =
34               (error [t129])
35                   "\"ds005.hs\", line 15: pattern-matching failure [function binding]\n"S in
36         let
37           fail.174 =
38               let
39                 fail.171 =
40                     case ds.163 of {
41                       (:) x.166 xs.167 ->
42                           case ys.164 of {
43                             (:) y.168 ys.169 ->
44                                 let f.170 = f.162
45                                 in 
46                                   (: t129)
47                                       (f.170 x.166 y.168)
48                                       ((((MapPairs.mappairs' t133) t136) t129)
49                                            f.170 xs.167 ys.169)
50                             _ ->  fail.165
51                           }
52                       _ ->  fail.165
53                     }
54               in 
55                 case ys.164 of {
56                   Nil -> let x.172 = ds.163 in let f.173 = f.162 in  Nil! t129
57                   _ ->  fail.171
58                 }
59         in 
60           case ds.163 of {
61             Nil -> Nil! t129
62             _ ->  fail.174
63           }
64 {- end plain CoRec -}
65