genUniques' subst (CoreSyn.Let (CoreSyn.Rec binds) res) = do
-- Make each of the binders unique
(subst', bndrs') <- mapAccumLM genUnique subst (map fst binds)
genUniques' subst (CoreSyn.Let (CoreSyn.Rec binds) res) = do
-- Make each of the binders unique
(subst', bndrs') <- mapAccumLM genUnique subst (map fst binds)
res' <- genUniques' subst' res
let binds' = zip bndrs' bounds'
return $ CoreSyn.Let (CoreSyn.Rec binds') res'
res' <- genUniques' subst' res
let binds' = zip bndrs' bounds'
return $ CoreSyn.Let (CoreSyn.Rec binds') res'