Add Swift compilation flags to enable Clang's validate-per-build-session module behavior

Add '-validate-clang-modules-once' and '-clang-build-session-file' corresponding to Clang's '-fmodules-validate-once-per-build-session' and '-fbuild-session-file='. Ensure they are propagated to module interface build sub-invocations.

We require these to be first-class Swift options in order to ensure they are propagated to both: ClangImporter and implicit interface build compiler sub-invocations.

Compiler portion of rdar://105982120
This commit is contained in:
Artem Chikin
2023-02-28 10:50:09 -08:00
parent a64fc3b66d
commit 3ea5087e2f
9 changed files with 104 additions and 0 deletions

View File

@@ -550,6 +550,7 @@ private:
void
inheritOptionsForBuildingInterface(const SearchPathOptions &SearchPathOpts,
const LangOptions &LangOpts,
const ClangImporterOptions &clangImporterOpts,
bool suppressRemarks,
RequireOSSAModules_t requireOSSAModules);
bool extractSwiftInterfaceVersionAndArgs(CompilerInvocation &subInvocation,