[project @ 1997-09-04 12:54:24 by simonm]
[ghc-hetmet.git] / ghc / tests / deriving / should_compile / drv001.stderr
index e1e3a0e..98dbd15 100644 (file)
 
 ================================================================================
 Typechecked:
-{- nonrec -}
-{- nonrec -}
-E1{-r3K,x-}{i} =
-    _/\_ a{-r3A-} ->
-       E1{-r3K,x-}{i}
-           {_@_ a{-r3A-}}
-{- nonrec -}
-D1{-r6,x-}{i} =
-    _/\_ b{-r3C-} ->
-       D1{-r6,x-}{i}
-           {_@_ b{-r3C-}}
-D2{-r5,x-}{i} =
-    _/\_ b{-r3C-} -> \ tpl_B1 ->
-       D2{-r5,x-}{i}
-           {_@_ b{-r3C-} tpl_B1}
-{- nonrec -}
-C1{-rb,x-}{i} =
-    _/\_ a{-r3H-} b{-r3I-} -> \ tpl_B1 ->
-       C1{-rb,x-}{i}
-           {_@_ a{-r3H-} _@_ b{-r3I-} tpl_B1}
-C2{-ra,x-}{i} =
-    _/\_ a{-r3H-} b{-r3I-} -> \ tpl_B1 ->
-       C2{-ra,x-}{i}
-           {_@_ a{-r3H-} _@_ b{-r3I-} tpl_B1}
-C3{-rd,x-}{i} =
-    _/\_ a{-r3H-} b{-r3I-} -> \ tpl_B1 ->
-       C3{-rd,x-}{i}
-           {_@_ a{-r3H-} _@_ b{-r3I-} tpl_B1}
-{- rec -}
-AbsBinds [a{-a1fw-}] [] [([a{-a1fw-}], $d3{-r1fM,x-}, d.Eval_a15O)]
-    d.Eval_a15O =
-       ({-dict-} [] [])
-{- rec -}
-AbsBinds [b{-a1fx-}] [] [([b{-a1fx-}], $d4{-r1ge,x-}, d.Eval_a15U)]
-    d.Eval_a15U =
-       ({-dict-} [] [])
-{- rec -}
+E1{-r3N,x-}{i} = _/\_ a_tr3A -> E1{-r3N,x-}{i} {_@_ a_tr3A}
+D1{-rd,x-}{i} = _/\_ b_tr3C -> D1{-rd,x-}{i} {_@_ b_tr3C}
+D2{-rc,x-}{i} =
+    _/\_ b_tr3C -> \ tpl_B1 -> D2{-rc,x-}{i} {_@_ b_tr3C tpl_B1}
+C1{-r9,x-}{i} =
+    _/\_ a_tr3H b_tr3I -> \ tpl_B1 ->
+       C1{-r9,x-}{i} {_@_ a_tr3H _@_ b_tr3I tpl_B1}
+C2{-r8,x-}{i} =
+    _/\_ a_tr3H b_tr3I -> \ tpl_B1 ->
+       C2{-r8,x-}{i} {_@_ a_tr3H _@_ b_tr3I tpl_B1}
+C3{-rb,x-}{i} =
+    _/\_ a_tr3H b_tr3I -> \ tpl_B1 ->
+       C3{-rb,x-}{i} {_@_ a_tr3H _@_ b_tr3I tpl_B1}
+AbsBinds [ta18z] [] [([ta18z], $d3{-r18X,x-}, d.Eval_aZt)]
+    d.Eval_aZt = ({-dict-} [] [])
+AbsBinds [ta18A] [] [([ta18A], $d4{-r18Y,x-}, d.Eval_aZz)]
+    d.Eval_aZz = ({-dict-} [] [])
 AbsBinds
-[a{-a1fy-}, b{-a1fz-}]
+[ta18B, ta18C]
 []
-[([a{-a1fy-}, b{-a1fz-}], $d5{-r1gf,x-}, d.Eval_a161)]
-    d.Eval_a161 =
-       ({-dict-} [] [])
-{- rec -}
+[([ta18B, ta18C], $d5{-r18Z,x-}, d.Eval_aZG)]
+    d.Eval_aZG = ({-dict-} [] [])
+AbsBinds [ta100] [d.Eq_a11o] [([ta100], $d6{-r190,x-}, d.Read_aZM)]
+    d.Eq_a11G = PrelBase.$d8{-rbj,p-}
+    d.Eq_a11H = d.Eq_a11o
+    d.Read_a11E =
+       $d7{-r191,x-} [PrelBase.Int{-3g,W-}, ta100] [d.Eq_a11G, d.Eq_a11H]
+    readsPrec_a19o =
+       PrelRead.readsPrec{-rkH,p-} (X{-r3M,x-} PrelBase.Int{-3g,W-} ta100)
+           d.Read_a11E
+    readsPrec_a19p = readsPrec_a19q
+    AbsBinds [] [] [([], readsPrec_a19q, readsPrec_aZQ)]
+       ==_a19s = ==_a197
+       >>=_a19t = >>=_a198
+       return_a19u = return_a199
+       zero_a19v = zero_a19a
+       readsPrec_aZQ a_rX0 b_rX1
+                     = ++_a196 (Y{-r3L,x-} ta100, PrelBase.String{-rfZ,p-})
+                           (PrelRead.readParen{-rkX,p-}
+                                (Y{-r3L,x-} ta100) PrelBase.False{-58,w-}{i}
+                                                   \ c_rX3
+                                                     -> [(D1{-rd,x-}{i} ta100, d_rX5) |
+                                                             ("D1", d_rX5) <- PrelRead.lex{-rkK,p-} c_rX3]
+                                                   b_rX1)
+                           (PrelRead.readParen{-rkX,p-} (Y{-r3L,x-} ta100) a_rX0
+                                                                           >_a19b lit_a19c
+                                                                           \ c_rX7
+                                                                             -> [(D2{-rc,x-}{i}
+                                                                                      ta100 a1_rXb,
+                                                                                  b1_rXc) |
+                                                                                     ("D2", d_rX9) <- PrelRead.lex{-rkK,p-} c_rX7, (a1_rXb, b1_rXc) <- readsPrec_a19o PrelBase.I#{-5b,w-}{i} 10#
+                                                                                                                                                                      d_rX9]
+                                                                           b_rX1)
+    AbsBinds [] [] [([], readList_a19r, readList_a11j)]
+       readList_a11j = PrelRead.readList__{-rhB,p-}
+                           (Y{-r3L,x-} ta100) readsPrec_a19p PrelBase.I#{-5b,w-}{i} 0#
+    d.Read_aZM = ({-dict-} [] [readsPrec_a19q, readList_a19r])
 AbsBinds
