ARTICLE AD BOX
I am used to the situation where one can freely mix objects compiled against different versions of the C++ standard, at least when using recent versions of major compilers. I have an answer here that states that mixing dialect options is OK, and is in fact required for the ecosystem to work.
With C++ modules, mixing dialects no longer works. At least g++ requires that all modules are compiled using the same -std= flag.
Was I wrong back then? Were we always supposed to use consistent C++ dialect options in every program? If so, how was the ecosystem supposed to work, given that (quoting myself) "No one coordinates -std option between maintainers of different libraries"?
If modules impose a new requirement to use consistent C++ dialect options, won't this requirement disrupt the workings of the ecosystem?
