Hai fatto un po' di confusione.
1) nella procedura merge(), inizializza tutti gli indici a 0, non solo b;
2) attenzione a non fare confusione tra indici e size: sia in main() che in merge() hai usato più volte m e n come indici, e non i, v e b;
3) in main() hai calcolato correttamente b come n + m, ma non lo hai passato alla funzione.

Rispondi quotando