-[b{-a178-}]
-[d.Eq_a17C]
-[([b{-a178-}], $d6{-r1gg,x-}, d.Read_a167)]
-    d.Eq_a17Y =
-       PrelBase.$d7{-rc5,p-}
-    d.Eq_a17Z =
-       d.Eq_a17C
-    d.Read_a17W =
-       $d7{-r1gl,x-}
-           [PrelBase.Int{-3g,p-}, b{-a178-}]
-           [d.Eq_a17Y, d.Eq_a17Z]
-    readsPrec_a1gk =
-       PrelRead.readsPrec{-rlS,p-}
-           (X{-r3N,x-} PrelBase.Int{-3g,p-} b{-a178-})
-           d.Read_a17W
-    readsPrec_a1gj =
-       readsPrec_a1gi
-    AbsBinds [] [] [([], readsPrec_a1gi, readsPrec_a16a)]
-       ==_a1gp =
-           ==_a1gc
-       >>=_a1go =
-           >>=_a1gb
-       return_a1gn =
-           return_a1ga
-       zero_a1gm =
-           zero_a1g9
-       readsPrec_a16a
-           a_r12Z b_r131
-                   =   ++_a1gd
-                           (Y{-r3M,x-} b{-a178-}, PrelBase.String{-rdl,p-})
-                           (PrelRead.readParen{-rmu,p-}
-                                (Y{-r3M,x-} b{-a178-})
-                                PrelBase.False{-58,p-}{i}
-                                \ c_r133  ->  [ (D1{-r6,x-}{i}
-                                                     b{-a178-},
-                                                 d_r135) |
-                                                  ("D1", d_r135) <- PrelRead.lex{-rmh,p-}
-                                                                        c_r133
-                                                  ]
-                                b_r131)
-                           (PrelRead.readParen{-rmu,p-}
-                                (Y{-r3M,x-} b{-a178-})
-                                a_r12Z >_a1g8 lit_a1g6
-                                \ c_r137  ->  [ (D2{-r5,x-}{i}
-                                                     b{-a178-}
-                                                     a1_r13b,
-                                                 b1_r13c) |
-                                                  ("D2", d_r139) <- PrelRead.lex{-rmh,p-}
-                                                                        c_r137, (a1_r13b, b1_r13c) <- readsPrec_a1gk
-                                                                                                          lit_a1g4
-                                                                                                          d_r139
-                                                  ]
-                                b_r131)
-    AbsBinds [] [] [([], readList_a1gh, readList_a17x)]
-       readList_a17x
-                   =   PrelRead.readList__{-rjw,p-}
-                           (Y{-r3M,x-} b{-a178-})
-                           readsPrec_a1gj
-                               lit_a1g2
-    d.Read_a167 =
-       ({-dict-} [] [readsPrec_a1gi, readList_a1gh])
-{- rec -}
+[ta124, ta125]
+[d.Eq_a14x, d.Eq_a14y]
+[([ta124, ta125], $d7{-r191,x-}, d.Read_a11Q)]
+    d.Eq_a14K = d.Eq_a14x
+    d.Read_a14I = $d1{-r194,x-} ta124 d.Eq_a14K
+    readsPrec_a19w =
+       PrelRead.readsPrec{-rkH,p-} (T{-r3K,x-} ta124) d.Read_a14I
+    d.Eq_a14U = d.Eq_a14y
+    d.Read_a14S = $d6{-r190,x-} ta125 d.Eq_a14U
+    readsPrec_a19x =
+       PrelRead.readsPrec{-rkH,p-} (Y{-r3L,x-} ta125) d.Read_a14S
+    d.Eq_a14Y = d.Eq_a14y
+    d.Eq_a14Z = d.Eq_a14x
+    d.Read_a14W = $d7{-r191,x-} [ta125, ta124] [d.Eq_a14Y, d.Eq_a14Z]
+    readsPrec_a19y =
+       PrelRead.readsPrec{-rkH,p-} (X{-r3M,x-} ta125 ta124) d.Read_a14W
+    readsPrec_a19z = readsPrec_a19A
+    AbsBinds [] [] [([], readsPrec_a19A, readsPrec_a11U)]
+       ++_a19C = ++_a19d
+       >_a19D = >_a19e
+       lit_a19E = lit_a19f
+       ==_a19F = ==_a19g
+       >>=_a19G = >>=_a19h
+       return_a19H = return_a19i
+       zero_a19I = zero_a19j
+       >_a19J = >_a19e
+       lit_a19K = lit_a19f
+       ==_a19L = ==_a19g
+       >>=_a19M = >>=_a19h
+       return_a19N = return_a19i
+       zero_a19O = zero_a19j
+       readsPrec_a11U a_rXk b_rXl
+                      = ++_a19d (X{-r3M,x-} ta124 ta125, PrelBase.String{-rfZ,p-})
+                            (PrelRead.readParen{-rkX,p-} (X{-r3M,x-} ta124 ta125) a_rXk
+                                                                                  >_a19e lit_a19f
+                                                                                  \ c_rXn
+                                                                                    -> [(C1{-r9,x-}{i}
+                                                                                             [ta124, ta125] a1_rXr,
+                                                                                         b1_rXs) |
+                                                                                            ("C1", d_rXp) <- PrelRead.lex{-rkK,p-} c_rXn, (a1_rXr, b1_rXs) <- readsPrec_a19w PrelBase.I#{-5b,w-}{i} 10#
+                                                                                                                                                                             d_rXp]
+                                                                                  b_rXl)
+                            (++_a19C (X{-r3M,x-} ta124 ta125, PrelBase.String{-rfZ,p-})
+                                 (PrelRead.readParen{-rkX,p-} (X{-r3M,x-} ta124 ta125) a_rXk
+                                                                                       >_a19D lit_a19E
+                                                                                       \ c_rXu
+                                                                                         -> [(C2{-r8,x-}{i}
+                                                                                                  [ta124, ta125] a1_rXy,
+                                                                                              b1_rXz) |
+                                                                                                 ("C2", d_rXw) <- PrelRead.lex{-rkK,p-} c_rXu, (a1_rXy, b1_rXz) <- readsPrec_a19x PrelBase.I#{-5b,w-}{i} 10#
+                                                                                                                                                                                  d_rXw]
+                                                                                       b_rXl)
+                                 (PrelRead.readParen{-rkX,p-} (X{-r3M,x-} ta124 ta125) a_rXk
+                                                                                       >_a19J lit_a19K
+                                                                                       \ c_rXB
+                                                                                         -> [(C3{-rb,x-}{i}
+                                                                                                  [ta124, ta125] a1_rXF,
+                                                                                              b1_rXG) |
+                                                                                                 ("C3", d_rXD) <- PrelRead.lex{-rkK,p-} c_rXB, (a1_rXF, b1_rXG) <- readsPrec_a19y PrelBase.I#{-5b,w-}{i} 10#
+                                                                                                                                                                                  d_rXD]
+                                                                                       b_rXl))
+    AbsBinds [] [] [([], readList_a19B, readList_a14s)]
+       readList_a14s = PrelRead.readList__{-rhB,p-}
+                           (X{-r3M,x-} ta124 ta125) readsPrec_a19z PrelBase.I#{-5b,w-}{i} 0#
+    d.Read_a11Q = ({-dict-} [] [readsPrec_a19A, readList_a19B])
 AbsBinds
