[libc-commits] [libc] [libc] Build with -Wshadow (PR #196519)
LLVM Continuous Integration via libc-commits
libc-commits at lists.llvm.org
Tue May 12 06:56:37 PDT 2026
llvm-ci wrote:
LLVM Buildbot has detected a new failure on builder `libc-x86_64-debian-fullbuild-dbg-asan` running on `libc-x86_64-debian-fullbuild` while building `libc` at step 4 "annotate".
Full details are available at: https://lab.llvm.org/buildbot/#/builders/171/builds/46684
<details>
<summary>Here is the relevant piece of the build log for the reference</summary>
```
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[205/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtoll_l.dir/strtoll_l.cpp.o
[206/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtoull_l.dir/strtoull_l.cpp.o
[207/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtoul_l.dir/strtoul_l.cpp.o
[208/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtol_l.dir/strtol_l.cpp.o
[209/704] Building CXX object libc/src/stdlib/linux/CMakeFiles/libc.src.stdlib.linux.setenv.dir/setenv.cpp.o
[210/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.memmem.dir/memmem.cpp.o
[211/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.environ_internal.dir/environ_internal.cpp.o
[212/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.memccpy.dir/memccpy.cpp.o
[213/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.memrchr.dir/memrchr.cpp.o
[214/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.abort.dir/abort.cpp.o
FAILED: libc/src/stdlib/CMakeFiles/libc.src.stdlib.abort.dir/abort.cpp.o
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc -isystem /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fno-omit-frame-pointer -fsanitize=address -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_COPT_STRING_LENGTH_IMPL=clang_vector -DLIBC_COPT_FIND_FIRST_CHARACTER_IMPL=word -DLIBC_ADD_NULL_CHECKS -DLIBC_ERRNO_MODE=LIBC_ERRNO_MODE_DEFAULT -DLIBC_THREAD_MODE=LIBC_THREAD_MODE_PLATFORM -DLIBC_COPT_TIMEOUT_ENSURE_MONOTONICITY -DLIBC_CONF_WCTYPE_MODE=LIBC_WCTYPE_MODE_ASCII -DLIBC_COPT_RAW_MUTEX_DEFAULT_SPIN_COUNT=100 -fpie -ffreestanding -DLIBC_FULL_BUILD -nostdlibinc -idirafter/usr/include -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fstack-protector-strong -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wshadow -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -DLIBC_COPT_RWLOCK_DEFAULT_SPIN_COUNT=100 -std=gnu++17 -MD -MT libc/src/stdlib/CMakeFiles/libc.src.stdlib.abort.dir/abort.cpp.o -MF libc/src/stdlib/CMakeFiles/libc.src.stdlib.abort.dir/abort.cpp.o.d -o libc/src/stdlib/CMakeFiles/libc.src.stdlib.abort.dir/abort.cpp.o -c /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/stdlib/abort.cpp
In file included from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/stdlib/abort.cpp:10:
In file included from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/stdlib/abort_utils.h:17:
In file included from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/stdlib/linux/abort_utils.h:18:
In file included from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/signal/linux/signal_utils.h:22:
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/__support/threads/raw_rwlock.h:273:23: error: declaration shadows a field of '__llvm_libc_20_0_0_git::rwlock::RwState' [-Werror,-Wshadow]
[=](RwState state) {
^
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/__support/threads/raw_rwlock.h:150:7: note: previous declaration is here
int state;
^
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/__support/threads/raw_rwlock.h:284:23: error: declaration shadows a field of '__llvm_libc_20_0_0_git::rwlock::RwState' [-Werror,-Wshadow]
[=](RwState state) {
^
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/__support/threads/raw_rwlock.h:150:7: note: previous declaration is here
int state;
^
2 errors generated.
[215/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.quick_exit.dir/quick_exit.cpp.o
[216/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtold_l.dir/strtold_l.cpp.o
[217/704] Building CXX object libc/src/stdio/CMakeFiles/libc.src.stdio.sscanf.dir/sscanf.cpp.o
[218/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtod_l.dir/strtod_l.cpp.o
[219/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtof_l.dir/strtof_l.cpp.o
[220/704] Building CXX object libc/src/stdio/CMakeFiles/libc.src.stdio.vsscanf.dir/vsscanf.cpp.o
[221/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.qsort_r.dir/qsort_r.cpp.o
[222/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.qsort.dir/qsort.cpp.o
[223/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.mempcpy.dir/mempcpy.cpp.o
[224/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.stpcpy.dir/stpcpy.cpp.o
[225/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.memchr.dir/memchr.cpp.o
[226/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strfromd.dir/strfromd.cpp.o
[227/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.stpncpy.dir/stpncpy.cpp.o
[228/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.at_quick_exit.dir/at_quick_exit.cpp.o
[229/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.strchr.dir/strchr.cpp.o
[230/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.atexit.dir/atexit.cpp.o
[231/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.strcat.dir/strcat.cpp.o
[232/704] Building CXX object libc/src/stdio/CMakeFiles/libc.src.stdio.snprintf.dir/snprintf.cpp.o
[233/704] Building CXX object libc/src/stdio/generic/CMakeFiles/libc.src.stdio.generic.vfscanf.dir/vfscanf.cpp.o
[234/704] Building CXX object libc/src/stdio/generic/CMakeFiles/libc.src.stdio.generic.scanf.dir/scanf.cpp.o
Step 6 (build libc) failure: build libc (failure)
...
[205/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtoll_l.dir/strtoll_l.cpp.o
[206/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtoull_l.dir/strtoull_l.cpp.o
[207/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtoul_l.dir/strtoul_l.cpp.o
[208/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtol_l.dir/strtol_l.cpp.o
[209/704] Building CXX object libc/src/stdlib/linux/CMakeFiles/libc.src.stdlib.linux.setenv.dir/setenv.cpp.o
[210/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.memmem.dir/memmem.cpp.o
[211/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.environ_internal.dir/environ_internal.cpp.o
[212/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.memccpy.dir/memccpy.cpp.o
[213/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.memrchr.dir/memrchr.cpp.o
[214/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.abort.dir/abort.cpp.o
FAILED: libc/src/stdlib/CMakeFiles/libc.src.stdlib.abort.dir/abort.cpp.o
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc -isystem /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fno-omit-frame-pointer -fsanitize=address -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_COPT_STRING_LENGTH_IMPL=clang_vector -DLIBC_COPT_FIND_FIRST_CHARACTER_IMPL=word -DLIBC_ADD_NULL_CHECKS -DLIBC_ERRNO_MODE=LIBC_ERRNO_MODE_DEFAULT -DLIBC_THREAD_MODE=LIBC_THREAD_MODE_PLATFORM -DLIBC_COPT_TIMEOUT_ENSURE_MONOTONICITY -DLIBC_CONF_WCTYPE_MODE=LIBC_WCTYPE_MODE_ASCII -DLIBC_COPT_RAW_MUTEX_DEFAULT_SPIN_COUNT=100 -fpie -ffreestanding -DLIBC_FULL_BUILD -nostdlibinc -idirafter/usr/include -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fstack-protector-strong -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wshadow -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -DLIBC_COPT_RWLOCK_DEFAULT_SPIN_COUNT=100 -std=gnu++17 -MD -MT libc/src/stdlib/CMakeFiles/libc.src.stdlib.abort.dir/abort.cpp.o -MF libc/src/stdlib/CMakeFiles/libc.src.stdlib.abort.dir/abort.cpp.o.d -o libc/src/stdlib/CMakeFiles/libc.src.stdlib.abort.dir/abort.cpp.o -c /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/stdlib/abort.cpp
In file included from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/stdlib/abort.cpp:10:
In file included from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/stdlib/abort_utils.h:17:
In file included from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/stdlib/linux/abort_utils.h:18:
In file included from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/signal/linux/signal_utils.h:22:
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/__support/threads/raw_rwlock.h:273:23: error: declaration shadows a field of '__llvm_libc_20_0_0_git::rwlock::RwState' [-Werror,-Wshadow]
[=](RwState state) {
^
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/__support/threads/raw_rwlock.h:150:7: note: previous declaration is here
int state;
^
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/__support/threads/raw_rwlock.h:284:23: error: declaration shadows a field of '__llvm_libc_20_0_0_git::rwlock::RwState' [-Werror,-Wshadow]
[=](RwState state) {
^
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/__support/threads/raw_rwlock.h:150:7: note: previous declaration is here
int state;
^
2 errors generated.
[215/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.quick_exit.dir/quick_exit.cpp.o
[216/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtold_l.dir/strtold_l.cpp.o
[217/704] Building CXX object libc/src/stdio/CMakeFiles/libc.src.stdio.sscanf.dir/sscanf.cpp.o
[218/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtod_l.dir/strtod_l.cpp.o
[219/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strtof_l.dir/strtof_l.cpp.o
[220/704] Building CXX object libc/src/stdio/CMakeFiles/libc.src.stdio.vsscanf.dir/vsscanf.cpp.o
[221/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.qsort_r.dir/qsort_r.cpp.o
[222/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.qsort.dir/qsort.cpp.o
[223/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.mempcpy.dir/mempcpy.cpp.o
[224/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.stpcpy.dir/stpcpy.cpp.o
[225/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.memchr.dir/memchr.cpp.o
[226/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.strfromd.dir/strfromd.cpp.o
[227/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.stpncpy.dir/stpncpy.cpp.o
[228/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.at_quick_exit.dir/at_quick_exit.cpp.o
[229/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.strchr.dir/strchr.cpp.o
[230/704] Building CXX object libc/src/stdlib/CMakeFiles/libc.src.stdlib.atexit.dir/atexit.cpp.o
[231/704] Building CXX object libc/src/string/CMakeFiles/libc.src.string.strcat.dir/strcat.cpp.o
[232/704] Building CXX object libc/src/stdio/CMakeFiles/libc.src.stdio.snprintf.dir/snprintf.cpp.o
[233/704] Building CXX object libc/src/stdio/generic/CMakeFiles/libc.src.stdio.generic.vfscanf.dir/vfscanf.cpp.o
[234/704] Building CXX object libc/src/stdio/generic/CMakeFiles/libc.src.stdio.generic.scanf.dir/scanf.cpp.o
```
</details>
https://github.com/llvm/llvm-project/pull/196519
More information about the libc-commits
mailing list