[libc-commits] [libc] [libc][POSIX][pthreads] implemented missing pthread_rwlockattr functions (PR #90249)

Nick Desaulniers via libc-commits libc-commits at lists.llvm.org
Mon May 20 10:21:52 PDT 2024


nickdesaulniers wrote:

The errors from the bot are:
```
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/libc/src/pthread/pthread_rwlockattr_getkind_np.cpp:20:17: error: no member named 'pref' in 'pthread_rwlockattr_t'
  *pref = attr->pref;
          ~~~~  ^
1 error generated.
[298/496] Building CXX object projects/libc/src/stdlib/CMakeFiles/libc.src.stdlib.strfroml.dir/strfroml.cpp.o
[299/496] Building CXX object projects/libc/src/pthread/CMakeFiles/libc.src.pthread.pthread_rwlockattr_destroy.dir/pthread_rwlockattr_destroy.cpp.o
[300/496] Building CXX object projects/libc/src/pthread/CMakeFiles/libc.src.pthread.pthread_rwlockattr_setkind_np.dir/pthread_rwlockattr_setkind_np.cpp.o
FAILED: projects/libc/src/pthread/CMakeFiles/libc.src.pthread.pthread_rwlockattr_setkind_np.dir/pthread_rwlockattr_setkind_np.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_19_0_0_git -D_DEBUG -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/projects/libc/src/pthread -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/libc/src/pthread -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/libc -isystem /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/projects/libc/include -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 -g -fpie -DLIBC_FULL_BUILD -ffreestanding -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 -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=c++17 -MD -MT projects/libc/src/pthread/CMakeFiles/libc.src.pthread.pthread_rwlockattr_setkind_np.dir/pthread_rwlockattr_setkind_np.cpp.o -MF projects/libc/src/pthread/CMakeFiles/libc.src.pthread.pthread_rwlockattr_setkind_np.dir/pthread_rwlockattr_setkind_np.cpp.o.d -o projects/libc/src/pthread/CMakeFiles/libc.src.pthread.pthread_rwlockattr_setkind_np.dir/pthread_rwlockattr_setkind_np.cpp.o -c /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/libc/src/pthread/pthread_rwlockattr_setkind_np.cpp
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/libc/src/pthread/pthread_rwlockattr_setkind_np.cpp:26:9: error: no member named 'pref' in 'pthread_rwlockattr_t'
  attr->pref = pref;
  ~~~~  ^
1 error generated.
[301/496] Building CXX object projects/libc/src/pthread/CMakeFiles/libc.src.pthread.pthread_mutex_lock.dir/pthread_mutex_lock.cpp.o
[302/496] Building CXX object projects/libc/src/string/CMakeFiles/libc.src.string.memset_explicit.dir/memset_explicit.cpp.o
[303/496] Building CXX object projects/libc/src/pthread/CMakeFiles/libc.src.pthread.pthread_mutex_unlock.dir/pthread_mutex_unlock.cpp.o
[304/496] Building CXX object projects/libc/src/pthread/CMakeFiles/libc.src.pthread.pthread_rwlockattr_init.dir/pthread_rwlockattr_init.cpp.o
FAILED: projects/libc/src/pthread/CMakeFiles/libc.src.pthread.pthread_rwlockattr_init.dir/pthread_rwlockattr_init.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_19_0_0_git -D_DEBUG -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/projects/libc/src/pthread -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/libc/src/pthread -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/libc -isystem /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/projects/libc/include -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 -g -fpie -DLIBC_FULL_BUILD -ffreestanding -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 -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=c++17 -MD -MT projects/libc/src/pthread/CMakeFiles/libc.src.pthread.pthread_rwlockattr_init.dir/pthread_rwlockattr_init.cpp.o -MF projects/libc/src/pthread/CMakeFiles/libc.src.pthread.pthread_rwlockattr_init.dir/pthread_rwlockattr_init.cpp.o.d -o projects/libc/src/pthread/CMakeFiles/libc.src.pthread.pthread_rwlockattr_init.dir/pthread_rwlockattr_init.cpp.o -c /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/libc/src/pthread/pthread_rwlockattr_init.cpp
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/libc/src/pthread/pthread_rwlockattr_init.cpp:20:9: error: no member named 'pref' in 'pthread_rwlockattr_t'
  attr->pref = PTHREAD_RWLOCK_PREFER_READER_NP;
  ~~~~  ^
```
So it looks like you missed adding the new member to the struct definition for the getter/setters you added.

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


More information about the libc-commits mailing list