@@ -95,7 +95,7 @@ void BuiltinUnit::LookupCache::lookupValue(
9595 SmallVectorImpl<ValueDecl*> &Result) {
9696 // Only qualified lookup ever finds anything in the builtin module.
9797 if (LookupKind != NLKind::QualifiedLookup) return ;
98-
98+
9999 ValueDecl *&Entry = Cache[Name];
100100 ASTContext &Ctx = M.getParentModule ()->getASTContext ();
101101 if (!Entry) {
@@ -175,7 +175,7 @@ class swift::SourceLookupCache {
175175
176176 // / Throw away as much memory as possible.
177177 void invalidate ();
178-
178+
179179 void lookupValue (DeclName Name, NLKind LookupKind,
180180 SmallVectorImpl<ValueDecl*> &Result);
181181
@@ -203,13 +203,13 @@ class swift::SourceLookupCache {
203203 void lookupVisibleDecls (ImportPath::Access AccessPath,
204204 VisibleDeclConsumer &Consumer,
205205 NLKind LookupKind);
206-
206+
207207 void populateMemberCache (const SourceFile &SF);
208208 void populateMemberCache (const ModuleDecl &Mod);
209209
210210 void lookupClassMembers (ImportPath::Access AccessPath,
211211 VisibleDeclConsumer &consumer);
212-
212+
213213 void lookupClassMember (ImportPath::Access accessPath,
214214 DeclName name,
215215 SmallVectorImpl<ValueDecl*> &results);
@@ -331,7 +331,7 @@ void SourceLookupCache::lookupValue(DeclName Name, NLKind LookupKind,
331331 SmallVectorImpl<ValueDecl*> &Result) {
332332 auto I = TopLevelValues.find (Name);
333333 if (I == TopLevelValues.end ()) return ;
334-
334+
335335 Result.reserve (I->second .size ());
336336 for (ValueDecl *Elt : I->second )
337337 Result.push_back (Elt);
@@ -398,7 +398,7 @@ void SourceLookupCache::lookupVisibleDecls(ImportPath::Access AccessPath,
398398void SourceLookupCache::lookupClassMembers (ImportPath::Access accessPath,
399399 VisibleDeclConsumer &consumer) {
400400 assert (accessPath.size () <= 1 && " can only refer to top-level decls" );
401-
401+
402402 if (!accessPath.empty ()) {
403403 for (auto &member : ClassMembers) {
404404 // Non-simple names are also stored under their simple name, so make
@@ -432,11 +432,11 @@ void SourceLookupCache::lookupClassMember(ImportPath::Access accessPath,
432432 DeclName name,
433433 SmallVectorImpl<ValueDecl*> &results) {
434434 assert (accessPath.size () <= 1 && " can only refer to top-level decls" );
435-
435+
436436 auto iter = ClassMembers.find (name);
437437 if (iter == ClassMembers.end ())
438438 return ;
439-
439+
440440 if (!accessPath.empty ()) {
441441 for (ValueDecl *vd : iter->second ) {
442442 auto *nominal = vd->getDeclContext ()->getSelfNominalTypeDecl ();
@@ -1163,13 +1163,6 @@ void SourceFile::lookupPrecedenceGroupDirect(
11631163
11641164void ModuleDecl::getImportedModules (SmallVectorImpl<ImportedModule> &modules,
11651165 ModuleDecl::ImportFilter filter) const {
1166- assert (filter.containsAny (ImportFilter ({
1167- ModuleDecl::ImportFilterKind::Exported,
1168- ModuleDecl::ImportFilterKind::Default,
1169- ModuleDecl::ImportFilterKind::ImplementationOnly}))
1170- && " filter should have at least one of Exported|Private|ImplementationOnly"
1171- );
1172-
11731166 FORWARD (getImportedModules, (modules, filter));
11741167}
11751168
@@ -1194,12 +1187,11 @@ SourceFile::getImportedModules(SmallVectorImpl<ImportedModule> &modules,
11941187 requiredFilter |= ModuleDecl::ImportFilterKind::Exported;
11951188 else if (desc.options .contains (ImportFlags::ImplementationOnly))
11961189 requiredFilter |= ModuleDecl::ImportFilterKind::ImplementationOnly;
1190+ else if (desc.options .contains (ImportFlags::SPIAccessControl))
1191+ requiredFilter |= ModuleDecl::ImportFilterKind::SPIAccessControl;
11971192 else
11981193 requiredFilter |= ModuleDecl::ImportFilterKind::Default;
11991194
1200- if (desc.options .contains (ImportFlags::SPIAccessControl))
1201- requiredFilter |= ModuleDecl::ImportFilterKind::SPIAccessControl;
1202-
12031195 if (!separatelyImportedOverlays.lookup (desc.module .importedModule ).empty ())
12041196 requiredFilter |= ModuleDecl::ImportFilterKind::ShadowedByCrossImportOverlay;
12051197
@@ -2374,7 +2366,7 @@ bool FileUnit::walk(ASTWalker &walker) {
23742366#ifndef NDEBUG
23752367 PrettyStackTraceDecl debugStack (" walking into decl" , D);
23762368#endif
2377-
2369+
23782370 if (D->walk (walker))
23792371 return true ;
23802372
@@ -2513,15 +2505,15 @@ SourceFile::lookupOpaqueResultType(StringRef MangledName) {
25132505 auto found = ValidatedOpaqueReturnTypes.find (MangledName);
25142506 if (found != ValidatedOpaqueReturnTypes.end ())
25152507 return found->second ;
2516-
2508+
25172509 // If there are unvalidated decls with opaque types, go through and validate
25182510 // them now.
25192511 (void ) getOpaqueReturnTypeDecls ();
25202512
25212513 found = ValidatedOpaqueReturnTypes.find (MangledName);
25222514 if (found != ValidatedOpaqueReturnTypes.end ())
25232515 return found->second ;
2524-
2516+
25252517 // Otherwise, we don't have a matching opaque decl.
25262518 return nullptr ;
25272519}
0 commit comments