about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--include/fcntl.h2
-rw-r--r--sysdeps/unix/sysv/linux/fcntl.c4
-rw-r--r--sysdeps/unix/sysv/linux/i386/fcntl.c4
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c4
5 files changed, 17 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index f3b6360811..479773a86f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2004-07-09  Ulrich Drepper  <drepper@redhat.com>
+
+	* sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute
+	to the front for gcc 3.5+.
+	* sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
+	* sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
+	* include/fcntl.h: Don't declare __fcntl_nocancel here if
+	NO_CANCELLATION is defined.
+
 2004-07-07  Jakub Jelinek  <jakub@redhat.com>
 
 	* elf/dl-fini.c (_dl_fini): Add nloaded variable, load
diff --git a/include/fcntl.h b/include/fcntl.h
index 78e30544fe..7764f1cd62 100644
--- a/include/fcntl.h
+++ b/include/fcntl.h
@@ -9,8 +9,10 @@ extern int __libc_open (const char *file, int oflag, ...);
 libc_hidden_proto (__libc_open)
 extern int __libc_creat (const char *file, mode_t mode);
 extern int __libc_fcntl (int fd, int cmd, ...);
+#ifndef NO_CANCELLATION
 extern int __fcntl_nocancel (int fd, int cmd, ...) attribute_hidden;
 libc_hidden_proto (__libc_fcntl)
+#endif
 extern int __open (__const char *__file, int __oflag, ...);
 libc_hidden_proto (__open)
 extern int __fcntl (int __fd, int __cmd, ...);
diff --git a/sysdeps/unix/sysv/linux/fcntl.c b/sysdeps/unix/sysv/linux/fcntl.c
index ab8d9cfb9c..87fa2ffe31 100644
--- a/sysdeps/unix/sysv/linux/fcntl.c
+++ b/sysdeps/unix/sysv/linux/fcntl.c
@@ -18,17 +18,17 @@
 
 #include <assert.h>
 #include <errno.h>
+#include <sysdep-cancel.h>	/* Must come before <fcntl.h>.  */
 #include <fcntl.h>
 #include <stdarg.h>
 
-#include <sysdep-cancel.h>
 #include <sys/syscall.h>
 
 
-int
 #ifdef NO_CANCELLATION
 static inline __attribute ((always_inline))
 #endif
+int
 __fcntl_nocancel (int fd, int cmd, ...)
 {
   va_list ap;
diff --git a/sysdeps/unix/sysv/linux/i386/fcntl.c b/sysdeps/unix/sysv/linux/i386/fcntl.c
index da65721ea2..7787c5863b 100644
--- a/sysdeps/unix/sysv/linux/i386/fcntl.c
+++ b/sysdeps/unix/sysv/linux/i386/fcntl.c
@@ -18,10 +18,10 @@
 
 #include <assert.h>
 #include <errno.h>
+#include <sysdep-cancel.h>	/* Must come before <fcntl.h>.  */
 #include <fcntl.h>
 #include <stdarg.h>
 
-#include <sysdep-cancel.h>
 #include <sys/syscall.h>
 #include "../kernel-features.h"
 
@@ -31,10 +31,10 @@ int __have_no_fcntl64;
 #endif
 
 
-int
 #ifdef NO_CANCELLATION
 static inline __attribute ((always_inline))
 #endif
+int
 __fcntl_nocancel (int fd, int cmd, ...)
 {
   va_list ap;
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c
index 4b60a163ce..95b817bc40 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c
@@ -18,17 +18,17 @@
 
 #include <assert.h>
 #include <errno.h>
+#include <sysdep-cancel.h>	/* Must come before <fcntl.h>.  */
 #include <fcntl.h>
 #include <stdarg.h>
 
-#include <sysdep-cancel.h>
 #include <sys/syscall.h>
 
 
-int
 #ifdef NO_CANCELLATION
 static inline __attribute ((always_inline))
 #endif
+int
 __fcntl_nocancel (int fd, int cmd, ...)
 {
   va_list ap;