[clang-tools-extra] [clang-tidy] Fix `altera-id-dependent-backward-branch` false positives (PR #200660)

Leandro Lupori via cfe-commits cfe-commits at lists.llvm.org
Mon Jun 8 09:34:54 PDT 2026


luporl wrote:

It looks like this broke the following Arm buildbots:
- https://lab.llvm.org/buildbot/#/builders/39/builds/11162
- https://lab.llvm.org/buildbot/#/builders/135/builds/3802
- https://lab.llvm.org/buildbot/#/builders/79/builds/3378

```
******************** TEST 'Clang Tools :: clang-tidy/checkers/altera/id-dependent-backward-branch.cpp' FAILED ********************
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
/usr/bin/python3.10 /home/tcwg-buildbot/worker/clang-armv7-global-isel/llvm/clang-tools-extra/test/../test/clang-tidy/check_clang_tidy.py /home/tcwg-buildbot/worker/clang-armv7-global-isel/llvm/clang-tools-extra/test/clang-tidy/checkers/altera/id-dependent-backward-branch.cpp altera-id-dependent-backward-branch /home/tcwg-buildbot/worker/clang-armv7-global-isel/stage1/tools/clang/tools/extra/test/clang-tidy/checkers/altera/Output/id-dependent-backward-branch.cpp.tmp -- -header-filter=.* "--" -cl-std=CLC++1.0 -c
# executed command: /usr/bin/python3.10 /home/tcwg-buildbot/worker/clang-armv7-global-isel/llvm/clang-tools-extra/test/../test/clang-tidy/check_clang_tidy.py /home/tcwg-buildbot/worker/clang-armv7-global-isel/llvm/clang-tools-extra/test/clang-tidy/checkers/altera/id-dependent-backward-branch.cpp altera-id-dependent-backward-branch /home/tcwg-buildbot/worker/clang-armv7-global-isel/stage1/tools/clang/tools/extra/test/clang-tidy/checkers/altera/Output/id-dependent-backward-branch.cpp.tmp -- '-header-filter=.*' -- -cl-std=CLC++1.0 -c
# .---command stdout------------
# | Running ['clang-tidy', '--experimental-custom-checks', '/home/tcwg-buildbot/worker/clang-armv7-global-isel/stage1/tools/clang/tools/extra/test/clang-tidy/checkers/altera/Output/id-dependent-backward-branch.cpp.tmp.cpp', '-fix', '--checks=-*,altera-id-dependent-backward-branch', '-header-filter=.*', '--config={}', '--', '-cl-std=CLC++1.0', '-c', '-std=c++11', '-nostdinc++', '-isystem', '/home/tcwg-buildbot/worker/clang-armv7-global-isel/llvm/clang-tools-extra/test/../test/clang-tidy/checkers/Inputs/Headers/std']...
# | clang-tidy --experimental-custom-checks /home/tcwg-buildbot/worker/clang-armv7-global-isel/stage1/tools/clang/tools/extra/test/clang-tidy/checkers/altera/Output/id-dependent-backward-branch.cpp.tmp.cpp -fix --checks=-*,altera-id-dependent-backward-branch -header-filter=.* --config={} -- -cl-std=CLC++1.0 -c -std=c++11 -nostdinc++ -isystem /home/tcwg-buildbot/worker/clang-armv7-global-isel/llvm/clang-tools-extra/test/../test/clang-tidy/checkers/Inputs/Headers/std failed:
# | 3 warnings and 1 error generated.
# | Error while processing /home/tcwg-buildbot/worker/clang-armv7-global-isel/stage1/tools/clang/tools/extra/test/clang-tidy/checkers/altera/Output/id-dependent-backward-branch.cpp.tmp.cpp.
# | /home/tcwg-buildbot/worker/clang-armv7-global-isel/stage1/tools/clang/tools/extra/test/clang-tidy/checkers/altera/Output/id-dependent-backward-branch.cpp.tmp.cpp:4:15: error: functions that differ only in their return type cannot be overloaded [clang-diagnostic-error]
# |     4 | unsigned long get_local_id(unsigned);
# |       | ~~~~~~~~~~~~~ ^
# | /home/tcwg-buildbot/worker/clang-armv7-global-isel/stage1/tools/clang/tools/extra/test/clang-tidy/checkers/altera/Output/id-dependent-backward-branch.cpp.tmp.cpp:4:15: note: previous implicit declaration is here
# | /home/tcwg-buildbot/worker/clang-armv7-global-isel/stage1/tools/clang/tools/extra/test/clang-tidy/checkers/altera/Output/id-dependent-backward-branch.cpp.tmp.cpp:37:19: warning: backward branch (for loop) is ID-dependent due to ID function call and may cause performance degradation [altera-id-dependent-backward-branch]
# |    37 |   for (int i = 0; i < get_local_id(0); i++) {
# |       |                   ^
# | /home/tcwg-buildbot/worker/clang-armv7-global-isel/stage1/tools/clang/tools/extra/test/clang-tidy/checkers/altera/Output/id-dependent-backward-branch.cpp.tmp.cpp:43:10: warning: backward branch (while loop) is ID-dependent due to ID function call and may cause performance degradation [altera-id-dependent-backward-branch]
# |    43 |   while (j < get_local_id(0)) {
# |       |          ^
# | /home/tcwg-buildbot/worker/clang-armv7-global-isel/stage1/tools/clang/tools/extra/test/clang-tidy/checkers/altera/Output/id-dependent-backward-branch.cpp.tmp.cpp:50:12: warning: backward branch (do loop) is ID-dependent due to ID function call and may cause performance degradation [altera-id-dependent-backward-branch]
# |    50 |   } while (j < get_local_id(0));
# |       |            ^
# | Found compiler errors, but -fix-errors was not specified.
# | Fixes have NOT been applied.
# | 
# | Found compiler error(s).
```

Can you please take a look at it?

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


More information about the cfe-commits mailing list