[clang] [Clang][Sema] Always use latest redeclaration of primary template (PR #114258)
Felipe de Azevedo Piovezan via cfe-commits
cfe-commits at lists.llvm.org
Wed Oct 30 13:02:58 PDT 2024
felipepiovezan wrote:
There seems to be some kind of infinite recursion, I attached the debugger to one such test, and stack at the time of the crash has 59,000 frames.
The top few are:
```
(lldb) bt 30
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=2, address=0x16a92fff8)
* frame #0: 0x0000000303256070 liblldb.20.0.0git.dylib`clang::ASTNodeImporter::ImportDeclParts(clang::NamedDecl*, clang::DeclContext*&, clang::DeclContext*&, clang::DeclarationName&, clang::NamedDecl*&, clang::SourceLocation&) _ZN5clang15ASTNodeImporter15ImportDeclPartsEPNS_9NamedDeclERPNS_11DeclContextES5_RNS_15DeclarationNameERS2_RNS_14SourceLocationE + 76
frame #1: 0x000000030326f908 liblldb.20.0.0git.dylib`clang::ASTNodeImporter::VisitClassTemplateDecl(clang::ClassTemplateDecl*) _ZN5clang15ASTNodeImporter22VisitClassTemplateDeclEPNS_17ClassTemplateDeclE + 96
frame #2: 0x00000003032862ec liblldb.20.0.0git.dylib`clang::ASTImporter::ImportImpl(clang::Decl*) _ZN5clang11ASTImporter10ImportImplEPNS_4DeclE + 24
frame #3: 0x00000003015d5bac liblldb.20.0.0git.dylib`lldb_private::ClangASTImporter::ASTImporterDelegate::ImportImpl(clang::Decl*) _ZN12lldb_private16ClangASTImporter19ASTImporterDelegate10ImportImplEPN5clang4DeclE + 1236
frame #4: 0x000000030326a32c liblldb.20.0.0git.dylib`clang::ASTImporter::Import(clang::Decl*) _ZN5clang11ASTImporter6ImportEPNS_4DeclE + 852
frame #5: 0x0000000303270234 liblldb.20.0.0git.dylib`clang::ASTNodeImporter::VisitClassTemplateSpecializationDecl(clang::ClassTemplateSpecializationDecl*) _ZN5clang15ASTNodeImporter36VisitClassTemplateSpecializationDeclEPNS_31ClassTemplateSpecializationDeclE + 84
frame #6: 0x00000003032862ec liblldb.20.0.0git.dylib`clang::ASTImporter::ImportImpl(clang::Decl*) _ZN5clang11ASTImporter10ImportImplEPNS_4DeclE + 24
frame #7: 0x00000003015d5bac liblldb.20.0.0git.dylib`lldb_private::ClangASTImporter::ASTImporterDelegate::ImportImpl(clang::Decl*) _ZN12lldb_private16ClangASTImporter19ASTImporterDelegate10ImportImplEPN5clang4DeclE + 1236
frame #8: 0x000000030326a32c liblldb.20.0.0git.dylib`clang::ASTImporter::Import(clang::Decl*) _ZN5clang11ASTImporter6ImportEPNS_4DeclE + 852
frame #9: 0x00000003032584f4 liblldb.20.0.0git.dylib`clang::ASTImporter::ImportContext(clang::DeclContext*) _ZN5clang11ASTImporter13ImportContextEPNS_11DeclContextE + 80
frame #10: 0x0000000303256620 liblldb.20.0.0git.dylib`clang::ASTNodeImporter::ImportDeclContext(clang::Decl*, clang::DeclContext*&, clang::DeclContext*&) _ZN5clang15ASTNodeImporter17ImportDeclContextEPNS_4DeclERPNS_11DeclContextES5_ + 160
frame #11: 0x0000000303256238 liblldb.20.0.0git.dylib`clang::ASTNodeImporter::ImportDeclParts(clang::NamedDecl*, clang::DeclContext*&, clang::DeclContext*&, clang::DeclarationName&, clang::NamedDecl*&, clang::SourceLocation&) _ZN5clang15ASTNodeImporter15ImportDeclPartsEPNS_9NamedDeclERPNS_11DeclContextES5_RNS_15DeclarationNameERS2_RNS_14SourceLocationE + 532
frame #12: 0x000000030326f908 liblldb.20.0.0git.dylib`clang::ASTNodeImporter::VisitClassTemplateDecl(clang::ClassTemplateDecl*) _ZN5clang15ASTNodeImporter22VisitClassTemplateDeclEPNS_17ClassTemplateDeclE + 96
frame #13: 0x00000003032862ec liblldb.20.0.0git.dylib`clang::ASTImporter::ImportImpl(clang::Decl*) _ZN5clang11ASTImporter10ImportImplEPNS_4DeclE + 24
frame #14: 0x00000003015d5bac liblldb.20.0.0git.dylib`lldb_private::ClangASTImporter::ASTImporterDelegate::ImportImpl(clang::Decl*) _ZN12lldb_private16ClangASTImporter19ASTImporterDelegate10ImportImplEPN5clang4DeclE + 1236
frame #15: 0x000000030326a32c liblldb.20.0.0git.dylib`clang::ASTImporter::Import(clang::Decl*) _ZN5clang11ASTImporter6ImportEPNS_4DeclE + 852
frame #16: 0x0000000303270234 liblldb.20.0.0git.dylib`clang::ASTNodeImporter::VisitClassTemplateSpecializationDecl(clang::ClassTemplateSpecializationDecl*) _ZN5clang15ASTNodeImporter36VisitClassTemplateSpecializationDeclEPNS_31ClassTemplateSpecializationDeclE + 84
frame #17: 0x00000003032862ec liblldb.20.0.0git.dylib`clang::ASTImporter::ImportImpl(clang::Decl*) _ZN5clang11ASTImporter10ImportImplEPNS_4DeclE + 24
frame #18: 0x00000003015d5bac liblldb.20.0.0git.dylib`lldb_private::ClangASTImporter::ASTImporterDelegate::ImportImpl(clang::Decl*) _ZN12lldb_private16ClangASTImporter19ASTImporterDelegate10ImportImplEPN5clang4DeclE + 1236
frame #19: 0x000000030326a32c liblldb.20.0.0git.dylib`clang::ASTImporter::Import(clang::Decl*) _ZN5clang11ASTImporter6ImportEPNS_4DeclE + 852
frame #20: 0x00000003032584f4 liblldb.20.0.0git.dylib`clang::ASTImporter::ImportContext(clang::DeclContext*) _ZN5clang11ASTImporter13ImportContextEPNS_11DeclContextE + 80
frame #21: 0x0000000303256620 liblldb.20.0.0git.dylib`clang::ASTNodeImporter::ImportDeclContext(clang::Decl*, clang::DeclContext*&, clang::DeclContext*&) _ZN5clang15ASTNodeImporter17ImportDeclContextEPNS_4DeclERPNS_11DeclContextES5_ + 160
```
https://github.com/llvm/llvm-project/pull/114258
More information about the cfe-commits
mailing list