-Desugared:
-{- plain CoRec -}
-Test.nodups :: for all d. <Eq d> -> [d] -> [d]
-Test.nodups =
- /\ t95 -> \ dict.90 ds.103 ->
- let
- fail.104 =
- (error [t95])
- "\"ds004.hs\", line 9: pattern-matching failure [function binding]\n"S
- in
- case ds.103 of {
- Nil -> Nil! t95
- (:) x.105 ds.106 ->
- case ds.106 of {
- Nil -> :! t95 x.105 (Nil! t95)
- (:) x.107 xs.108 ->
- let y.109 = x.105
- in
- case ((== t95) dict.90 y.109 x.107) of {
- True ->
- (Test.nodups t95) dict.90 ((: t95) x.107 xs.108)
- False ->
- (: t95)
- y.109
- ((Test.nodups t95)
- dict.90 ((: t95) x.107 xs.108))
- }
- }
- }
-{- end plain CoRec -}
+ds004.hs:6:
+ Warning: Possibly incomplete patterns
+ in the definition of function `nodups'
+
+================================================================================
+Desugared:
+Rec {
+nodups{-r3j,x-} ::
+ _forall_
+ [t{-aGj-}]
+ =>
+ {PrelBase.Eq{-23,p-} t{-aGj-}} -> [t{-aGj-}] -> [t{-aGj-}]
+{-# L #-}
+nodups{-r3j,x-} =
+ _/\_ t{-aGj-} -> \ d.Eq_aGz ::
+ {PrelBase.Eq{-23,p-} t{-aGj-}}
+ {-# L #-}
+ d.Eq_aGz ->
+ _letrec_ {
+ ==_aJI ::
+ t{-aGj-} -> t{-aGj-} -> PrelBase.Bool{-34,p-}
+ {-# L #-}
+ ==_aJI =
+ PrelBase.=={-8Y,p-}
+ _@_ t{-aGj-} d.Eq_aGz;
+ nodups_aG4 ::
+ [t{-aGj-}] -> [t{-aGj-}]
+ {-# L #-}
+ nodups_aG4 =
+ \ ds_dK8 ::
+ [t{-aGj-}]
+ {-# L #-}
+ ds_dK8 ->
+ let {
+ fail_dK9 ::
+ [t{-aGj-}]
+ {-# L #-}
+ fail_dK9 =
+ GHCerr.patError{-8r,p-}
+ _@_ [t{-aGj-}] _string_ "ds004.hs:6|function `nodups'"
+ } in
+ case ds_dK8 of {
+ PrelBase.[]{-5i,p-}{i} ->
+ PrelBase.[]{-5i,p-}{i}
+ _@_ t{-aGj-};
+ PrelBase.:{-55,p-}{i} x_r3e ds_dKq ->
+ case ds_dKq of {
+ PrelBase.[]{-5i,p-}{i} ->
+ let {
+ ds_dKG ::
+ [t{-aGj-}]
+ {-# L #-}
+ ds_dKG =
+ PrelBase.[]{-5i,p-}{i}
+ {_@_ t{-aGj-}}
+ } in
+ PrelBase.:{-55,p-}{i}
+ {_@_ t{-aGj-} x_r3e ds_dKG};
+ PrelBase.:{-55,p-}{i} x_r3h xs_r3i ->
+ let {
+ y_r3g ::
+ t{-aGj-}
+ {-# L #-}
+ y_r3g =
+ x_r3e
+ } in
+ case
+ ==_aJI
+ y_r3g x_r3h
+ of {
+ PrelBase.True{-5E,p-}{i} ->
+ let {
+ ds_dLd ::
+ [t{-aGj-}]
+ {-# L #-}
+ ds_dLd =
+ PrelBase.:{-55,p-}{i}
+ _@_ t{-aGj-} x_r3h xs_r3i
+ } in
+ nodups_aG4
+ ds_dLd;
+ PrelBase.False{-58,p-}{i} ->
+ let { ds_dLF ::
+ [t{-aGj-}]
+ {-# L #-}
+ ds_dLF =
+ let {
+ ds_dLN ::
+ [t{-aGj-}]
+ {-# L #-}
+ ds_dLN =
+ PrelBase.:{-55,p-}{i}
+ _@_ t{-aGj-} x_r3h xs_r3i
+ } in
+ nodups_aG4
+ ds_dLN
+ } in
+ PrelBase.:{-55,p-}{i}
+ _@_ t{-aGj-} y_r3g ds_dLF;
+ };
+ };
+ };
+ } in
+ nodups_aG4
+end Rec }