-[a{-a1ah-}, b{-a1ai-}]
-[d.Eq_a1aM, d.Eq_a1aN]
-[([a{-a1ah-}, b{-a1ai-}], $d7{-r1gl,x-}, d.Read_a18a)]
-    d.Eq_a1b3 =
-       d.Eq_a1aM
-    d.Read_a1b1 =
-       $d1{-r1gw,x-}
-           a{-a1ah-}
-           d.Eq_a1b3
-    readsPrec_a1gv =
-       PrelRead.readsPrec{-rlS,p-}
-           (T{-r3L,x-} a{-a1ah-})
-           d.Read_a1b1
-    d.Eq_a1be =
-       d.Eq_a1aN
-    d.Read_a1bc =
-       $d6{-r1gg,x-}
-           b{-a1ai-}
-           d.Eq_a1be
-    readsPrec_a1gu =
-       PrelRead.readsPrec{-rlS,p-}
-           (Y{-r3M,x-} b{-a1ai-})
-           d.Read_a1bc
-    d.Eq_a1bi =
-       d.Eq_a1aN
-    d.Eq_a1bj =
-       d.Eq_a1aM
-    d.Read_a1bg =
-       $d7{-r1gl,x-}
-           [b{-a1ai-}, a{-a1ah-}]
-           [d.Eq_a1bi, d.Eq_a1bj]
-    readsPrec_a1gt =
-       PrelRead.readsPrec{-rlS,p-}
-           (X{-r3N,x-} b{-a1ai-} a{-a1ah-})
-           d.Read_a1bg
-    readsPrec_a1gs =
-       readsPrec_a1gr
-    AbsBinds [] [] [([], readsPrec_a1gr, readsPrec_a18d)]
-       ++_a1gL =
-           ++_a1g1
-       >_a1gK =
-           >_a1g0
-       lit_a1gJ =
-           lit_a1fZ
-       ==_a1gI =
-           ==_a1fY
-       lit_a1gH =
-           lit_a1fX
-       >>=_a1gG =
-           >>=_a1fW
-       return_a1gF =
-           return_a1fV
-       zero_a1gE =
-           zero_a1fU
-       >_a1gD =
-           >_a1g0
-       lit_a1gC =
-           lit_a1fZ
-       ==_a1gB =
-           ==_a1fY
-       lit_a1gA =
-           lit_a1fX
-       >>=_a1gz =
-           >>=_a1fW
-       return_a1gy =
-           return_a1fV
-       zero_a1gx =
-           zero_a1fU
-       readsPrec_a18d
-           a_r13j b_r13l
-                   =   ++_a1g1
-                           (X{-r3N,x-} a{-a1ah-} b{-a1ai-}, PrelBase.String{-rdl,p-})
-                           (PrelRead.readParen{-rmu,p-}
-                                (X{-r3N,x-} a{-a1ah-} b{-a1ai-})
-                                a_r13j >_a1g0 lit_a1fZ
-                                \ c_r13n  ->  [ (C1{-rb,x-}{i}
-                                                     [a{-a1ah-}, b{-a1ai-}]
-                                                     a1_r13r,
-                                                 b1_r13s) |
-                                                  ("C1", d_r13p) <- PrelRead.lex{-rmh,p-}
-                                                                        c_r13n, (a1_r13r, b1_r13s) <- readsPrec_a1gv
-                                                                                                          lit_a1fX
-                                                                                                          d_r13p
-                                                  ]
-                                b_r13l)
-                           (++_a1gL
-                                (X{-r3N,x-} a{-a1ah-} b{-a1ai-}, PrelBase.String{-rdl,p-})
-                                (PrelRead.readParen{-rmu,p-}
-                                     (X{-r3N,x-} a{-a1ah-} b{-a1ai-})
-                                     a_r13j >_a1gK lit_a1gJ
-                                     \ c_r13u  ->  [ (C2{-ra,x-}{i}
-                                                          [a{-a1ah-}, b{-a1ai-}]
-                                                          a1_r13y,
-                                                      b1_r13z) |
-                                                       ("C2", d_r13w) <- PrelRead.lex{-rmh,p-}
-                                                                             c_r13u, (a1_r13y, b1_r13z) <- readsPrec_a1gu
-                                                                                                               lit_a1gH
-                                                                                                               d_r13w
-                                                       ]
-                                     b_r13l)
-                                (PrelRead.readParen{-rmu,p-}
-                                     (X{-r3N,x-} a{-a1ah-} b{-a1ai-})
-                                     a_r13j >_a1gD lit_a1gC
-                                     \ c_r13B  ->  [ (C3{-rd,x-}{i}
-                                                          [a{-a1ah-}, b{-a1ai-}]
-                                                          a1_r13F,
-                                                      b1_r13G) |
-                                                       ("C3", d_r13D) <- PrelRead.lex{-rmh,p-}
-                                                                             c_r13B, (a1_r13F, b1_r13G) <- readsPrec_a1gt
-                                                                                                               lit_a1gA
-                                                                                                               d_r13D
-                                                       ]
-                                     b_r13l))
-    AbsBinds [] [] [([], readList_a1gq, readList_a1aH)]
-       readList_a1aH
-                   =   PrelRead.readList__{-rjw,p-}
-                           (X{-r3N,x-} a{-a1ah-} b{-a1ai-})
-                           readsPrec_a1gs
-                               lit_a1fT
-    d.Read_a18a =
-       ({-dict-} [] [readsPrec_a1gr, readList_a1gq])
-{- rec -}
+[ta15f]
+[d.Eq_a15F]
+[([ta15f], $d8{-r192,x-}, d.Show_a157)]
+    d.Eq_a15N = PrelBase.$d8{-rbj,p-}
+    d.Eq_a15O = d.Eq_a15F
+    d.Show_a15L =
+       $d9{-r193,x-} [PrelBase.Int{-3g,W-}, ta15f] [d.Eq_a15N, d.Eq_a15O]
+    showsPrec_a19P =
+       PrelBase.showsPrec{-rfW,p-} (X{-r3M,x-} PrelBase.Int{-3g,W-} ta15f)
+           d.Show_a15L
+    showsPrec_a19Q = showsPrec_a19R
+    AbsBinds [] [] [([], showsPrec_a19R, showsPrec_a15b)]
+       showsPrec_a15b a_rXO D1{-rd,x-}{i}
+                      = PrelBase.showString{-rgN,p-} "D1"
+       showsPrec_a15b a_rXQ (D2{-rc,x-}{i} b1_rXR)
+                      = PrelBase.showParen{-rgK,p-} a_rXQ >=_a19k lit_a19l
+                                                    PrelBase..{-rfC,p-}
+                                                        [PrelBase.String{-rfZ,p-}, PrelBase.String{-rfZ,p-}, PrelBase.String{-rfZ,p-}] PrelBase.showString{-rgN,p-} "D2 "
+                                                                                                                                       showsPrec_a19P PrelBase.I#{-5b,w-}{i} 10#
+                                                                                                                                                      b1_rXR
+    AbsBinds [] [] [([], showList_a19S, showList_a15A)]
+       showList_a15A = PrelBase.showList__{-r3J,p-}
+                           (Y{-r3L,x-} ta15f) showsPrec_a19Q PrelBase.I#{-5b,w-}{i} 0#
+    d.Show_a157 = ({-dict-} [] [showsPrec_a19R, showList_a19S])
 AbsBinds
