
2. Wrap the inclusion of headers in the module purview with `extern “C++”`.
It seems this solves a lot of issues and as such has been used quite widely up to now (e.g. MS STL, fmtlib's WIP module support, I believe the prototype module for Boost.Regex also provided this as a configuration option). And indeed, it would be a requirement if there was a desire to support the case of consuming boost modules in a project that also had other third party dependencies which themselves used boost via headers. So my question is, are you aware what the drawbacks are of attaching everything to the global module? Clearly it feels like a hack and I assume maybe there are downsides relating to implementation efficiency, but as yet I've not heard anything concrete.