Возможно, у кого-то здесь больше опыта с LLVM, потому запощу сюда свою проблему со сборкой, которая появилась не так давно. Собираю compiler-rt с musl, ещё в начале зимы всё работало, но сейчас что-то сломали.
Не найден real_shmctl
, который используется тут. В musl shmctl есть. В чём может быть проблема?
llvm/projects/compiler-rt/lib/msan/msan_interceptors.cc:1446:15: error: no member named 'real_shmctl' in namespace '__interception'; did you mean 'real_ioctl'?
int res = REAL(shmctl)(shmid, shmctl_ipc_stat, &ds);
^~~~~~~~~~~~
llvm/projects/compiler-rt/lib/msan/../interception/interception.h:162:34: note: expanded from macro 'REAL'
# define REAL(x) __interception::PTR_TO_REAL(x)
~~~~~~~~~~~~~~~~^
llvm/projects/compiler-rt/lib/msan/../interception/interception.h:161:25: note: expanded from macro 'PTR_TO_REAL'
# define PTR_TO_REAL(x) real_##x
^
<scratch space>:70:1: note: expanded from here
real_shmctl
^
llvm/projects/compiler-rt/lib/msan/../sanitizer_common/sanitizer_common_interceptors.inc:1706:1: note: 'real_ioctl' declared here
INTERCEPTOR(int, ioctl, int d, unsigned long request, ...) {
^
llvm/projects/compiler-rt/lib/msan/../interception/interception.h:213:3: note: expanded from macro 'INTERCEPTOR'
DEFINE_REAL(ret_type, func, __VA_ARGS__) \
^
llvm/projects/compiler-rt/lib/msan/../interception/interception.h:194:23: note: expanded from macro 'DEFINE_REAL'
FUNC_TYPE(func) PTR_TO_REAL(func); \
^
llvm/projects/compiler-rt/lib/msan/../interception/interception.h:161:25: note: expanded from macro 'PTR_TO_REAL'
# define PTR_TO_REAL(x) real_##x
^
<scratch space>:108:1: note: expanded from here
real_ioctl
^