[C++20][Modules] Limit ModuleInternalLinkage to modules-ts.
At present, we are generating wrong code for C++20 modules entities which should have internal linkage. This is because we are assigning 'ModuleInternalLinkage' unconditionally to such entities. However this mode is only applicable to the modules-ts. This change makes the special linkage mode conditional on fmodules-ts and adds a unit test to verify that we generate the correct linkage. Currently, static variables and functions in module purview are emitted into object files as external. On some platforms, lambdas are emitted as global weak defintions (on Windows this causes a mangler crash). Differential Revision: https://reviews.llvm.org/D122413
Loading
Please register or sign in to comment