-[b{-a1bz-}]
-[d.Eq_a1c4]
-[([b{-a1bz-}], $d8{-r1gM,x-}, d.Show_a1bs)]
-    d.Eq_a1cg =
-       PrelBase.$d7{-rc5,p-}
-    d.Eq_a1ch =
-       d.Eq_a1c4
-    d.Show_a1ce =
-       $d9{-r1gR,x-}
-           [PrelBase.Int{-3g,p-}, b{-a1bz-}]
-           [d.Eq_a1cg, d.Eq_a1ch]
-    showsPrec_a1gQ =
-       PrelBase.showsPrec{-rdi,p-}
-           (X{-r3N,x-} PrelBase.Int{-3g,p-} b{-a1bz-})
-           d.Show_a1ce
-    showsPrec_a1gP =
-       showsPrec_a1gO
-    AbsBinds [] [] [([], showsPrec_a1gO, showsPrec_a1bv)]
-       lit_a1gS =
-           lit_a1fR
-       showsPrec_a1bv
-           a_r13N D1{-r6,x-}{i}
-                   =   PrelBase.showString{-rhV,p-}
-                           "D1"
-       showsPrec_a1bv
-           a_r13Q (D2{-r5,x-}{i} b1_r13S)
-                   =   PrelBase.showParen{-rhS,p-}
-                           a_r13Q >=_a1fS lit_a1fR
-                           PrelBase..{-rd1,p-}
-                               [PrelBase.String{-rdl,p-}, PrelBase.String{-rdl,p-}, PrelBase.String{-rdl,p-}]
-                               PrelBase.showString{-rhV,p-}
-                                   "D2 "
-                               showsPrec_a1gQ
-                                   lit_a1gS b1_r13S
-    AbsBinds [] [] [([], showList_a1gN, showList_a1bZ)]
-       showList_a1bZ
-                   =   PrelBase.showList__{-r3J,p-}
-                           (Y{-r3M,x-} b{-a1bz-})
-                           showsPrec_a1gP
-                               lit_a1fQ
-    d.Show_a1bs =
-       ({-dict-} [] [showsPrec_a1gO, showList_a1gN])
-{- rec -}
+[ta167, ta16a]
+[d.Eq_a171, d.Eq_a172]
+[([ta167, ta16a], $d9{-r193,x-}, d.Show_a15X)]
+    d.Eq_a17a = d.Eq_a171
+    d.Show_a178 = $d2{-r195,x-} ta167 d.Eq_a17a
+    showsPrec_a19T =
+       PrelBase.showsPrec{-rfW,p-} (T{-r3K,x-} ta167) d.Show_a178
+    d.Eq_a17e = d.Eq_a172
+    d.Show_a17c = $d8{-r192,x-} ta16a d.Eq_a17e
+    showsPrec_a19U =
+       PrelBase.showsPrec{-rfW,p-} (Y{-r3L,x-} ta16a) d.Show_a17c
+    d.Eq_a17i = d.Eq_a172
+    d.Eq_a17j = d.Eq_a171
+    d.Show_a17g = $d9{-r193,x-} [ta16a, ta167] [d.Eq_a17i, d.Eq_a17j]
+    showsPrec_a19V =
+       PrelBase.showsPrec{-rfW,p-} (X{-r3M,x-} ta16a ta167) d.Show_a17g
+    showsPrec_a19W = showsPrec_a19X
+    AbsBinds [] [] [([], showsPrec_a19X, showsPrec_a161)]
+       >=_a19Z = >=_a19m
+       lit_a1a0 = lit_a19n
+       >=_a1a1 = >=_a19m
+       lit_a1a2 = lit_a19n
+       showsPrec_a161 a_rXZ (C1{-r9,x-}{i} b1_rY0)
+                      = PrelBase.showParen{-rgK,p-} a_rXZ >=_a19m lit_a19n
+                                                    PrelBase..{-rfC,p-}
+                                                        [PrelBase.String{-rfZ,p-}, PrelBase.String{-rfZ,p-}, PrelBase.String{-rfZ,p-}] PrelBase.showString{-rgN,p-} "C1 "
+                                                                                                                                       showsPrec_a19T PrelBase.I#{-5b,w-}{i} 10#
+                                                                                                                                                      b1_rY0
+       showsPrec_a161 a_rY2 (C2{-r8,x-}{i} b1_rY3)
+                      = PrelBase.showParen{-rgK,p-} a_rY2 >=_a19Z lit_a1a0
+                                                    PrelBase..{-rfC,p-}
+                                                        [PrelBase.String{-rfZ,p-}, PrelBase.String{-rfZ,p-}, PrelBase.String{-rfZ,p-}] PrelBase.showString{-rgN,p-} "C2 "
+                                                                                                                                       showsPrec_a19U PrelBase.I#{-5b,w-}{i} 10#
+                                                                                                                                                      b1_rY3
+       showsPrec_a161 a_rY5 (C3{-rb,x-}{i} b1_rY6)
+                      = PrelBase.showParen{-rgK,p-} a_rY5 >=_a1a1 lit_a1a2
+                                                    PrelBase..{-rfC,p-}
+                                                        [PrelBase.String{-rfZ,p-}, PrelBase.String{-rfZ,p-}, PrelBase.String{-rfZ,p-}] PrelBase.showString{-rgN,p-} "C3 "
+                                                                                                                                       showsPrec_a19V PrelBase.I#{-5b,w-}{i} 10#
+                                                                                                                                                      b1_rY6
+    AbsBinds [] [] [([], showList_a19Y, showList_a16W)]
+       showList_a16W = PrelBase.showList__{-r3J,p-}
+                           (X{-r3M,x-} ta167 ta16a) showsPrec_a19W PrelBase.I#{-5b,w-}{i} 0#
+    d.Show_a15X = ({-dict-} [] [showsPrec_a19X, showList_a19Y])
 AbsBinds
-[a{-a1cA-}, b{-a1cD-}]
-[d.Eq_a1dJ, d.Eq_a1dK]
-[([a{-a1cA-}, b{-a1cD-}], $d9{-r1gR,x-}, d.Show_a1cr)]
-    d.Eq_a1dW =
-       d.Eq_a1dJ
-    d.Show_a1dU =
-       $d2{-r1gZ,x-}
-           a{-a1cA-}
-           d.Eq_a1dW
-    showsPrec_a1gY =
-       PrelBase.showsPrec{-rdi,p-}
-           (T{-r3L,x-} a{-a1cA-})
-           d.Show_a1dU
-    d.Eq_a1e0 =
-       d.Eq_a1dK
-    d.Show_a1dY =
-       $d8{-r1gM,x-}
-           b{-a1cD-}
-           d.Eq_a1e0
-    showsPrec_a1gX =
-       PrelBase.showsPrec{-rdi,p-}
-           (Y{-r3M,x-} b{-a1cD-})
-           d.Show_a1dY
-    d.Eq_a1e4 =
-       d.Eq_a1dK
-    d.Eq_a1e5 =
-       d.Eq_a1dJ
-    d.Show_a1e2 =
-       $d9{-r1gR,x-}
-           [b{-a1cD-}, a{-a1cA-}]
-           [d.Eq_a1e4, d.Eq_a1e5]
-    showsPrec_a1gW =
-       PrelBase.showsPrec{-rdi,p-}
-           (X{-r3N,x-} b{-a1cD-} a{-a1cA-})
-           d.Show_a1e2
-    showsPrec_a1gV =
-       showsPrec_a1gU
-    AbsBinds [] [] [([], showsPrec_a1gU, showsPrec_a1cu)]
-       lit_a1h6 =
-           lit_a1fO
-       >=_a1h5 =
-           >=_a1fP
-       lit_a1h4 =
-           lit_a1fO
-       lit_a1h3 =
-           lit_a1fO
-       >=_a1h2 =
-           >=_a1fP
-       lit_a1h1 =
-           lit_a1fO
-       lit_a1h0 =
-           lit_a1fO
-       showsPrec_a1cu
-           a_r13Z (C1{-rb,x-}{i} b1_r141)
-                   =   PrelBase.showParen{-rhS,p-}
-                           a_r13Z >=_a1fP lit_a1fO
-                           PrelBase..{-rd1,p-}
-                               [PrelBase.String{-rdl,p-}, PrelBase.String{-rdl,p-}, PrelBase.String{-rdl,p-}]
-                               PrelBase.showString{-rhV,p-}
-                                   "C1 "
-                               showsPrec_a1gY
-                                   lit_a1h6 b1_r141
-       showsPrec_a1cu
-           a_r143 (C2{-ra,x-}{i} b1_r145)
-                   =   PrelBase.showParen{-rhS,p-}
-                           a_r143 >=_a1h5 lit_a1h4
-                           PrelBase..{-rd1,p-}
-                               [PrelBase.String{-rdl,p-}, PrelBase.String{-rdl,p-}, PrelBase.String{-rdl,p-}]
-                               PrelBase.showString{-rhV,p-}
-                                   "C2 "
-                               showsPrec_a1gX
-                                   lit_a1h3 b1_r145
-       showsPrec_a1cu
-           a_r147 (C3{-rd,x-}{i} b1_r149)
-                   =   PrelBase.showParen{-rhS,p-}
-                           a_r147 >=_a1h2 lit_a1h1
-                           PrelBase..{-rd1,p-}
-                               [PrelBase.String{-rdl,p-}, PrelBase.String{-rdl,p-}, PrelBase.String{-rdl,p-}]
-                               PrelBase.showString{-rhV,p-}
-                                   "C3 "
-                               showsPrec_a1gW
-                                   lit_a1h0 b1_r149
-    AbsBinds [] [] [([], showList_a1gT, showList_a1dE)]
-       showList_a1dE
-                   =   PrelBase.showList__{-r3J,p-}
-                           (X{-r3N,x-} a{-a1cA-} b{-a1cD-})
-                           showsPrec_a1gV
-                               lit_a1fN
-    d.Show_a1cr =
-       ({-dict-} [] [showsPrec_a1gU, showList_a1gT])
-{- rec -}
+[ta17y]
+[d.Eq_a17H]
+[([ta17y], $d1{-r194,x-}, d.Read_a17r)]
+    d.Read_a17L = d.Read_a17r
+    $mreadList_a1a3 =
+       PrelRead.$mreadList{-rkF,p-} (T{-r3K,x-} ta17y) d.Read_a17L
+    AbsBinds [] [] [([], readsPrec_a1a4, readsPrec_a17v)]
+       readsPrec_a17v
+           = IOBase.error{-87,w-}
+                 (PrelBase.Int{-3g,W-}
+                  -> PrelBase.String{-rfZ,p-}
+                  -> [(T{-r3K,x-} ta17y, PrelBase.String{-rfZ,p-})]) "read"
+    AbsBinds [] [] [([], readList_a1a5, readList_a17E)]
+       readList_a17E = $mreadList_a1a3
+    d.Read_a17r = ({-dict-} [] [readsPrec_a1a4, readList_a1a5])
 AbsBinds
