@@ -1054,7 +1054,7 @@ static void populateLookupTableEntryFromCurrentMembers(
1054
1054
}
1055
1055
}
1056
1056
1057
- static bool
1057
+ static void
1058
1058
populateLookupTableEntryFromExtensions (ASTContext &ctx,
1059
1059
MemberLookupTable &table,
1060
1060
NominalTypeDecl *nominal,
@@ -1066,14 +1066,13 @@ populateLookupTableEntryFromExtensions(ASTContext &ctx,
1066
1066
assert (!e->hasUnparsedMembers ());
1067
1067
if (populateLookupTableEntryFromLazyIDCLoader (ctx, table,
1068
1068
name, e)) {
1069
- return true ;
1069
+ populateLookupTableEntryFromCurrentMembers (ctx, table, name, e) ;
1070
1070
}
1071
1071
} else {
1072
1072
populateLookupTableEntryFromCurrentMembers (ctx, table, name, e);
1073
1073
}
1074
1074
}
1075
1075
}
1076
- return false ;
1077
1076
}
1078
1077
1079
1078
bool NominalTypeDecl::isLookupTablePopulated () const {
@@ -1241,10 +1240,11 @@ TinyPtrVector<ValueDecl *> NominalTypeDecl::lookupDirect(
1241
1240
// false, and we fall back to loading all members during the retry.
1242
1241
auto &Table = *LookupTable.getPointer ();
1243
1242
if (populateLookupTableEntryFromLazyIDCLoader (ctx, Table,
1244
- name, this ) ||
1245
- populateLookupTableEntryFromExtensions (ctx, Table, this , name,
1246
- ignoreNewExtensions)) {
1243
+ name, this )) {
1247
1244
useNamedLazyMemberLoading = false ;
1245
+ } else {
1246
+ populateLookupTableEntryFromExtensions (ctx, Table, this , name,
1247
+ ignoreNewExtensions);
1248
1248
}
1249
1249
}
1250
1250
0 commit comments