mirror of
git://sourceware.org/git/glibc.git
synced 2025-03-06 20:58:33 +01:00
not-cancel.h: Support testing fortify build with Clang
When Clang is used to test fortify glibc build configured with --enable-fortify-source=N clang issues errors like In file included from tst-rfc3484.c:60: In file included from ./getaddrinfo.c:81: ../sysdeps/unix/sysv/linux/not-cancel.h:36:10: error: reference to overloaded function could not be resolved; did you mean to call it? 36 | __typeof (open64) __open64_nocancel; | ^~~~~~~~ ../include/bits/../../io/bits/fcntl2.h:127:1: note: possible target for call 127 | open64 (__fortify_clang_overload_arg (const char *, ,__path), int __oflag, | ^ ../include/bits/../../io/bits/fcntl2.h:118:1: note: possible target for call 118 | open64 (__fortify_clang_overload_arg (const char *, ,__path), int __oflag) | ^ ../include/bits/../../io/bits/fcntl2.h:114:1: note: possible target for call 114 | open64 (const char *__path, int __oflag, mode_t __mode, ...) | ^ ../io/fcntl.h:219:12: note: possible target for call 219 | extern int open64 (const char *__file, int __oflag, ...) __nonnull ((1)); | ^ because clang fortify support for functions with variable arguments relies on function overload. Update not-cancel.h to avoid __typeof on functions with variable arguments. Co-Authored-By: Adhemerval Zanella <adhemerval.zanella@linaro.org> Signed-off-by: H.J. Lu <hjl.tools@gmail.com> Reviewed-by: Sam James <sam@gentoo.org>
This commit is contained in:
parent
dbc9a40007
commit
ed97ef7a4b
1 changed files with 5 additions and 5 deletions
|
@ -30,16 +30,16 @@
|
|||
#include <sys/random.h>
|
||||
|
||||
/* Non cancellable open syscall. */
|
||||
__typeof (open) __open_nocancel;
|
||||
extern int __open_nocancel (const char *, int, ...);
|
||||
|
||||
/* Non cancellable open syscall (LFS version). */
|
||||
__typeof (open64) __open64_nocancel;
|
||||
extern int __open64_nocancel (const char *, int, ...);
|
||||
|
||||
/* Non cancellable openat syscall. */
|
||||
__typeof (openat) __openat_nocancel;
|
||||
extern int __openat_nocancel (int fd, const char *, int, ...);
|
||||
|
||||
/* Non cacellable openat syscall (LFS version). */
|
||||
__typeof (openat64) __openat64_nocancel;
|
||||
extern int __openat64_nocancel (int fd, const char *, int, ...);
|
||||
|
||||
/* Non cancellable read syscall. */
|
||||
__typeof (__read) __read_nocancel;
|
||||
|
@ -54,7 +54,7 @@ __typeof (__write) __write_nocancel;
|
|||
__typeof (__close) __close_nocancel;
|
||||
|
||||
/* Uncancelable fcntl. */
|
||||
__typeof (__fcntl) __fcntl64_nocancel;
|
||||
int __fcntl64_nocancel (int, int, ...);
|
||||
|
||||
#if IS_IN (libc) || IS_IN (rtld)
|
||||
hidden_proto (__open_nocancel)
|
||||
|
|
Loading…
Add table
Reference in a new issue