[Serialization] Move some package-only import logic from writer to reader

Let's centralize the logic deciding if we load a transitive dependency
on the client side and have the producer write the truth in the
swiftmodule.
This commit is contained in:
Alexis Laferrière
2023-03-21 13:18:35 -07:00
parent e010d7d494
commit d7cd65cdd6
2 changed files with 5 additions and 2 deletions

View File

@@ -2124,7 +2124,7 @@ SourceFile::getImportedModules(SmallVectorImpl<ImportedModule> &modules,
else if (desc.options.contains(ImportFlags::ImplementationOnly) ||
(desc.accessLevel <= AccessLevel::Internal && moduleIsResilient))
requiredFilter |= ModuleDecl::ImportFilterKind::ImplementationOnly;
else if (desc.accessLevel <= AccessLevel::Package && moduleIsResilient)
else if (desc.accessLevel <= AccessLevel::Package)
requiredFilter |= ModuleDecl::ImportFilterKind::PackageOnly;
else if (desc.options.contains(ImportFlags::SPIOnly))
requiredFilter |= ModuleDecl::ImportFilterKind::SPIOnly;