[clang] [clang-tools-extra] [clang] Unify `SourceLocation` and `IdentifierInfo*` pair-like data structures to `IdentifierLoc` (PR #135808)

LLVM Continuous Integration via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 16 06:02:35 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `lldb-arm-ubuntu` running on `linaro-lldb-arm-ubuntu` while building `clang-tools-extra,clang` at step 4 "build".

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

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

```
Step 4 (build) failure: build (failure)
...
296.098 [159/88/6366] Building CXX object tools/llvm-objcopy/CMakeFiles/llvm-objcopy.dir/llvm-objcopy-driver.cpp.o
296.109 [158/88/6367] Linking CXX executable bin/llvm-yaml-numeric-parser-fuzzer
296.146 [158/87/6368] Linking CXX executable bin/llvm-pdbutil
296.168 [158/86/6369] Linking CXX executable bin/llvm-rust-demangle-fuzzer
296.181 [158/85/6370] Building CXX object tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/CMakeFiles/lldbPluginAppleObjCRuntime.dir/AppleObjCTrampolineHandler.cpp.o
296.197 [158/84/6371] Linking CXX executable bin/llvm-yaml-parser-fuzzer
296.291 [158/83/6372] Building CXX object tools/lldb/source/Plugins/Language/CPlusPlus/CMakeFiles/lldbPluginCPlusPlusLanguage.dir/GenericBitset.cpp.o
296.326 [158/82/6373] Linking CXX executable bin/llvm-dwarfdump
296.330 [157/82/6374] Linking CXX executable bin/llvm-stress
296.333 [157/81/6375] Building CXX object tools/lldb/source/Plugins/ExpressionParser/Clang/CMakeFiles/lldbPluginExpressionParserClang.dir/ClangExpressionParser.cpp.o
FAILED: tools/lldb/source/Plugins/ExpressionParser/Clang/CMakeFiles/lldbPluginExpressionParserClang.dir/ClangExpressionParser.cpp.o 
/usr/local/bin/c++ -DGTEST_HAS_RTTI=0 -DHAVE_ROUND -D_DEBUG -D_FILE_OFFSET_BITS=64 -D_GLIBCXX_ASSERTIONS -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/tcwg-buildbot/worker/lldb-arm-ubuntu/build/tools/lldb/source/Plugins/ExpressionParser/Clang -I/home/tcwg-buildbot/worker/lldb-arm-ubuntu/llvm-project/lldb/source/Plugins/ExpressionParser/Clang -I/home/tcwg-buildbot/worker/lldb-arm-ubuntu/llvm-project/lldb/include -I/home/tcwg-buildbot/worker/lldb-arm-ubuntu/build/tools/lldb/include -I/home/tcwg-buildbot/worker/lldb-arm-ubuntu/build/include -I/home/tcwg-buildbot/worker/lldb-arm-ubuntu/llvm-project/llvm/include -I/usr/include/python3.10 -I/home/tcwg-buildbot/worker/lldb-arm-ubuntu/llvm-project/llvm/../clang/include -I/home/tcwg-buildbot/worker/lldb-arm-ubuntu/build/tools/lldb/../clang/include -I/home/tcwg-buildbot/worker/lldb-arm-ubuntu/llvm-project/lldb/source -I/home/tcwg-buildbot/worker/lldb-arm-ubuntu/build/tools/lldb/source -isystem /usr/include/libxml2 -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 -fdiagnostics-color -ffunction-sections -fdata-sections -Wno-unknown-pragmas -Wno-strict-aliasing -Wno-vla-extension -O3 -DNDEBUG -std=c++17  -fno-exceptions -funwind-tables -fno-rtti -UNDEBUG -MD -MT tools/lldb/source/Plugins/ExpressionParser/Clang/CMakeFiles/lldbPluginExpressionParserClang.dir/ClangExpressionParser.cpp.o -MF tools/lldb/source/Plugins/ExpressionParser/Clang/CMakeFiles/lldbPluginExpressionParserClang.dir/ClangExpressionParser.cpp.o.d -o tools/lldb/source/Plugins/ExpressionParser/Clang/CMakeFiles/lldbPluginExpressionParserClang.dir/ClangExpressionParser.cpp.o -c /home/tcwg-buildbot/worker/lldb-arm-ubuntu/llvm-project/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
../llvm-project/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp:138:61: error: no viable conversion from 'const value_type' (aka 'const clang::IdentifierLoc') to 'const std::pair<IdentifierInfo *, SourceLocation>'
  138 |     for (const std::pair<IdentifierInfo *, SourceLocation> &component : path)
      |                                                             ^         ~
/usr/lib/gcc/arm-linux-gnueabihf/11/../../../../include/c++/11/bits/stl_pair.h:314:17: note: candidate constructor not viable: no known conversion from 'const value_type' (aka 'const clang::IdentifierLoc') to 'const pair<IdentifierInfo *, SourceLocation> &' for 1st argument
  314 |       constexpr pair(const pair&) = default;    ///< Copy constructor
      |                 ^    ~~~~~~~~~~~
/usr/lib/gcc/arm-linux-gnueabihf/11/../../../../include/c++/11/bits/stl_pair.h:315:17: note: candidate constructor not viable: no known conversion from 'const value_type' (aka 'const clang::IdentifierLoc') to 'pair<IdentifierInfo *, SourceLocation> &&' for 1st argument
  315 |       constexpr pair(pair&&) = default;         ///< Move constructor
      |                 ^    ~~~~~~
/usr/lib/gcc/arm-linux-gnueabihf/11/../../../../include/c++/11/bits/stl_pair.h:300:19: note: candidate template ignored: could not match 'const pair<_U1, _U2>' against 'const value_type' (aka 'const clang::IdentifierLoc')
  300 |         constexpr pair(const pair<_U1, _U2>& __p)
      |                   ^
/usr/lib/gcc/arm-linux-gnueabihf/11/../../../../include/c++/11/bits/stl_pair.h:371:12: note: candidate template ignored: could not match 'pair<_U1, _U2>' against 'const value_type' (aka 'const clang::IdentifierLoc')
  371 |         constexpr pair(pair<_U1, _U2>&& __p)
      |                   ^
/usr/lib/gcc/arm-linux-gnueabihf/11/../../../../include/c++/11/bits/stl_pair.h:309:21: note: explicit constructor is not a candidate
  309 |         explicit constexpr pair(const pair<_U1, _U2>& __p)
      |                            ^
/usr/lib/gcc/arm-linux-gnueabihf/11/../../../../include/c++/11/bits/stl_pair.h:381:21: note: explicit constructor is not a candidate
  381 |         explicit constexpr pair(pair<_U1, _U2>&& __p)
      |                            ^
../llvm-project/llvm/include/llvm/ADT/ArrayRef.h:156:14: note: selected 'begin' function with iterator type 'iterator' (aka 'const clang::IdentifierLoc *')
  156 |     iterator begin() const { return Data; }
      |              ^
1 error generated.
296.341 [157/80/6376] Linking CXX executable bin/llvm-strings
296.346 [157/79/6377] Copying llvm-locstats into /home/tcwg-buildbot/worker/lldb-arm-ubuntu/build/./bin
296.408 [157/78/6378] Linking CXX executable bin/llvm-extract
296.417 [157/77/6379] Linking CXX executable bin/llvm-sim
296.431 [157/76/6380] Building CXX object tools/lldb/source/Version/CMakeFiles/lldbVersion.dir/Version.cpp.o
296.449 [157/75/6381] Linking CXX executable bin/llvm-mc
296.505 [157/74/6382] Linking CXX executable bin/llvm-size
296.555 [157/73/6383] Linking CXX executable bin/obj2yaml
296.555 [157/72/6384] Linking CXX executable bin/llvm-ml
296.564 [157/71/6385] Linking CXX executable bin/llvm-readtapi
296.582 [157/70/6386] Linking CXX executable bin/sanstats
296.591 [157/69/6387] Linking CXX executable bin/llvm-rc

```

</details>

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


More information about the cfe-commits mailing list