-
- ; match_result <- match (arg_vars ++ vars) ty (shiftEqns eqns)
-
- ; binds <- mapM ds_binds [ bind | ConPatOut _ _ _ bind _ _ <- pats,
- not (isEmptyLHsBinds bind) ]
-
- ; let match_result' = bindInMatchResult (line_up other_pats) $
- mkCoLetsMatchResult binds match_result
-
- ; return (data_con, tvs1 ++ dicts1 ++ arg_vars, match_result') }
+ ; eqns' <- mapM shift eqns
+ ; match_result <- match (arg_vars ++ vars) ty eqns'
+ ; return (con, tvs1 ++ dicts1 ++ arg_vars, match_result) }