If you are suspicious of the merger process, the horse has already left the barn.
Coordinated development requires exactly this: coordination. You do not have to work on the same code segment at the same time. Regardless of whether it means not working in the same function, the class or file depends on your circumstances and the scope of your changes, the topic is too deep for a simple explanation here.
The fact is that if you do not know that you changed the situation with good coordination, neither the automated merger process, nor manual, as it were, smoothly, guaranteed a good result. At best, this can tell you that you end up not working in the same piece of code, but you don’t get comfort from semantic and logical changes that violate your code or, even worse, subtly pollute it. This is true regardless of whether it merges without complaint or even if it compiles.
The best defense is a test suite that automates the process of checking the final product. Lucikily is also perhaps one of the best approaches to ongoing maintenance and development.
All that said, most of the mergers that I completed went without a hitch. Those that caused the troubles became known as conflicts during the merger, which was enough to tell us to study this code more carefully, and, more importantly, the methods that we used to separate our work. It’s better to understand what is happening, but it’s also difficult to understand what is “right” until you have mixed up a couple of times. This does not mean that we did not introduce logical errors, and we do not check all of our code, but the world is also not perfect.
Which boils down to the fact that the merurial merge process is the same, but better than the process without it, pure positive. You can skip manually merging all those things that seem harmless, that even if they had logical errors, you would probably miss a cursory inspection, such as manual merging. This is simply faster and a null value for those that are conflicts, which in any case are your best smoking gun for logical errors.
The only real answer is to explicitly coordinate your efforts forward, as well as invest in a testing methodology such as TDD with unit testing. The merger charge is weak.