-[a{-a1ek-}]
-[d.Eq_a1es]
-[([a{-a1ek-}], $d1{-r1gw,x-}, d.Read_a1ee)]
-    d.Read_a1ew =
-       d.Read_a1ee
-    $mreadList_a1h8 =
-       PrelRead.$mreadList{-rlO,p-}
-           (T{-r3L,x-} a{-a1ek-})
-           d.Read_a1ew
-    AbsBinds [] [] [([], readsPrec_a1h7, readsPrec_a1eh)]
-       readsPrec_a1eh
-           =   IOBase.error{-87,p-}
-                   (PrelBase.Int{-3g,p-}
-                    -> PrelBase.String{-rdl,p-}
-                    -> [(T{-r3L,x-} a{-a1ek-}, PrelBase.String{-rdl,p-})])
-                   "read"
-    AbsBinds [] [] [([], readList_a1en, readList_a1ep)]
-       readList_a1ep
-           =   $mreadList_a1h8
-    d.Read_a1ee =
-       ({-dict-} [] [readsPrec_a1h7, readList_a1en])
-{- rec -}
-AbsBinds
-[a{-a1eJ-}]
-[d.Eq_a1eR]
-[([a{-a1eJ-}], $d2{-r1gZ,x-}, d.Show_a1eD)]
-    d.Show_a1eV =
-       d.Show_a1eD
-    $mshowList_a1ha =
-       PrelBase.$mshowList{-rcA,p-}
-           (T{-r3L,x-} a{-a1eJ-})
-           d.Show_a1eV
-    AbsBinds [] [] [([], showsPrec_a1h9, showsPrec_a1eG)]
-       showsPrec_a1eG
-           =   IOBase.error{-87,p-}
-                   (PrelBase.Int{-3g,p-}
-                    -> T{-r3L,x-} a{-a1eJ-}
-                    -> PrelBase.String{-rdl,p-}
-                    -> PrelBase.String{-rdl,p-})
-                   "show"
-    AbsBinds [] [] [([], showList_a1eM, showList_a1eO)]
-       showList_a1eO
-           =   $mshowList_a1ha
-    d.Show_a1eD =
-       ({-dict-} [] [showsPrec_a1h9, showList_a1eM])
-{- nonrec -}
-d.MonadPlus_a1eY =
-    PrelBase.$d22{-rbr,p-}
-++_a1gd =
-    PrelBase.++{-rfN,p-}
-       PrelBase.[]{-3j,p-}
-       d.MonadPlus_a1eY
-d.Eq_a1f3 =
-    PrelBase.$d33{-rbD,p-}
-d.Eq_a1f1 =
-    PrelBase.$d27{-rbw,p-}
-       PrelBase.Char{-38,p-}
-       d.Eq_a1f3
-==_a1gc =
-    PrelBase.=={-8Y,p-}
-       [PrelBase.Char{-38,p-}]
-       d.Eq_a1f1
-d.Monad_a1f6 =
-    PrelBase.$d24{-rbt,p-}
->>=_a1gb =
-    PrelBase.>>={-811,p-}
-       PrelBase.[]{-3j,p-}
-       d.Monad_a1f6
-d.Monad_a1f9 =
-    d.Monad_a1f6
-return_a1ga =
-    PrelBase.return{-816,p-}
-       PrelBase.[]{-3j,p-}
-       d.Monad_a1f9
-d.MonadZero_a1fb =
-    PrelBase.$d23{-rbs,p-}
-zero_a1g9 =
-    PrelBase.zero{-810,p-}
-       PrelBase.[]{-3j,p-}
-       d.MonadZero_a1fb
-d.Ord_a1fe =
-    PrelBase.$d6{-rc4,p-}
->_a1g8 =
-    PrelBase.>{-rdf,p-}
-       PrelBase.Int{-3g,p-}
-       d.Ord_a1fe
-d.Num_a1fi =
-    PrelBase.$d3{-rbz,p-}
-fromInt_a1g7 =
-    PrelBase.fromInt{-8R,p-}
-       PrelBase.Int{-3g,p-}
-       d.Num_a1fi
-lit_a1g6 =
-    fromInt_a1g7
-       PrelBase.I#{-5b,p-}{i}
-           9#
-fromInt_a1g5 =
-    fromInt_a1g7
-lit_a1g4 =
-    fromInt_a1g5
-       PrelBase.I#{-5b,p-}{i}
-           10#
-fromInt_a1g3 =
-    fromInt_a1g7
-lit_a1g2 =
-    fromInt_a1g3
-       PrelBase.I#{-5b,p-}{i}
-           0#
-++_a1g1 =
-    ++_a1gd
->_a1g0 =
-    >_a1g8
-lit_a1fZ =
-    lit_a1g6
-==_a1fY =
-    ==_a1gc
-lit_a1fX =
-    lit_a1g4
->>=_a1fW =
-    >>=_a1gb
-return_a1fV =
-    return_a1ga
-zero_a1fU =
-    zero_a1g9
-lit_a1fT =
-    lit_a1g2
-d.Ord_a1fn =
-    d.Ord_a1fe
->=_a1fS =
-    PrelBase.>={-8Z,p-}
-       PrelBase.Int{-3g,p-}
-       d.Ord_a1fn
-lit_a1fR =
-    lit_a1g4
-lit_a1fQ =
-    lit_a1g2
->=_a1fP =
-    >=_a1fS
-lit_a1fO =
-    lit_a1g4
-lit_a1fN =
-    lit_a1g2
+[ta17Z]
+[d.Eq_a188]
+[([ta17Z], $d2{-r195,x-}, d.Show_a17S)]
+    d.Show_a18c = d.Show_a17S
+    $mshowList_a1a6 =
+       PrelBase.$mshowList{-rfz,p-} (T{-r3K,x-} ta17Z) d.Show_a18c
+    AbsBinds [] [] [([], showsPrec_a1a7, showsPrec_a17W)]
+       showsPrec_a17W
+           = IOBase.error{-87,w-}
+                 (PrelBase.Int{-3g,W-}
+                  -> T{-r3K,x-} ta17Z
+                  -> PrelBase.String{-rfZ,p-}
+                  -> PrelBase.String{-rfZ,p-}) "show"
+    AbsBinds [] [] [([], showList_a1a8, showList_a185)]
+       showList_a185 = $mshowList_a1a6
+    d.Show_a17S = ({-dict-} [] [showsPrec_a1a7, showList_a1a8])
+d.MonadPlus_a18f = PrelBase.$d23{-raE,p-}
+++_a196 = PrelBase.++{-rfK,p-} PrelBase.[]{-3j,W-} d.MonadPlus_a18f
+d.Eq_a18k = PrelBase.$d34{-raQ,p-}
+d.Eq_a18i = PrelBase.$d28{-raJ,p-} PrelBase.Char{-38,W-} d.Eq_a18k
+==_a197 = PrelBase.=={-8Y,p-} [PrelBase.Char{-38,W-}] d.Eq_a18i
+d.Monad_a18n = PrelBase.$d25{-raG,p-}
+>>=_a198 = PrelBase.>>={-811,p-} PrelBase.[]{-3j,W-} d.Monad_a18n
+d.Monad_a18q = d.Monad_a18n
+return_a199 =
+    PrelBase.return{-816,p-} PrelBase.[]{-3j,W-} d.Monad_a18q
+d.MonadZero_a18s = PrelBase.$d24{-raF,p-}
+zero_a19a =
+    PrelBase.zero{-810,p-} PrelBase.[]{-3j,W-} d.MonadZero_a18s
+d.Ord_a18v = PrelBase.$d7{-rbi,p-}
+>_a19b = PrelBase.>{-rfT,p-} PrelBase.Int{-3g,W-} d.Ord_a18v
+lit_a19c = PrelBase.I#{-5b,w-}{i} 9#
+++_a19d = ++_a196
+>_a19e = >_a19b
+lit_a19f = lit_a19c
+==_a19g = ==_a197
+>>=_a19h = >>=_a198
+return_a19i = return_a199
+zero_a19j = zero_a19a
+d.Ord_a18y = d.Ord_a18v
+>=_a19k = PrelBase.>={-8Z,p-} PrelBase.Int{-3g,W-} d.Ord_a18y
+lit_a19l = PrelBase.I#{-5b,w-}{i} 10#
+>=_a19m = >=_a19k
+lit_a19n = lit_a19l
 ghc: module version changed to 1; reason: no old .hi file
