[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 07:13:10 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `bolt-x86_64-ubuntu-shared` running on `bolt-worker` while building `.github,clang,llvm` at step 6 "test-build-bolt-check-bolt".

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

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

```
Step 6 (test-build-bolt-check-bolt) failure: test (failure)
...
15.109 [264/18/1406] Building CXX object tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/FactsGenerator.cpp.o
15.113 [263/18/1407] Building CXX object tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/LiveOrigins.cpp.o
15.120 [262/18/1408] Building CXX object tools/clang/lib/InstallAPI/CMakeFiles/obj.clangInstallAPI.dir/FileList.cpp.o
15.129 [261/18/1409] Building CXX object tools/clang/lib/InstallAPI/CMakeFiles/obj.clangInstallAPI.dir/DylibVerifier.cpp.o
15.141 [260/18/1410] Building CXX object tools/clang/lib/InstallAPI/CMakeFiles/obj.clangInstallAPI.dir/HeaderFile.cpp.o
15.148 [259/18/1411] Building CXX object tools/clang/lib/InstallAPI/CMakeFiles/obj.clangInstallAPI.dir/Library.cpp.o
15.174 [258/18/1412] Building CXX object tools/clang/lib/InstallAPI/CMakeFiles/obj.clangInstallAPI.dir/DiagnosticBuilderWrappers.cpp.o
15.183 [257/18/1413] Building CXX object tools/clang/lib/Frontend/CMakeFiles/obj.clangFrontend.dir/InterfaceStubFunctionsConsumer.cpp.o
15.340 [256/18/1414] Building CXX object tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/LoanPropagation.cpp.o
15.435 [255/18/1415] Linking CXX shared library lib/libclangAnalysisLifetimeSafety.so.22.0git
FAILED: lib/libclangAnalysisLifetimeSafety.so.22.0git 
: && /usr/bin/c++ -fPIC -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -Wno-array-bounds -Wno-stringop-overread -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -Wno-pass-failed -fdiagnostics-color -ffunction-sections -fdata-sections -fno-common -Woverloaded-virtual -O3 -DNDEBUG  -Wl,-z,defs -Wl,-z,nodelete -fuse-ld=lld -Wl,--color-diagnostics   -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/worker/bolt-worker2/bolt-x86_64-ubuntu-shared/build/lib:"  lib/libLLVMFrontendOpenMP.so.22.0git  lib/libLLVMSupport.so.22.0git  -Wl,-rpath-link,/home/worker/bolt-worker2/bolt-x86_64-ubuntu-shared/build/lib && :
ld.lld: error: undefined symbol: clang::Expr::IgnoreParenImpCasts()
>>> referenced by FactsGenerator.cpp
>>>               tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/FactsGenerator.cpp.o:(clang::lifetimes::internal::FactsGenerator::handleTestPoint(clang::CXXFunctionalCastExpr const*) (.localalias))
>>> referenced by FactsGenerator.cpp
>>>               tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/FactsGenerator.cpp.o:(clang::lifetimes::internal::FactsGenerator::handleAssignment(clang::Expr const*, clang::Expr const*) (.localalias))
>>> referenced by FactsGenerator.cpp
>>>               tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/FactsGenerator.cpp.o:(clang::lifetimes::internal::FactsGenerator::VisitBinaryOperator(clang::BinaryOperator const*) (.part.0.isra.0))

ld.lld: error: undefined symbol: clang::NamedDecl::getQualifiedNameAsString[abi:cxx11]() const
>>> referenced by Facts.cpp
>>>               tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/Facts.cpp.o:(clang::lifetimes::internal::FactManager::dump(clang::CFG const&, clang::AnalysisDeclContext&) const)

ld.lld: error: undefined symbol: clang::Stmt::getEndLoc() const
>>> referenced by FactsGenerator.cpp
>>>               tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/FactsGenerator.cpp.o:(clang::lifetimes::internal::FactsGenerator::handleDestructor(clang::CFGAutomaticObjDtor const&) (.localalias))

ld.lld: error: undefined symbol: clang::PostOrderCFGView::getTag()
>>> referenced by Facts.cpp
>>>               tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/Facts.cpp.o:(clang::lifetimes::internal::FactManager::dump(clang::CFG const&, clang::AnalysisDeclContext&) const)
>>> referenced by Checker.cpp
>>>               tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/Checker.cpp.o:(clang::lifetimes::internal::runLifetimeChecker(clang::lifetimes::internal::LoanPropagationAnalysis const&, clang::lifetimes::internal::LiveOriginsAnalysis const&, clang::lifetimes::internal::FactManager const&, clang::AnalysisDeclContext&, clang::lifetimes::LifetimeSafetyReporter*))
>>> referenced by LoanPropagation.cpp
>>>               tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/LoanPropagation.cpp.o:(clang::lifetimes::internal::DataflowAnalysis<clang::lifetimes::internal::(anonymous namespace)::AnalysisImpl, clang::lifetimes::internal::(anonymous namespace)::Lattice, (clang::lifetimes::internal::Direction)0>::run())
>>> referenced 2 more times

ld.lld: error: undefined symbol: clang::AnalysisDeclContext::getAnalysisImpl(void const*)
>>> referenced by Facts.cpp
>>>               tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/Facts.cpp.o:(clang::lifetimes::internal::FactManager::dump(clang::CFG const&, clang::AnalysisDeclContext&) const)
>>> referenced by Checker.cpp
>>>               tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/Checker.cpp.o:(clang::lifetimes::internal::runLifetimeChecker(clang::lifetimes::internal::LoanPropagationAnalysis const&, clang::lifetimes::internal::LiveOriginsAnalysis const&, clang::lifetimes::internal::FactManager const&, clang::AnalysisDeclContext&, clang::lifetimes::LifetimeSafetyReporter*))
>>> referenced by LoanPropagation.cpp
>>>               tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/LoanPropagation.cpp.o:(clang::lifetimes::internal::DataflowAnalysis<clang::lifetimes::internal::(anonymous namespace)::AnalysisImpl, clang::lifetimes::internal::(anonymous namespace)::Lattice, (clang::lifetimes::internal::Direction)0>::run())
>>> referenced 2 more times

ld.lld: error: undefined symbol: clang::PostOrderCFGView::create(clang::AnalysisDeclContext&)
>>> referenced by Facts.cpp
>>>               tools/clang/lib/Analysis/LifetimeSafety/CMakeFiles/obj.clangAnalysisLifetimeSafety.dir/Facts.cpp.o:(clang::lifetimes::internal::FactManager::dump(clang::CFG const&, clang::AnalysisDeclContext&) const)

```

</details>

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


More information about the llvm-commits mailing list