X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;ds=sidebyside;f=ghc%2Fcompiler%2FdeSugar%2FDsListComp.lhs;fp=ghc%2Fcompiler%2FdeSugar%2FDsListComp.lhs;h=9f19dd152f22059592871fe9e880d7c6e4f46856;hb=d7c402a3cedbe49345a34f2e58a3f3050638dcb4;hp=8491613e1df4bd4b96e33b0d33ec1b7f4a0b48b7;hpb=1f3a9ff8e19636fcb5bf477922012bc67fd52b02;p=ghc-hetmet.git diff --git a/ghc/compiler/deSugar/DsListComp.lhs b/ghc/compiler/deSugar/DsListComp.lhs index 8491613..9f19dd1 100644 --- a/ghc/compiler/deSugar/DsListComp.lhs +++ b/ghc/compiler/deSugar/DsListComp.lhs @@ -212,10 +212,10 @@ deBindComp pat core_list1 quals core_list2 rest_expr core_fail `thenDs` \ core_match -> let rhs = Lam u1 $ --- gaw 2004 Case (Var u1) u1 res_ty [(DataAlt nilDataCon, [], core_list2), (DataAlt consDataCon, [u2, u3], core_match)] + -- Increasing order of tag in returnDs (Let (Rec [(h, rhs)]) letrec_body) \end{code} @@ -250,11 +250,10 @@ mkZipBind elt_tys zip_fn_ty = mkFunTys list_tys list_ret_ty mk_case (as, a', as') rest --- gaw 2004 = Case (Var as) as list_ret_ty [(DataAlt nilDataCon, [], mkNilExpr ret_elt_ty), (DataAlt consDataCon, [a', as'], rest)] - + -- Increasing order of tag -- Helper functions that makes an HsTuple only for non-1-sized tuples mk_hs_tuple_expr :: [Id] -> LHsExpr Id mk_hs_tuple_expr [] = nlHsVar unitDataConId