inst_env' = extendInstEnvList (mg_inst_env guts) insts
updGEnv (setInstEnvs inst_env' fam_inst_env')
- dicts <- mapM buildPADict pa_insts
- binds' <- mapM vectTopBind (mg_binds guts)
+ dicts <- mapM buildPADict pa_insts
+ workers <- mapM vectDataConWorkers pa_insts
+ binds' <- mapM vectTopBind (mg_binds guts)
return $ guts { mg_types = types'
- , mg_binds = Rec (concat dicts) : binds'
+ , mg_binds = Rec (concat workers ++ concat dicts) : binds'
, mg_inst_env = inst_env'
, mg_fam_inst_env = fam_inst_env'
, mg_insts = mg_insts guts ++ insts