================
@@ -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);
+  }
----------------
ChuanqiXu9 wrote:

Maybe some gaps here. What I asked previously is:
1. According to the comments, it looks like we're trying to load all other 
redeclarations of the current declaration, since we want to see if any 
redeclaration of the current declaration is acceptable.
2. In Sema, ideally, when we want to the things above, we should call 
`redecls()`.

then my question is, what is the problem?
1. There is a path in Sema that meant to look at redeclarations but not called 
redecls().
2. Redecls get called but didn't work as expceted (not work well).
3. Or do I misunderstand the problem?

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

Reply via email to