about summary refs log tree commit diff
path: root/io
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2021-08-06 09:51:38 +0200
committerFlorian Weimer <fweimer@redhat.com>2021-08-06 09:52:00 +0200
commitc87fcacc50505d550f1bb038382bcc7ea73a5926 (patch)
treed14fd134913f22cf9ec2f9023fe5fed57fbcfe8b /io
parentfb89489636766532902d4a02a08dbb72efed4faf (diff)
downloadglibc-c87fcacc50505d550f1bb038382bcc7ea73a5926.tar.gz
glibc-c87fcacc50505d550f1bb038382bcc7ea73a5926.tar.xz
glibc-c87fcacc50505d550f1bb038382bcc7ea73a5926.zip
Linux: Fix fcntl, ioctl, prctl redirects for _TIME_BITS=64 (bug 28182)
__REDIRECT and __THROW are not compatible with C++ due to the ordering of the
__asm__ alias and the throw specifier. __REDIRECT_NTH has to be used
instead.

Fixes commit 8a40aff86ba5f64a3a84883e539cb67b ("io: Add time64 alias
for fcntl"), commit 82c395d91ea4f69120d453aeec398e30 ("misc: Add
time64 alias for ioctl"), commit b39ffab860cd743a82c91946619f1b8158
("Linux: Add time64 alias for prctl").

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Diffstat (limited to 'io')
-rw-r--r--io/fcntl.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/io/fcntl.h b/io/fcntl.h
index 8917a73b42..1c96f98f4d 100644
--- a/io/fcntl.h
+++ b/io/fcntl.h
@@ -187,10 +187,10 @@ extern int fcntl64 (int __fd, int __cmd, ...);
 # endif
 #else /* __USE_TIME_BITS64 */
 # ifdef __REDIRECT
-extern int __REDIRECT (fcntl, (int __fd, int __request, ...),
-		       __fcntl_time64)  __THROW;
-extern int __REDIRECT (fcntl64, (int __fd, int __request, ...),
-		       __fcntl_time64)  __THROW;
+extern int __REDIRECT_NTH (fcntl, (int __fd, int __request, ...),
+			   __fcntl_time64);
+extern int __REDIRECT_NTH (fcntl64, (int __fd, int __request, ...),
+			   __fcntl_time64);
 # else
 extern int __fcntl_time64 (int __fd, int __request, ...) __THROW;
 #  define fcntl64 __fcntl_time64