@@ -10186,12 +10186,12 @@ void ASTReader::visitTopLevelModuleMaps(
10186
10186
}
10187
10187
10188
10188
void ASTReader::finishPendingActions () {
10189
- while (!PendingIdentifierInfos. empty () ||
10190
- !PendingDeducedFunctionTypes.empty () ||
10191
- !PendingDeducedVarTypes.empty () || !PendingDeclChains .empty () ||
10192
- !PendingMacroIDs .empty () || !PendingDeclContextInfos .empty () ||
10193
- !PendingUpdateRecords.empty () ||
10194
- !PendingObjCExtensionIvarRedeclarations.empty ()) {
10189
+ while (
10190
+ !PendingIdentifierInfos. empty () || !PendingDeducedFunctionTypes.empty () ||
10191
+ !PendingDeducedVarTypes.empty () || !PendingIncompleteDeclChains .empty () ||
10192
+ !PendingDeclChains .empty () || !PendingMacroIDs .empty () ||
10193
+ !PendingDeclContextInfos. empty () || !PendingUpdateRecords.empty () ||
10194
+ !PendingObjCExtensionIvarRedeclarations.empty ()) {
10195
10195
// If any identifiers with corresponding top-level declarations have
10196
10196
// been loaded, load those declarations now.
10197
10197
using TopLevelDeclsMap =
@@ -10239,6 +10239,13 @@ void ASTReader::finishPendingActions() {
10239
10239
}
10240
10240
PendingDeducedVarTypes.clear ();
10241
10241
10242
+ // For each decl chain that we wanted to complete while deserializing, mark
10243
+ // it as "still needs to be completed".
10244
+ for (unsigned I = 0 ; I != PendingIncompleteDeclChains.size (); ++I) {
10245
+ markIncompleteDeclChain (PendingIncompleteDeclChains[I]);
10246
+ }
10247
+ PendingIncompleteDeclChains.clear ();
10248
+
10242
10249
// Load pending declaration chains.
10243
10250
for (unsigned I = 0 ; I != PendingDeclChains.size (); ++I)
10244
10251
loadPendingDeclChain (PendingDeclChains[I].first ,
@@ -10476,12 +10483,6 @@ void ASTReader::finishPendingActions() {
10476
10483
for (auto *ND : PendingMergedDefinitionsToDeduplicate)
10477
10484
getContext ().deduplicateMergedDefinitonsFor (ND);
10478
10485
PendingMergedDefinitionsToDeduplicate.clear ();
10479
-
10480
- // For each decl chain that we wanted to complete while deserializing, mark
10481
- // it as "still needs to be completed".
10482
- for (Decl *D : PendingIncompleteDeclChains)
10483
- markIncompleteDeclChain (D);
10484
- PendingIncompleteDeclChains.clear ();
10485
10486
}
10486
10487
10487
10488
void ASTReader::diagnoseOdrViolations () {
0 commit comments