I've read this question and the answers, but what isn't clear to me is WHO creates the "changes that do not appear in any parent".
Is it the git merge algorithm screwing up?
Or is it because the user has to manually adjust the conflicts to get the thing to build, introducing new code which wasn't in either parent?