let merge_po po1 po2 =
(* We take po2 as the initial set, we merge po1 into po2 beginning with
po1.no_domain and then po1.domain *)
let merge_no_domain =
MapString.fold (
fun _ translation po ->
add_po_translation_no_domain po translation
) po1.no_domain po2
in
let merge_one_domain domain map_domain po =
MapString.fold (
fun _ translation po ->
add_po_translation_domain domain po translation
) map_domain po
in
MapTextdomain.fold merge_one_domain po1.domain merge_no_domain