================ @@ -9180,6 +9180,12 @@ bool Sema::hasAcceptableDefinition(NamedDecl *D, NamedDecl **Suggested, if (!getLangOpts().Modules && !getLangOpts().ModulesLocalVisibility) return true; + // The external source may have additional definitions of this entity that are + // visible, so complete the redeclaration chain now. + if (auto *Source = Context.getExternalSource()) { + Source->CompleteRedeclChain(D); + } ---------------- mpark wrote:
On one thought, it seems like the decls inside `DC` should be notified of the fact that there have been new additions made to `Lookups[DC]`... but on the other hand, it's not clear to me whether this is an expected sequence of events in the first place. If this is an expected sequence of events, I'm a bit surprised that this doesn't seem to be a bigger issue. If this is not an expected sequence of events, do we expect that the first call to `CompleteRedeclChain` should have the `Lookups` populated with everything already? CC @ChuanqiXu9, maybe @Bigcheese can help here too? https://github.com/llvm/llvm-project/pull/129982 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits