X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Ftypecheck%2FTcDeriv.lhs;h=34baafb7a65bd19f00d88fc23e1e3407c9c2ab3f;hp=dff85f3d1f88882960554d0e14edcbc424ab43e7;hb=ff843f76541ab39ed30c050ae41c7c07c8980d3a;hpb=fbff1b7b9c89f6369c4394a0b10fa7c06e011698 diff --git a/compiler/typecheck/TcDeriv.lhs b/compiler/typecheck/TcDeriv.lhs index dff85f3..34baafb 100644 --- a/compiler/typecheck/TcDeriv.lhs +++ b/compiler/typecheck/TcDeriv.lhs @@ -318,18 +318,20 @@ tcDeriving tycl_decls inst_decls deriv_decls ; insts2 <- mapM (genInst False overlap_flag) final_specs - -- Generate the (old) generic to/from functions from each type declaration + -- We no longer generate the old generic to/from functions + -- from each type declaration, so this is emptyBag ; gen_binds <- return emptyBag -- mkGenericBinds is_boot tycl_decls - -- Generate the generic Representable0/1 instances from each type declaration - ; repInstsMeta <- genGenericRepBinds is_boot tycl_decls + -- Generate the generic Representable0 instances + -- from each type declaration + ; repInstsMeta <- genGenericRepBinds is_boot tycl_decls ; let repInsts = concat (map (\(a,_,_) -> a) repInstsMeta) repMetaTys = map (\(_,b,_) -> b) repInstsMeta repTyCons = map (\(_,_,c) -> c) repInstsMeta - -- Should we extendLocalInstEnv with repInsts? - ; (inst_info, rn_binds, rn_dus) <- renameDeriv is_boot gen_binds (insts1 ++ insts2 ++ repInsts) + ; (inst_info, rn_binds, rn_dus) + <- renameDeriv is_boot gen_binds (insts1 ++ insts2 ++ repInsts) ; dflags <- getDOpts ; liftIO (dumpIfSet_dyn dflags Opt_D_dump_deriv "Derived instances"