When running in relocatable mode any input data segments that are part
of a comdat group should not be merged with other segments of the same
name. This is because the final linker needs to keep the separate so
they can be included/excluded individually.
Often this is not a problem since normally only one section with a given
name foo ends up in the output object file. However, the problem
occurs when one input contains foo which part of a comdat and another
object contains a local symbol foo we were attempting to merge them.
This behaviour matches (I believe) that of the ELF linker. See
LinkerScript.cpp:addInputSec.
Fixes: https://github.com/emscripten-core/emscripten/issues/9726