diff options
-rw-r--r-- | ChangeLog | 13 | ||||
-rw-r--r-- | math/test-misc.c | 27 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/i386/fcntl.c | 6 |
3 files changed, 31 insertions, 15 deletions
@@ -1,3 +1,16 @@ +2000-10-25 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): When + converting struct flock64 to struct flock and back, use fcntl commands + which work on struct flock. + +2000-10-25 Jakub Jelinek <jakub@redhat.com> + + * math/test-misc.c (main): Only check modfl if NO_LONG_DOUBLE is not + defined. + * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update. + * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update. + 2000-10-25 Ulrich Drepper <drepper@redhat.com> * sysdeps/arm/libm-test-ulps: Updated. diff --git a/math/test-misc.c b/math/test-misc.c index 962e5f6..515277f 100644 --- a/math/test-misc.c +++ b/math/test-misc.c @@ -26,19 +26,20 @@ main (void) { int result = 0; - if (sizeof (long double) >= 12) - { - long double x = 0x100000001ll + (long double) 0.5; - long double q; - long double r; - - r = modfl (x, &q); - if (q != (long double) 0x100000001ll || r != 0.5) - { - printf ("modfl (%Lg, ...) failed\n", x); - result = 1; - } - } +#ifndef NO_LONG_DOUBLE + { + long double x = 0x100000001ll + (long double) 0.5; + long double q; + long double r; + + r = modfl (x, &q); + if (q != (long double) 0x100000001ll || r != 0.5) + { + printf ("modfl (%Lg, ...) failed\n", x); + result = 1; + } + } +#endif { double x = 0x100000001ll + (double) 0.5; diff --git a/sysdeps/unix/sysv/linux/i386/fcntl.c b/sysdeps/unix/sysv/linux/i386/fcntl.c index e67931e..c7f02b2 100644 --- a/sysdeps/unix/sysv/linux/i386/fcntl.c +++ b/sysdeps/unix/sysv/linux/i386/fcntl.c @@ -16,6 +16,7 @@ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +#include <assert.h> #include <errno.h> #include <fcntl.h> #include <stdarg.h> @@ -84,7 +85,7 @@ __libc_fcntl (int fd, int cmd, ...) fl.l_whence = fl64->l_whence; fl.l_pid = fl64->l_pid; - res = INLINE_SYSCALL (fcntl, 3, fd, cmd, &fl); + res = INLINE_SYSCALL (fcntl, 3, fd, F_GETLK, &fl); if (res != 0) return res; /* Everything ok, convert back. */ @@ -120,7 +121,8 @@ __libc_fcntl (int fd, int cmd, ...) fl.l_type = fl64->l_type; fl.l_whence = fl64->l_whence; fl.l_pid = fl64->l_pid; - return INLINE_SYSCALL (fcntl, 3, fd, cmd, &fl); + assert (F_SETLK - F_SETLKW == F_SETLK64 - F_SETLKW64); + return INLINE_SYSCALL (fcntl, 3, fd, cmd + F_SETLK - F_SETLK64, &fl); } default: return INLINE_SYSCALL (fcntl, 3, fd, cmd, arg); |