+_interface_ ShouldSucceed 1
+_instance_modules_
+ArrBase IO PrelNum
+_usages_
+PrelBase 1 :: $d1 1 $d12 1 $d15 1 $d16 1 $d2 1 $d22 1 $d23 1 $d24 1 $d25 1 $d27 1 $d28 1 $d3 1 $d33 1 $d34 1 $d35 1 $d38 1 $d39 1 $d4 1 $d40 1 $d42 1 $d43 1 $d45 1 $d46 1 $d47 1 $d50 1 $d51 1 $d52 1 $d55 1 $d56 1 $d7 1 $d8 1 $d9 1 $m- 1 $m/= 1 $m< 1 $m<= 1 $m> 1 $m>= 1 $m>> 1 $mcompare 1 $mfromInt 1 $mmax 1 $mmin 1 $mshowList 1 . 1 showList__ 1 showParen 1 showSpace 1 showString 1 Eq 1 Eval 1 Monad 1 MonadPlus 1 MonadZero 1 Num 1 Ord 1 Ordering 1 Show 1 ShowS 1 String 1;
+PrelNum 1 :: $d10 1 $d16 1 $d17 1 $d18 1 $d29 1 $d33 1 $d34 1 $d35 1;
+PrelRead 1 :: $d10 1 $d11 1 $d14 1 $d15 1 $d16 1 $d4 1 $d5 1 $d6 1 $d8 1 $mreadList 1 lex 1 readList__ 1 readParen 1 Read 1 ReadS 1;
+PrelTup 1 :: $d13 1 $d4 1 $d49 1 $d9 1;
+_exports_
+ShouldSucceed T(E1) X(C1 C2 C3) Y(D1 D2);
+_instances_
+instance _forall_ [a] {PrelBase.Eq a} => {PrelRead.Read (T a)} = $d1;
+instance _forall_ [a] {PrelBase.Eq a} => {PrelBase.Show (T a)} = $d2;
+instance _forall_ [a] => {PrelBase.Eval (T a)} = $d3;
+instance _forall_ [b] => {PrelBase.Eval (Y b)} = $d4;
+instance _forall_ [a b] => {PrelBase.Eval (X a b)} = $d5;
+instance _forall_ [b] {PrelBase.Eq b} => {PrelRead.Read (Y b)} = $d6;
+instance _forall_ [a b] {PrelBase.Eq a, PrelBase.Eq b} => {PrelRead.Read (X a b)} = $d7;
+instance _forall_ [b] {PrelBase.Eq b} => {PrelBase.Show (Y b)} = $d8;
+instance _forall_ [a b] {PrelBase.Eq a, PrelBase.Eq b} => {PrelBase.Show (X a b)} = $d9;
+_declarations_
+1 $d1 _:_ _forall_ [a] {PrelBase.Eq a} => {PrelRead.Read (T a)} ;;
+1 $d2 _:_ _forall_ [a] {PrelBase.Eq a} => {PrelBase.Show (T a)} ;;
+1 $d3 _:_ _forall_ [a] => {PrelBase.Eval (T a)} ;;
+1 $d4 _:_ _forall_ [b] => {PrelBase.Eval (Y b)} ;;
+1 $d5 _:_ _forall_ [a b] => {PrelBase.Eval (X a b)} ;;
+1 $d6 _:_ _forall_ [b] {PrelBase.Eq b} => {PrelRead.Read (Y b)} ;;
+1 $d7 _:_ _forall_ [a b] {PrelBase.Eq a, PrelBase.Eq b} => {PrelRead.Read (X a b)} ;;
+1 $d8 _:_ _forall_ [b] {PrelBase.Eq b} => {PrelBase.Show (Y b)} ;;
+1 $d9 _:_ _forall_ [a b] {PrelBase.Eq a, PrelBase.Eq b} => {PrelBase.Show (X a b)} ;;
+1 data T a = E1 ;
+1 data X a b = C1 (T a) |  C2 (Y b) |  C3 (X b a) ;
+1 data Y b = D1 |  D2 (X PrelBase.Int b) ;