[clang] [llvm] [LifetimeSafety] Reorganize code into modular components (PR #162474)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 10 06:21:58 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `flang-aarch64-sharedlibs` running on `linaro-flang-aarch64-sharedlibs` while building `.github,clang,llvm` at step 5 "build-unified-tree".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/80/builds/16614

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 5 (build-unified-tree) failure: build (failure)
...
71.754 [1072/19/6828] Linking CXX shared library lib/libMLIRControlFlowDialect.so.22.0git
71.758 [1071/19/6829] Creating library symlink lib/libMLIRDialectUtils.so
71.769 [1066/23/6830] Creating library symlink lib/libMLIRCAPIArith.so
71.773 [1066/22/6831] Creating library symlink lib/libMLIRControlFlowDialect.so
71.783 [1063/24/6832] Linking CXX shared library lib/libMLIRArithAttrToLLVMConversion.so.22.0git
71.799 [1062/24/6833] Linking CXX shared library lib/libMLIRTransformUtils.so.22.0git
71.802 [1061/24/6834] Creating library symlink lib/libMLIRArithAttrToLLVMConversion.so
71.815 [1061/23/6835] Creating library symlink lib/libMLIRTransformUtils.so
71.828 [1057/26/6836] Linking CXX shared library lib/libMLIRComplexDialect.so.22.0git
71.832 [1056/26/6837] Linking CXX shared library lib/libclangAnalysisLifetimeSafety.so.22.0git
FAILED: lib/libclangAnalysisLifetimeSafety.so.22.0git 
: && /usr/local/bin/c++ -fPIC -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -Wno-pass-failed -fdiagnostics-color -ffunction-sections -fdata-sections -fno-common -Woverloaded-virtual -Wno-nested-anon-types -O3 -DNDEBUG  -Wl,-z,defs -Wl,-z,nodelete   -Wl,-rpath-link,/home/tcwg-buildbot/worker/flang-aarch64-sharedlibs/build/./lib  -Wl,--gc-sections -shared -Wl,-soname,libclangAnalysisLifetimeSafety.so.22.0git -o lib/libclangAnalysisLifetimeSafety.so.22.0git tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/Checker.cpp.o tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/Facts.cpp.o tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/FactsGenerator.cpp.o tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/LifetimeAnnotations.cpp.o tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/LifetimeSafety.cpp.o tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/LiveOrigins.cpp.o tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/Loans.cpp.o tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/LoanPropagation.cpp.o tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/Origins.cpp.o  -Wl,-rpath,"\$ORIGIN/../lib:/home/tcwg-buildbot/worker/flang-aarch64-sharedlibs/build/lib:"  lib/libLLVMFrontendOpenMP.so.22.0git  lib/libLLVMSupport.so.22.0git  -Wl,-rpath-link,/home/tcwg-buildbot/worker/flang-aarch64-sharedlibs/build/lib && :
/usr/bin/ld: tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/Checker.cpp.o: in function `clang::lifetimes::internal::runLifetimeChecker(clang::lifetimes::internal::LoanPropagationAnalysis const&, clang::lifetimes::internal::LiveOriginsAnalysis const&, clang::lifetimes::internal::FactManager const&, clang::AnalysisDeclContext&, clang::lifetimes::LifetimeSafetyReporter*)':
Checker.cpp:(.text._ZN5clang9lifetimes8internal18runLifetimeCheckerERKNS1_23LoanPropagationAnalysisERKNS1_19LiveOriginsAnalysisERKNS1_11FactManagerERNS_19AnalysisDeclContextEPNS0_22LifetimeSafetyReporterE+0x54): undefined reference to `clang::PostOrderCFGView::getTag()'
/usr/bin/ld: Checker.cpp:(.text._ZN5clang9lifetimes8internal18runLifetimeCheckerERKNS1_23LoanPropagationAnalysisERKNS1_19LiveOriginsAnalysisERKNS1_11FactManagerERNS_19AnalysisDeclContextEPNS0_22LifetimeSafetyReporterE+0x60): undefined reference to `clang::AnalysisDeclContext::getAnalysisImpl(void const*)'
/usr/bin/ld: Checker.cpp:(.text._ZN5clang9lifetimes8internal18runLifetimeCheckerERKNS1_23LoanPropagationAnalysisERKNS1_19LiveOriginsAnalysisERKNS1_11FactManagerERNS_19AnalysisDeclContextEPNS0_22LifetimeSafetyReporterE+0x8d0): undefined reference to `clang::PostOrderCFGView::create(clang::AnalysisDeclContext&)'
/usr/bin/ld: tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/Facts.cpp.o: in function `clang::lifetimes::internal::FactManager::dump(clang::CFG const&, clang::AnalysisDeclContext&) const':
Facts.cpp:(.text._ZNK5clang9lifetimes8internal11FactManager4dumpERKNS_3CFGERNS_19AnalysisDeclContextE+0x1a4): undefined reference to `clang::NamedDecl::getQualifiedNameAsString[abi:cxx11]() const'
/usr/bin/ld: Facts.cpp:(.text._ZNK5clang9lifetimes8internal11FactManager4dumpERKNS_3CFGERNS_19AnalysisDeclContextE+0x1f4): undefined reference to `clang::PostOrderCFGView::getTag()'
/usr/bin/ld: Facts.cpp:(.text._ZNK5clang9lifetimes8internal11FactManager4dumpERKNS_3CFGERNS_19AnalysisDeclContextE+0x200): undefined reference to `clang::AnalysisDeclContext::getAnalysisImpl(void const*)'
/usr/bin/ld: Facts.cpp:(.text._ZNK5clang9lifetimes8internal11FactManager4dumpERKNS_3CFGERNS_19AnalysisDeclContextE+0x228): undefined reference to `clang::PostOrderCFGView::create(clang::AnalysisDeclContext&)'
/usr/bin/ld: tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/FactsGenerator.cpp.o: in function `clang::lifetimes::internal::FactsGenerator::run()':
FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator3runEv+0x44): undefined reference to `clang::PostOrderCFGView::getTag()'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator3runEv+0x50): undefined reference to `clang::AnalysisDeclContext::getAnalysisImpl(void const*)'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator3runEv+0x7c): undefined reference to `clang::PostOrderCFGView::create(clang::AnalysisDeclContext&)'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator3runEv+0x1d4): undefined reference to `clang::Stmt::getEndLoc() const'
/usr/bin/ld: tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/FactsGenerator.cpp.o: in function `clang::lifetimes::internal::FactsGenerator::handleDestructor(clang::CFGAutomaticObjDtor const&)':
FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator16handleDestructorERKNS_19CFGAutomaticObjDtorE+0x88): undefined reference to `clang::Stmt::getEndLoc() const'
/usr/bin/ld: tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/FactsGenerator.cpp.o: in function `clang::lifetimes::internal::FactsGenerator::VisitDeclStmt(clang::DeclStmt const*)':
FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator13VisitDeclStmtEPKNS_8DeclStmtE+0xd8): undefined reference to `clang::VarDecl::getInit()'
/usr/bin/ld: tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/FactsGenerator.cpp.o: in function `clang::lifetimes::internal::isGslPointerType(clang::QualType)':
FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internalL16isGslPointerTypeENS_8QualTypeE+0x30): undefined reference to `clang::ClassTemplateSpecializationDecl::getSpecializedTemplate() const'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internalL16isGslPointerTypeENS_8QualTypeE+0x40): undefined reference to `clang::Decl::getAttrs() const'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internalL16isGslPointerTypeENS_8QualTypeE+0x8c): undefined reference to `clang::Decl::getAttrs() const'
/usr/bin/ld: tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/FactsGenerator.cpp.o: in function `clang::lifetimes::internal::FactsGenerator::VisitCXXMemberCallExpr(clang::CXXMemberCallExpr const*)':
FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator22VisitCXXMemberCallExprEPKNS_17CXXMemberCallExprE+0x4c): undefined reference to `clang::Expr::getReferencedDeclOfCallee()'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator22VisitCXXMemberCallExprEPKNS_17CXXMemberCallExprE+0x68): undefined reference to `clang::CXXMemberCallExpr::getMethodDecl() const'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator22VisitCXXMemberCallExprEPKNS_17CXXMemberCallExprE+0x74): undefined reference to `clang::CXXMemberCallExpr::getImplicitObjectArgument() const'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator22VisitCXXMemberCallExprEPKNS_17CXXMemberCallExprE+0xa0): undefined reference to `clang::CXXMemberCallExpr::getMethodDecl() const'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator22VisitCXXMemberCallExprEPKNS_17CXXMemberCallExprE+0xc8): undefined reference to `clang::CXXMemberCallExpr::getImplicitObjectArgument() const'
/usr/bin/ld: tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/FactsGenerator.cpp.o: in function `clang::lifetimes::internal::FactsGenerator::handleFunctionCall(clang::Expr const*, clang::FunctionDecl const*, llvm::ArrayRef<clang::Expr const*>, bool)':
FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator18handleFunctionCallEPKNS_4ExprEPKNS_12FunctionDeclEN4llvm8ArrayRefIS5_EEb+0xe8): undefined reference to `clang::CXXMethodDecl::isStatic() const'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator18handleFunctionCallEPKNS_4ExprEPKNS_12FunctionDeclEN4llvm8ArrayRefIS5_EEb+0xf4): undefined reference to `clang::FunctionDecl::getNumParams() const'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator18handleFunctionCallEPKNS_4ExprEPKNS_12FunctionDeclEN4llvm8ArrayRefIS5_EEb+0x104): undefined reference to `clang::FunctionDecl::getNumParams() const'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator18handleFunctionCallEPKNS_4ExprEPKNS_12FunctionDeclEN4llvm8ArrayRefIS5_EEb+0x128): undefined reference to `clang::Decl::getAttrs() const'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator18handleFunctionCallEPKNS_4ExprEPKNS_12FunctionDeclEN4llvm8ArrayRefIS5_EEb+0x168): undefined reference to `clang::FunctionDecl::getNumParams() const'
/usr/bin/ld: FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator18handleFunctionCallEPKNS_4ExprEPKNS_12FunctionDeclEN4llvm8ArrayRefIS5_EEb+0x178): undefined reference to `clang::FunctionDecl::getNumParams() const'
/usr/bin/ld: tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/FactsGenerator.cpp.o: in function `clang::lifetimes::internal::FactsGenerator::VisitCallExpr(clang::CallExpr const*)':
FactsGenerator.cpp:(.text._ZN5clang9lifetimes8internal14FactsGenerator13VisitCallExprEPKNS_8CallExprE+0x34): undefined reference to `clang::Expr::getReferencedDeclOfCallee()'

```

</details>

https://github.com/llvm/llvm-project/pull/162474


More information about the llvm-commits mailing list