Thanks for the many improvements, Paul.
Nevertheless, I feel that a few code style changes are in order:
* I don't much like side effects inside parenthesized expressions, if
the side effect and the expression are not semantically related:
if (mapping->index_mapping_reverse[--
* lib/git-merge-changelog.c: Include idx.h.
(struct entry, entry_create, entry_hashcode)
(struct changelog_file, read_changelog_file)
(entries_mapping_get, entries_mapping_reverse_get)
(compute_mapping, struct edit, struct differences)
(compute_differences, find_paragraph_end)
(try_split_merged_ent