[clang] [RFC][clang] Fix for regression #130917 (PR #132214)
Dmitry Polukhin via cfe-commits
cfe-commits at lists.llvm.org
Wed Mar 26 04:10:58 PDT 2025
================
@@ -2572,7 +2572,7 @@ Decl *TemplateDeclInstantiator::VisitFunctionDecl(
// Friend function defined withing class template may stop being function
// definition during AST merges from different modules, in this case decl
// with function body should be used for instantiation.
- if (isFriend) {
+ if (isFriend && D->hasOwningModule()) {
----------------
dmpolukhin wrote:
@ChuanqiXu9 sorry I'm not sure I fully understand your idea about ExternalASTSource. Are you suggesting to extend `ASTReader::DefinitionSource` to also keep this information there? Now `ASTReader::DefinitionSource` maps to `bool` but I can change value to a struct with two flags (previous DefinitionSource and ThisDeclarationWasADefinition), I think we don't need to store it in PCM file. Does it sound like the right approach?
https://github.com/llvm/llvm-project/pull/132214
More information about the cfe-commits
mailing list