ds002.hs:8: Warning: Pattern match(es) completely overlapped in the definition of function `f' ds002.hs:9: Warning: Pattern match(es) completely overlapped in the definition of function `f' ds002.hs:13: Warning: Possibly incomplete patterns in the definition of function `g' ================================================================================ Desugared: f{-r3w,x-} :: _forall_ [t{-an6-}] => t{-an6-} -> t{-an6-} {-# L #-} f{-r3w,x-} = _/\_ t{-an6-} -> \ x_r3e :: t{-an6-} {-# L #-} x_r3e -> x_r3e g{-r3v,x-} :: _forall_ [t{-anr-} t{-anA-} t{-anC-}] => t{-anA-} -> t{-anC-} -> t{-anr-} -> t{-anr-} {-# L #-} g{-r3v,x-} = _/\_ t{-anr-} t{-anA-} t{-anC-} -> \ x_r3k :: t{-anA-} {-# L #-} x_r3k y_r3m :: t{-anC-} {-# L #-} y_r3m z_r3o :: t{-anr-} {-# L #-} z_r3o -> let { fail_drB :: t{-anr-} {-# L #-} fail_drB = GHCerr.patError{-8r,p-} _@_ t{-anr-} _string_ "ds002.hs:11|function `g'" } in let { fail_drG :: t{-anr-} {-# L #-} fail_drG = let { z_r3u :: t{-anr-} {-# L #-} z_r3u = z_r3o } in let { y_r3s :: t{-anC-} {-# L #-} y_r3s = y_r3m } in let { x_r3q :: t{-anA-} {-# L #-} x_r3q = x_r3k } in f{-r3w,x-} _@_ t{-anr-} z_r3u } in f{-r3w,x-} _@_ t{-anr-} z_r3o