[llvm] [llvm-dwarfdump][LineCov 1/3] Add variable coverage metrics (PR #169646)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 21 12:53:10 PST 2026


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `clang-with-lto-ubuntu` running on `as-worker-91` while building `llvm` at step 6 "build-stage1-compiler".

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

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

```
Step 6 (build-stage1-compiler) failure: build (failure)
...
908.629 [1089/72/5679] Building CXX object tools/llvm-exegesis/lib/CMakeFiles/LLVMExegesis.dir/RegisterAliasing.cpp.o
908.679 [1088/72/5680] Building CXX object tools/llvm-cxxdump/CMakeFiles/llvm-cxxdump.dir/llvm-cxxdump.cpp.o
909.499 [1087/72/5681] Building CXX object tools/llvm-cov/CMakeFiles/llvm-cov.dir/CoverageExporterJson.cpp.o
909.749 [1086/72/5682] Building CXX object tools/llvm-exegesis/lib/CMakeFiles/LLVMExegesis.dir/ValidationEvent.cpp.o
909.926 [1085/72/5683] Linking CXX executable bin/llvm-cxxdump
909.929 [1084/72/5684] Building CXX object tools/llvm-exegesis/lib/X86/CMakeFiles/LLVMExegesisX86.dir/X86Counter.cpp.o
910.144 [1083/72/5685] Building CXX object tools/llvm-exegesis/lib/CMakeFiles/LLVMExegesis.dir/MCInstrDescView.cpp.o
910.318 [1082/72/5686] Building CXX object tools/llvm-diff/lib/CMakeFiles/LLVMDiff.dir/DifferenceEngine.cpp.o
910.345 [1081/72/5687] Linking CXX static library lib/libLLVMDiff.a
910.629 [1080/72/5688] Building CXX object tools/llvm-dwarfdump/CMakeFiles/llvm-dwarfdump.dir/Coverage.cpp.o
FAILED: tools/llvm-dwarfdump/CMakeFiles/llvm-dwarfdump.dir/Coverage.cpp.o 
/usr/bin/c++ -DLLVM_BUILD_STATIC -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/buildbot/as-worker-91/clang-with-lto-ubuntu/build/stage1/tools/llvm-dwarfdump -I/home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/tools/llvm-dwarfdump -I/home/buildbot/as-worker-91/clang-with-lto-ubuntu/build/stage1/include -I/home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/include -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 -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -fno-exceptions -funwind-tables -fno-rtti -std=c++17 -MD -MT tools/llvm-dwarfdump/CMakeFiles/llvm-dwarfdump.dir/Coverage.cpp.o -MF tools/llvm-dwarfdump/CMakeFiles/llvm-dwarfdump.dir/Coverage.cpp.o.d -o tools/llvm-dwarfdump/CMakeFiles/llvm-dwarfdump.dir/Coverage.cpp.o -c /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/tools/llvm-dwarfdump/Coverage.cpp
/home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/tools/llvm-dwarfdump/Coverage.cpp: In function ‘llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > computeVariableCoverage(llvm::DWARFContext&, llvm::DWARFDie, const llvm::DWARFDebugLine::LineTable*)’:
/home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/tools/llvm-dwarfdump/Coverage.cpp:69:22: error: ambiguous overload for ‘operator=’ (operand types are ‘std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >’ and ‘<brace-enclosed initializer list>’)
   69 |           Lines = {{}};
      |                      ^
In file included from /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/include/llvm/ADT/DenseMapInfo.h:21,
                 from /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/include/llvm/ADT/DenseMap.h:18,
                 from /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/include/llvm/ADT/MapVector.h:20,
                 from /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.h:12,
                 from /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/tools/llvm-dwarfdump/Coverage.cpp:9:
/usr/include/c++/11/optional:803:9: note: candidate: ‘std::enable_if_t<__and_v<std::__not_<std::is_same<std::optional<_Tp>, typename std::remove_cv<typename std::remove_reference<_Up>::type>::type> >, std::__not_<std::__and_<std::is_scalar<_Tp>, std::is_same<_Tp, typename std::decay<_Up>::type> > >, std::is_constructible<_Tp, _Up>, std::is_assignable<_Tp&, _Up> >, std::optional<_Tp>&> std::optional<_Tp>::operator=(_Up&&) [with _Up = llvm::DenseSet<std::pair<short unsigned int, long unsigned int> >; _Tp = llvm::DenseSet<std::pair<short unsigned int, long unsigned int> >; std::enable_if_t<__and_v<std::__not_<std::is_same<std::optional<_Tp>, typename std::remove_cv<typename std::remove_reference<_Up>::type>::type> >, std::__not_<std::__and_<std::is_scalar<_Tp>, std::is_same<_Tp, typename std::decay<_Up>::type> > >, std::is_constructible<_Tp, _Up>, std::is_assignable<_Tp&, _Up> >, std::optional<_Tp>&> = std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >&; typename std::decay<_Up>::type = std::decay<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >::type; typename std::remove_cv<typename std::remove_reference<_Up>::type>::type = llvm::DenseSet<std::pair<short unsigned int, long unsigned int> >; typename std::remove_reference<_Up>::type = llvm::DenseSet<std::pair<short unsigned int, long unsigned int> >]’
  803 |         operator=(_Up&& __u)
      |         ^~~~~~~~
/usr/include/c++/11/optional:789:7: note: candidate: ‘std::optional<_Tp>& std::optional<_Tp>::operator=(std::nullopt_t) [with _Tp = llvm::DenseSet<std::pair<short unsigned int, long unsigned int> >]’
  789 |       operator=(nullopt_t) noexcept
      |       ^~~~~~~~
/usr/include/c++/11/optional:662:11: note: candidate: ‘constexpr std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >& std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >::operator=(const std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >&)’
  662 |     class optional
      |           ^~~~~~~~
/usr/include/c++/11/optional:662:11: note: candidate: ‘constexpr std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >& std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >::operator=(std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >&&)’
/home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/tools/llvm-dwarfdump/Coverage.cpp:85:22: error: ambiguous overload for ‘operator=’ (operand types are ‘std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >’ and ‘<brace-enclosed initializer list>’)
   85 |     ParentLines = {{}};
      |                      ^
In file included from /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/include/llvm/ADT/DenseMapInfo.h:21,
                 from /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/include/llvm/ADT/DenseMap.h:18,
                 from /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/include/llvm/ADT/MapVector.h:20,
                 from /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.h:12,
                 from /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/tools/llvm-dwarfdump/Coverage.cpp:9:
/usr/include/c++/11/optional:803:9: note: candidate: ‘std::enable_if_t<__and_v<std::__not_<std::is_same<std::optional<_Tp>, typename std::remove_cv<typename std::remove_reference<_Up>::type>::type> >, std::__not_<std::__and_<std::is_scalar<_Tp>, std::is_same<_Tp, typename std::decay<_Up>::type> > >, std::is_constructible<_Tp, _Up>, std::is_assignable<_Tp&, _Up> >, std::optional<_Tp>&> std::optional<_Tp>::operator=(_Up&&) [with _Up = llvm::DenseSet<std::pair<short unsigned int, long unsigned int> >; _Tp = llvm::DenseSet<std::pair<short unsigned int, long unsigned int> >; std::enable_if_t<__and_v<std::__not_<std::is_same<std::optional<_Tp>, typename std::remove_cv<typename std::remove_reference<_Up>::type>::type> >, std::__not_<std::__and_<std::is_scalar<_Tp>, std::is_same<_Tp, typename std::decay<_Up>::type> > >, std::is_constructible<_Tp, _Up>, std::is_assignable<_Tp&, _Up> >, std::optional<_Tp>&> = std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >&; typename std::decay<_Up>::type = std::decay<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >::type; typename std::remove_cv<typename std::remove_reference<_Up>::type>::type = llvm::DenseSet<std::pair<short unsigned int, long unsigned int> >; typename std::remove_reference<_Up>::type = llvm::DenseSet<std::pair<short unsigned int, long unsigned int> >]’
  803 |         operator=(_Up&& __u)
      |         ^~~~~~~~
/usr/include/c++/11/optional:789:7: note: candidate: ‘std::optional<_Tp>& std::optional<_Tp>::operator=(std::nullopt_t) [with _Tp = llvm::DenseSet<std::pair<short unsigned int, long unsigned int> >]’
  789 |       operator=(nullopt_t) noexcept
      |       ^~~~~~~~
/usr/include/c++/11/optional:662:11: note: candidate: ‘constexpr std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >& std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >::operator=(const std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >&)’
  662 |     class optional
      |           ^~~~~~~~
/usr/include/c++/11/optional:662:11: note: candidate: ‘constexpr std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >& std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >::operator=(std::optional<llvm::DenseSet<std::pair<short unsigned int, long unsigned int> > >&&)’

```

</details>

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


More information about the llvm-commits mailing list