From f3caba873e7d6952fe4945e2bf222cd4d40cf5c7 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Tue, 6 Mar 2012 17:38:40 +0000 Subject: Add 13792 to list of fixed bugs in NEWS. --- NEWS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NEWS b/NEWS index 35fc50f747..056249bb64 100644 --- a/NEWS +++ b/NEWS @@ -14,7 +14,7 @@ Version 2.16 10210, 11174, 11322, 11365, 11494, 12047, 13058, 13525, 13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551, 13552, 13553, 13555, 13559, 13583, 13618, 13637, 13656, 13695, 13704, 13706, 13738, - 13786 + 13786, 13792 * ISO C11 support: -- cgit 1.4.1 From e92584001a07a7e1a4ad2a4997a429075d36e76a Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Tue, 6 Mar 2012 11:15:26 -0800 Subject: Fix several build warnings on sparc. / * sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c (set_obp_int): New function. (get_obp_int): New function. (__get_clockfreq_via_dev_openprom): Likewise. * sysdeps/unix/sysv/linux/sparc/sysdep.h (INTERNAL_SYSCALL_ERROR_P): Avoid unused variable warnings on 'val' and use builtin_expect. (INLINE_SYSCALL): Don't wrap INTERNAL_SYSCALL_ERROR_P with builtin_expect. (INLINE_CLONE_SYSCALL): Likewise. nptl/ * sysdeps/unix/sysv/linux/sparc/sem_post.c (__new_sem_post): Use atomic_increment and remove unused local variable. (__old_sem_post): Likewise. --- ChangeLog | 11 +++++++++ nptl/ChangeLog | 6 +++++ nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c | 9 ++++---- .../unix/sysv/linux/sparc/sparc64/get_clockfreq.c | 27 +++++++++++++++++----- sysdeps/unix/sysv/linux/sparc/sysdep.h | 7 +++--- 5 files changed, 47 insertions(+), 13 deletions(-) diff --git a/ChangeLog b/ChangeLog index 165ed822d9..2b47391f98 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2012-03-06 David S. Miller + + * sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c + (set_obp_int): New function. + (get_obp_int): New function. + (__get_clockfreq_via_dev_openprom): Likewise. + * sysdeps/unix/sysv/linux/sparc/sysdep.h (INTERNAL_SYSCALL_ERROR_P): Avoid + unused variable warnings on 'val' and use builtin_expect. + (INLINE_SYSCALL): Don't wrap INTERNAL_SYSCALL_ERROR_P with builtin_expect. + (INLINE_CLONE_SYSCALL): Likewise. + 2012-03-05 David S. Miller * sysdeps/sparc/fpu/libm-test-ulps: Update. diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 23040e463c..57a9b10d3c 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,9 @@ +2012-03-06 David S. Miller + + * sysdeps/unix/sysv/linux/sparc/sem_post.c (__new_sem_post): Use + atomic_increment and remove unused local variable. + (__old_sem_post): Likewise. + 2012-02-27 David S. Miller * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h: Don't refer to non-existing diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c b/nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c index 0b829927d6..28e06f6327 100644 --- a/nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c +++ b/nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c @@ -30,7 +30,7 @@ __new_sem_post (sem_t *sem) { struct sparc_new_sem *isem = (struct sparc_new_sem *) sem; - int nr = atomic_increment_val (&isem->value); + atomic_increment (&isem->value); atomic_full_barrier (); if (isem->nwaiters > 0) { @@ -53,10 +53,11 @@ attribute_compat_text_section __old_sem_post (sem_t *sem) { struct sparc_old_sem *isem = (struct sparc_old_sem *) sem; + int err; - int nr = atomic_increment_val (&isem->value); - int err = lll_futex_wake (&isem->value, 1, - isem->private ^ FUTEX_PRIVATE_FLAG); + atomic_increment (&isem->value); + err = lll_futex_wake (&isem->value, 1, + isem->private ^ FUTEX_PRIVATE_FLAG); if (__builtin_expect (err, 0) < 0) { __set_errno (-err); diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c b/sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c index e181d9d36b..ba44a61c86 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c @@ -154,6 +154,22 @@ __get_clockfreq_via_proc_openprom (void) return result; } +static void set_obp_int (struct openpromio *op, int val) +{ + char *cp = op->oprom_array; + int *ip = (int *) cp; + + *ip = val; +} + +static int get_obp_int (struct openpromio *op) +{ + char *cp = op->oprom_array; + int *ip = (int *) cp; + + return *ip; +} + static hp_timing_t __get_clockfreq_via_dev_openprom (void) { @@ -171,11 +187,11 @@ __get_clockfreq_via_dev_openprom (void) obp_cmd->oprom_size = sizeof (obp_buf) - sizeof (unsigned int); - *(int *) obp_cmd->oprom_array = 0; + set_obp_int (obp_cmd, 0); ret = ioctl (obp_dev_fd, OPROMCHILD, (char *) obp_cmd); if (ret == 0) { - int cur_node = *(int *) obp_cmd->oprom_array; + int cur_node = get_obp_int (obp_cmd); while (cur_node != 0 && cur_node != -1) { @@ -190,15 +206,14 @@ __get_clockfreq_via_dev_openprom (void) strcpy (obp_cmd->oprom_array, "clock-frequency"); ret = ioctl (obp_dev_fd, OPROMGETPROP, (char *) obp_cmd); if (ret == 0) - result = - (hp_timing_t) *(unsigned int *) obp_cmd->oprom_array; + result = (hp_timing_t) get_obp_int (obp_cmd); } obp_cmd->oprom_size = sizeof (obp_buf) - sizeof (unsigned int); - *(int *) obp_cmd->oprom_array = cur_node; + set_obp_int (obp_cmd, cur_node); ret = ioctl (obp_dev_fd, OPROMNEXT, (char *) obp_cmd); if (ret < 0) break; - cur_node = *(int *)obp_cmd->oprom_array; + cur_node = get_obp_int (obp_cmd); } } } diff --git a/sysdeps/unix/sysv/linux/sparc/sysdep.h b/sysdeps/unix/sysv/linux/sparc/sysdep.h index 336c8538b5..30144b9f6d 100644 --- a/sysdeps/unix/sysv/linux/sparc/sysdep.h +++ b/sysdeps/unix/sysv/linux/sparc/sysdep.h @@ -23,7 +23,7 @@ #define INLINE_SYSCALL(name, nr, args...) \ ({ INTERNAL_SYSCALL_DECL(err); \ unsigned int resultvar = INTERNAL_SYSCALL(name, err, nr, args); \ - if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (resultvar, err), 0)) \ + if (INTERNAL_SYSCALL_ERROR_P (resultvar, err)) \ { \ __set_errno (INTERNAL_SYSCALL_ERRNO (resultvar, err)); \ resultvar = 0xffffffff; \ @@ -44,7 +44,8 @@ inline_syscall##nr(__SYSCALL_STRING, err, name, args) #undef INTERNAL_SYSCALL_ERROR_P -#define INTERNAL_SYSCALL_ERROR_P(val, err) ((err) != 0) +#define INTERNAL_SYSCALL_ERROR_P(val, err) \ + ((void) (val), __builtin_expect((err) != 0, 0)) #undef INTERNAL_SYSCALL_ERRNO #define INTERNAL_SYSCALL_ERRNO(val, err) (-(val)) @@ -152,7 +153,7 @@ "0" (__g1), "1" (__o0), "2" (__o1), \ "r" (__o2), "r" (__o3), "r" (__o4) : \ __SYSCALL_CLOBBERS); \ - if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (__o0, __g1), 0)) \ + if (INTERNAL_SYSCALL_ERROR_P (__o0, __g1)) \ { \ __set_errno (INTERNAL_SYSCALL_ERRNO (__o0, __g1)); \ __o0 = -1L; \ -- cgit 1.4.1 From a53b7a4e4b39d90f5964841c63492cf233aa17b8 Mon Sep 17 00:00:00 2001 From: Marek Polacek Date: Tue, 6 Mar 2012 22:05:56 +0100 Subject: Fix up long double fphex. --- ChangeLog | 8 +++++++ NEWS | 4 ++-- stdio-common/Makefile | 2 +- stdio-common/tst-long-dbl-fphex.c | 38 ++++++++++++++++++++++++++++++++++ sysdeps/ieee754/ldbl-96/printf_fphex.c | 3 ++- sysdeps/x86_64/fpu/printf_fphex.c | 3 ++- 6 files changed, 53 insertions(+), 5 deletions(-) create mode 100644 stdio-common/tst-long-dbl-fphex.c diff --git a/ChangeLog b/ChangeLog index 2b47391f98..3c640dd8f2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2012-03-06 Marek Polacek + + [BZ #13726] + * sysdeps/ieee754/ldbl-96/printf_fphex.c: Adjust position of wnumstr. + * sysdeps/x86_64/fpu/printf_fphex.c: Likewise. + * stdio-common/Makefile (tests): Add tst-long-dbl-fphex. + * stdio-common/tst-long-dbl-fphex.c: New file. + 2012-03-06 David S. Miller * sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c diff --git a/NEWS b/NEWS index 056249bb64..61cc1dca1e 100644 --- a/NEWS +++ b/NEWS @@ -13,8 +13,8 @@ Version 2.16 5077, 5461, 5805, 5993, 6884, 6907, 9739, 9902, 10110, 10135, 10140, 10210, 11174, 11322, 11365, 11494, 12047, 13058, 13525, 13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551, 13552, 13553, - 13555, 13559, 13583, 13618, 13637, 13656, 13695, 13704, 13706, 13738, - 13786, 13792 + 13555, 13559, 13583, 13618, 13637, 13656, 13695, 13704, 13706, 13726, + 13738, 13786, 13792 * ISO C11 support: diff --git a/stdio-common/Makefile b/stdio-common/Makefile index 080badc36c..831fafefb9 100644 --- a/stdio-common/Makefile +++ b/stdio-common/Makefile @@ -60,7 +60,7 @@ tests := tstscanf test_rdwr test-popen tstgetln test-fseek \ tst-fwrite bug16 bug17 tst-swscanf tst-sprintf2 bug18 bug18a \ bug19 bug19a tst-popen2 scanf13 scanf14 scanf15 bug20 bug21 bug22 \ scanf16 scanf17 tst-setvbuf1 tst-grouping bug23 bug24 \ - bug-vfprintf-nargs + bug-vfprintf-nargs tst-long-dbl-fphex test-srcs = tst-unbputc tst-printf diff --git a/stdio-common/tst-long-dbl-fphex.c b/stdio-common/tst-long-dbl-fphex.c new file mode 100644 index 0000000000..b57fb85ad7 --- /dev/null +++ b/stdio-common/tst-long-dbl-fphex.c @@ -0,0 +1,38 @@ +/* This file is part of the GNU C Library. + Copyright (C) 2012 Free Software Foundation, Inc. + Contributed by Marek Polacek , 2012. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#include + +/* Prototype for our test function. */ +static int do_test (void); + +static int +do_test (void) +{ + const long double x = 24.5; + wchar_t a[16 * sizeof (wchar_t)]; + swprintf (a, 16 * sizeof (wchar_t), L"%La\n", x); + wchar_t A[16 * sizeof (wchar_t)]; + swprintf (A, 16 * sizeof (wchar_t), L"%LA\n", x); + + return (wmemcmp (a, L"0xc.4p+1", 8) != 0 + || wmemcmp (A, L"0XC.4P+1", 8) != 0); +} + +#define TEST_FUNCTION do_test () +#include "../test-skeleton.c" diff --git a/sysdeps/ieee754/ldbl-96/printf_fphex.c b/sysdeps/ieee754/ldbl-96/printf_fphex.c index b1c9d7364c..acb0508b87 100644 --- a/sysdeps/ieee754/ldbl-96/printf_fphex.c +++ b/sysdeps/ieee754/ldbl-96/printf_fphex.c @@ -1,5 +1,5 @@ /* Print floating point number in hexadecimal notation according to ISO C99. - Copyright (C) 1997, 1998, 1999, 2000, 2005 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -58,6 +58,7 @@ do { \ \ /* We use a full nibble for the leading digit. */ \ leading = *numstr++; \ + wnumstr++; \ \ /* We have 3 bits from the mantissa in the leading nibble. \ Therefore we are here using `IEEE854_LONG_DOUBLE_BIAS + 3'. */ \ diff --git a/sysdeps/x86_64/fpu/printf_fphex.c b/sysdeps/x86_64/fpu/printf_fphex.c index 0b6bfc6bdc..7de7283c4c 100644 --- a/sysdeps/x86_64/fpu/printf_fphex.c +++ b/sysdeps/x86_64/fpu/printf_fphex.c @@ -1,5 +1,5 @@ /* Print floating point number in hexadecimal notation according to ISO C99. - Copyright (C) 1997,1998,1999,2000,2001,2005 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -57,6 +57,7 @@ do { \ \ /* We use a full nibble for the leading digit. */ \ leading = *numstr++; \ + wnumstr++; \ \ /* We have 3 bits from the mantissa in the leading nibble. \ Therefore we are here using `IEEE854_LONG_DOUBLE_BIAS + 3'. */ \ -- cgit 1.4.1 From 54ab212ca092521af1d5c4c4fc3f4200016494b5 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Tue, 6 Mar 2012 15:59:05 -0800 Subject: Wrap too-long log entry. --- ChangeLog | 7 ++++--- nptl/ChangeLog | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3c640dd8f2..96338afd33 100644 --- a/ChangeLog +++ b/ChangeLog @@ -12,9 +12,10 @@ (set_obp_int): New function. (get_obp_int): New function. (__get_clockfreq_via_dev_openprom): Likewise. - * sysdeps/unix/sysv/linux/sparc/sysdep.h (INTERNAL_SYSCALL_ERROR_P): Avoid - unused variable warnings on 'val' and use builtin_expect. - (INLINE_SYSCALL): Don't wrap INTERNAL_SYSCALL_ERROR_P with builtin_expect. + * sysdeps/unix/sysv/linux/sparc/sysdep.h (INTERNAL_SYSCALL_ERROR_P): + Avoid unused variable warnings on 'val' and use builtin_expect. + (INLINE_SYSCALL): Don't wrap INTERNAL_SYSCALL_ERROR_P with + builtin_expect. (INLINE_CLONE_SYSCALL): Likewise. 2012-03-05 David S. Miller diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 57a9b10d3c..dea5049a30 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -6,8 +6,8 @@ 2012-02-27 David S. Miller - * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h: Don't refer to non-existing - __pthread_attr. + * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h: Don't refer to + non-existing __pthread_attr. * sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h: Likewise. -- cgit 1.4.1 From f72ed77d712d9ad75ca3c7a7505cb2bb8d4cd0fc Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 6 Mar 2012 21:45:53 -0500 Subject: Formatting fixes --- ChangeLog | 11 ++++++++--- stdio-common/vfprintf.c | 26 +++++++++++++------------- 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3c640dd8f2..520d3ade7e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2012-03-06 Ulrich Drepper + + * stdio-common/vfprintf.c: Fix formatting. Missing copyright update. + 2012-03-06 Marek Polacek [BZ #13726] @@ -12,9 +16,10 @@ (set_obp_int): New function. (get_obp_int): New function. (__get_clockfreq_via_dev_openprom): Likewise. - * sysdeps/unix/sysv/linux/sparc/sysdep.h (INTERNAL_SYSCALL_ERROR_P): Avoid - unused variable warnings on 'val' and use builtin_expect. - (INLINE_SYSCALL): Don't wrap INTERNAL_SYSCALL_ERROR_P with builtin_expect. + * sysdeps/unix/sysv/linux/sparc/sysdep.h (INTERNAL_SYSCALL_ERROR_P): + Avoid unused variable warnings on 'val' and use builtin_expect. + (INLINE_SYSCALL): Don't wrap INTERNAL_SYSCALL_ERROR_P with + __builtin_expect. (INLINE_CLONE_SYSCALL): Likewise. 2012-03-05 David S. Miller diff --git a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c index 85d19005d2..e454927bfd 100644 --- a/stdio-common/vfprintf.c +++ b/stdio-common/vfprintf.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2008, 2009, 2010, 2011 Free Software Foundation, Inc. +/* Copyright (C) 1991-2011, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -1706,28 +1706,28 @@ do_positional: nargs = MAX (nargs, max_ref_arg); /* Calculate total size needed to represent a single argument across all three argument-related arrays. */ - bytes_per_arg = sizeof (*args_value) + sizeof (*args_size) - + sizeof (*args_type); + bytes_per_arg = (sizeof (*args_value) + sizeof (*args_size) + + sizeof (*args_type)); /* Check for potential integer overflow. */ if (__builtin_expect (nargs > SIZE_MAX / bytes_per_arg, 0)) { - __set_errno (ERANGE); - done = -1; - goto all_done; + __set_errno (ERANGE); + done = -1; + goto all_done; } /* Allocate memory for all three argument arrays. */ if (__libc_use_alloca (nargs * bytes_per_arg)) - args_value = alloca (nargs * bytes_per_arg); + args_value = alloca (nargs * bytes_per_arg); else { - args_value = args_malloced = malloc (nargs * bytes_per_arg); - if (args_value == NULL) - { - done = -1; - goto all_done; - } + args_value = args_malloced = malloc (nargs * bytes_per_arg); + if (args_value == NULL) + { + done = -1; + goto all_done; + } } /* Set up the remaining two arrays to each point past the end of the -- cgit 1.4.1 From a000466f5ede60ac25859ed74a49c9322119219b Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 6 Mar 2012 21:55:18 -0500 Subject: Add missing gshadow handling in __nss_configure_lookup --- ChangeLog | 2 ++ nss/databases.def | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 520d3ade7e..e4c64f6068 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,7 @@ 2012-03-06 Ulrich Drepper + * nss/databases.def: Add missing gshadow entry. + * stdio-common/vfprintf.c: Fix formatting. Missing copyright update. 2012-03-06 Marek Polacek diff --git a/nss/databases.def b/nss/databases.def index 755fbe201a..0247aa9637 100644 --- a/nss/databases.def +++ b/nss/databases.def @@ -1,5 +1,5 @@ /* List of all databases defined for the NSS in GNU C Library. - Copyright (C) 1996, 1997, 2005, 2011 Free Software Foundation, Inc. + Copyright (C) 1996, 1997, 2005, 2011, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1996. @@ -23,6 +23,7 @@ DEFINE_DATABASE (aliases) DEFINE_DATABASE (ethers) DEFINE_DATABASE (group) +DEFINE_DATABASE (gshadow) DEFINE_DATABASE (hosts) DEFINE_DATABASE (initgroups) DEFINE_DATABASE (netgroup) -- cgit 1.4.1 From 9463518d0d314d7bd0160315e0ef30e15be08985 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 6 Mar 2012 23:37:35 -0500 Subject: Remove private information from libc-lock.h --- nptl/ChangeLog | 10 +- nptl/sysdeps/pthread/bits/libc-lock.h | 404 +----------------------------- nptl/sysdeps/pthread/bits/libc-lockP.h | 434 +++++++++++++++++++++++++++++++++ 3 files changed, 448 insertions(+), 400 deletions(-) create mode 100644 nptl/sysdeps/pthread/bits/libc-lockP.h diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 57a9b10d3c..4ca4c38d1c 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,9 @@ +2012-03-06 Ulrich Drepper + + * sysdeps/pthread/bits/libc-lock.h: Split information not needed in + installed headers... + * sysdeps/pthread/bits/libc-lockP.h: ...here. New file. + 2012-03-06 David S. Miller * sysdeps/unix/sysv/linux/sparc/sem_post.c (__new_sem_post): Use @@ -6,8 +12,8 @@ 2012-02-27 David S. Miller - * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h: Don't refer to non-existing - __pthread_attr. + * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h: Don't refer to + non-existing __pthread_attr. * sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h: Likewise. diff --git a/nptl/sysdeps/pthread/bits/libc-lock.h b/nptl/sysdeps/pthread/bits/libc-lock.h index 4d54e667de..02c0ae5f7e 100644 --- a/nptl/sysdeps/pthread/bits/libc-lock.h +++ b/nptl/sysdeps/pthread/bits/libc-lock.h @@ -24,42 +24,17 @@ #include -/* Fortunately Linux now has a mean to do locking which is realtime - safe without the aid of the thread library. We also need no fancy - options like error checking mutexes etc. We only need simple - locks, maybe recursive. This can be easily and cheaply implemented - using futexes. We will use them everywhere except in ld.so since - ld.so might be used on old kernels with a different libc.so. */ -#ifdef _LIBC -# include -# include -# include -#endif - /* Mutex type. */ #if defined _LIBC || defined _IO_MTSAFE_IO # if (defined NOT_IN_libc && !defined IS_IN_libpthread) || !defined _LIBC -typedef pthread_mutex_t __libc_lock_t; typedef struct { pthread_mutex_t mutex; } __libc_lock_recursive_t; # else -typedef int __libc_lock_t; typedef struct { int lock; int cnt; void *owner; } __libc_lock_recursive_t; # endif -typedef struct { pthread_mutex_t mutex; } __rtld_lock_recursive_t; -# ifdef __USE_UNIX98 -typedef pthread_rwlock_t __libc_rwlock_t; -# else -typedef struct __libc_rwlock_opaque__ __libc_rwlock_t; -# endif #else -typedef struct __libc_lock_opaque__ __libc_lock_t; typedef struct __libc_lock_recursive_opaque__ __libc_lock_recursive_t; -typedef struct __libc_rwlock_opaque__ __libc_rwlock_t; #endif -/* Type for key to thread-specific data. */ -typedef pthread_key_t __libc_key_t; - /* Define a lock variable NAME with storage class CLASS. The lock must be initialized with __libc_lock_init before it can be used (or define it with __libc_lock_define_initialized, below). Use `extern' for CLASS to @@ -67,44 +42,8 @@ typedef pthread_key_t __libc_key_t; definitions you must use a pointer to the lock structure (i.e., NAME begins with a `*'), because its storage size will not be known outside of libc. */ -#define __libc_lock_define(CLASS,NAME) \ - CLASS __libc_lock_t NAME; -#define __libc_rwlock_define(CLASS,NAME) \ - CLASS __libc_rwlock_t NAME; #define __libc_lock_define_recursive(CLASS,NAME) \ CLASS __libc_lock_recursive_t NAME; -#define __rtld_lock_define_recursive(CLASS,NAME) \ - CLASS __rtld_lock_recursive_t NAME; - -/* Define an initialized lock variable NAME with storage class CLASS. - - For the C library we take a deeper look at the initializer. For - this implementation all fields are initialized to zero. Therefore - we don't initialize the variable which allows putting it into the - BSS section. (Except on PA-RISC and other odd architectures, where - initialized locks must be set to one due to the lack of normal - atomic operations.) */ - -#if defined _LIBC && (!defined NOT_IN_libc || defined IS_IN_libpthread) -# if LLL_LOCK_INITIALIZER == 0 -# define __libc_lock_define_initialized(CLASS,NAME) \ - CLASS __libc_lock_t NAME; -# else -# define __libc_lock_define_initialized(CLASS,NAME) \ - CLASS __libc_lock_t NAME = LLL_LOCK_INITIALIZER; -# endif -#else -# if __LT_SPINLOCK_INIT == 0 -# define __libc_lock_define_initialized(CLASS,NAME) \ - CLASS __libc_lock_t NAME; -# else -# define __libc_lock_define_initialized(CLASS,NAME) \ - CLASS __libc_lock_t NAME = PTHREAD_MUTEX_INITIALIZER; -# endif -#endif - -#define __libc_rwlock_define_initialized(CLASS,NAME) \ - CLASS __libc_rwlock_t NAME = PTHREAD_RWLOCK_INITIALIZER; /* Define an initialized recursive lock variable NAME with storage class CLASS. */ @@ -125,63 +64,7 @@ typedef pthread_key_t __libc_key_t; {PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP} #endif -#define __rtld_lock_define_initialized_recursive(CLASS,NAME) \ - CLASS __rtld_lock_recursive_t NAME = _RTLD_LOCK_RECURSIVE_INITIALIZER; -#define _RTLD_LOCK_RECURSIVE_INITIALIZER \ - {PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP} - -#define __rtld_lock_initialize(NAME) \ - (void) ((NAME) = (__rtld_lock_recursive_t) _RTLD_LOCK_RECURSIVE_INITIALIZER) - -/* If we check for a weakly referenced symbol and then perform a - normal jump to it te code generated for some platforms in case of - PIC is unnecessarily slow. What would happen is that the function - is first referenced as data and then it is called indirectly - through the PLT. We can make this a direct jump. */ -#ifdef __PIC__ -# define __libc_maybe_call(FUNC, ARGS, ELSE) \ - (__extension__ ({ __typeof (FUNC) *_fn = (FUNC); \ - _fn != NULL ? (*_fn) ARGS : ELSE; })) -#else -# define __libc_maybe_call(FUNC, ARGS, ELSE) \ - (FUNC != NULL ? FUNC ARGS : ELSE) -#endif - -/* Call thread functions through the function pointer table. */ -#if defined SHARED && !defined NOT_IN_libc -# define PTFAVAIL(NAME) __libc_pthread_functions_init -# define __libc_ptf_call(FUNC, ARGS, ELSE) \ - (__libc_pthread_functions_init ? PTHFCT_CALL (ptr_##FUNC, ARGS) : ELSE) -# define __libc_ptf_call_always(FUNC, ARGS) \ - PTHFCT_CALL (ptr_##FUNC, ARGS) -#else -# define PTFAVAIL(NAME) (NAME != NULL) -# define __libc_ptf_call(FUNC, ARGS, ELSE) \ - __libc_maybe_call (FUNC, ARGS, ELSE) -# define __libc_ptf_call_always(FUNC, ARGS) \ - FUNC ARGS -#endif - - -/* Initialize the named lock variable, leaving it in a consistent, unlocked - state. */ -#if defined _LIBC && (!defined NOT_IN_libc || defined IS_IN_libpthread) -# define __libc_lock_init(NAME) ((NAME) = LLL_LOCK_INITIALIZER, 0) -#else -# define __libc_lock_init(NAME) \ - __libc_maybe_call (__pthread_mutex_init, (&(NAME), NULL), 0) -#endif -#if defined SHARED && !defined NOT_IN_libc -/* ((NAME) = (__libc_rwlock_t) PTHREAD_RWLOCK_INITIALIZER, 0) is - inefficient. */ -# define __libc_rwlock_init(NAME) \ - (__builtin_memset (&(NAME), '\0', sizeof (NAME)), 0) -#else -# define __libc_rwlock_init(NAME) \ - __libc_maybe_call (__pthread_rwlock_init, (&(NAME), NULL), 0) -#endif - -/* Same as last but this time we initialize a recursive mutex. */ +/* Initialize a recursive mutex. */ #if defined _LIBC && (!defined NOT_IN_libc || defined IS_IN_libpthread) # define __libc_lock_init_recursive(NAME) \ ((NAME) = (__libc_lock_recursive_t) _LIBC_LOCK_RECURSIVE_INITIALIZER, 0) @@ -199,34 +82,6 @@ typedef pthread_key_t __libc_key_t; } while (0) #endif -#define __rtld_lock_init_recursive(NAME) \ - do { \ - if (__pthread_mutex_init != NULL) \ - { \ - pthread_mutexattr_t __attr; \ - __pthread_mutexattr_init (&__attr); \ - __pthread_mutexattr_settype (&__attr, PTHREAD_MUTEX_RECURSIVE_NP); \ - __pthread_mutex_init (&(NAME).mutex, &__attr); \ - __pthread_mutexattr_destroy (&__attr); \ - } \ - } while (0) - -/* Finalize the named lock variable, which must be locked. It cannot be - used again until __libc_lock_init is called again on it. This must be - called on a lock variable before the containing storage is reused. */ -#if defined _LIBC && (!defined NOT_IN_libc || defined IS_IN_libpthread) -# define __libc_lock_fini(NAME) ((void) 0) -#else -# define __libc_lock_fini(NAME) \ - __libc_maybe_call (__pthread_mutex_destroy, (&(NAME)), 0) -#endif -#if defined SHARED && !defined NOT_IN_libc -# define __libc_rwlock_fini(NAME) ((void) 0) -#else -# define __libc_rwlock_fini(NAME) \ - __libc_maybe_call (__pthread_rwlock_destroy, (&(NAME)), 0) -#endif - /* Finalize recursive named lock. */ #if defined _LIBC && (!defined NOT_IN_libc || defined IS_IN_libpthread) # define __libc_lock_fini_recursive(NAME) ((void) 0) @@ -235,19 +90,6 @@ typedef pthread_key_t __libc_key_t; __libc_maybe_call (__pthread_mutex_destroy, (&(NAME)), 0) #endif -/* Lock the named lock variable. */ -#if defined _LIBC && (!defined NOT_IN_libc || defined IS_IN_libpthread) -# define __libc_lock_lock(NAME) \ - ({ lll_lock (NAME, LLL_PRIVATE); 0; }) -#else -# define __libc_lock_lock(NAME) \ - __libc_maybe_call (__pthread_mutex_lock, (&(NAME)), 0) -#endif -#define __libc_rwlock_rdlock(NAME) \ - __libc_ptf_call (__pthread_rwlock_rdlock, (&(NAME)), 0) -#define __libc_rwlock_wrlock(NAME) \ - __libc_ptf_call (__pthread_rwlock_wrlock, (&(NAME)), 0) - /* Lock the recursive named lock variable. */ #if defined _LIBC && (!defined NOT_IN_libc || defined IS_IN_libpthread) # define __libc_lock_lock_recursive(NAME) \ @@ -265,19 +107,6 @@ typedef pthread_key_t __libc_key_t; __libc_maybe_call (__pthread_mutex_lock, (&(NAME).mutex), 0) #endif -/* Try to lock the named lock variable. */ -#if defined _LIBC && (!defined NOT_IN_libc || defined IS_IN_libpthread) -# define __libc_lock_trylock(NAME) \ - lll_trylock (NAME) -#else -# define __libc_lock_trylock(NAME) \ - __libc_maybe_call (__pthread_mutex_trylock, (&(NAME)), 0) -#endif -#define __libc_rwlock_tryrdlock(NAME) \ - __libc_maybe_call (__pthread_rwlock_tryrdlock, (&(NAME)), 0) -#define __libc_rwlock_trywrlock(NAME) \ - __libc_maybe_call (__pthread_rwlock_trywrlock, (&(NAME)), 0) - /* Try to lock the recursive named lock variable. */ #if defined _LIBC && (!defined NOT_IN_libc || defined IS_IN_libpthread) # define __libc_lock_trylock_recursive(NAME) \ @@ -303,20 +132,6 @@ typedef pthread_key_t __libc_key_t; __libc_maybe_call (__pthread_mutex_trylock, (&(NAME)), 0) #endif -#define __rtld_lock_trylock_recursive(NAME) \ - __libc_maybe_call (__pthread_mutex_trylock, (&(NAME).mutex), 0) - -/* Unlock the named lock variable. */ -#if defined _LIBC && (!defined NOT_IN_libc || defined IS_IN_libpthread) -# define __libc_lock_unlock(NAME) \ - lll_unlock (NAME, LLL_PRIVATE) -#else -# define __libc_lock_unlock(NAME) \ - __libc_maybe_call (__pthread_mutex_unlock, (&(NAME)), 0) -#endif -#define __libc_rwlock_unlock(NAME) \ - __libc_ptf_call (__pthread_rwlock_unlock, (&(NAME)), 0) - /* Unlock the recursive named lock variable. */ #if defined _LIBC && (!defined NOT_IN_libc || defined IS_IN_libpthread) /* We do no error checking here. */ @@ -333,58 +148,10 @@ typedef pthread_key_t __libc_key_t; __libc_maybe_call (__pthread_mutex_unlock, (&(NAME)), 0) #endif -#if defined _LIBC && defined SHARED -# define __rtld_lock_default_lock_recursive(lock) \ - ++((pthread_mutex_t *)(lock))->__data.__count; - -# define __rtld_lock_default_unlock_recursive(lock) \ - --((pthread_mutex_t *)(lock))->__data.__count; - -# define __rtld_lock_lock_recursive(NAME) \ - GL(dl_rtld_lock_recursive) (&(NAME).mutex) - -# define __rtld_lock_unlock_recursive(NAME) \ - GL(dl_rtld_unlock_recursive) (&(NAME).mutex) -#else -# define __rtld_lock_lock_recursive(NAME) \ - __libc_maybe_call (__pthread_mutex_lock, (&(NAME).mutex), 0) - -# define __rtld_lock_unlock_recursive(NAME) \ - __libc_maybe_call (__pthread_mutex_unlock, (&(NAME).mutex), 0) -#endif - -/* Define once control variable. */ -#if PTHREAD_ONCE_INIT == 0 -/* Special case for static variables where we can avoid the initialization - if it is zero. */ -# define __libc_once_define(CLASS, NAME) \ - CLASS pthread_once_t NAME -#else -# define __libc_once_define(CLASS, NAME) \ - CLASS pthread_once_t NAME = PTHREAD_ONCE_INIT -#endif - -/* Call handler iff the first call. */ -#define __libc_once(ONCE_CONTROL, INIT_FUNCTION) \ - do { \ - if (PTFAVAIL (__pthread_once)) \ - __libc_ptf_call_always (__pthread_once, (&(ONCE_CONTROL), \ - INIT_FUNCTION)); \ - else if ((ONCE_CONTROL) == PTHREAD_ONCE_INIT) { \ - INIT_FUNCTION (); \ - (ONCE_CONTROL) |= 2; \ - } \ - } while (0) - - /* Note that for I/O cleanup handling we are using the old-style - cancel handling. It does not have to be integrated with C++ snce + cancel handling. It does not have to be integrated with C++ since no C++ code is called in the middle. The old-style handling is faster and the support is not going away. */ -extern void _pthread_cleanup_push (struct _pthread_cleanup_buffer *buffer, - void (*routine) (void *), void *arg); -extern void _pthread_cleanup_pop (struct _pthread_cleanup_buffer *buffer, - int execute); extern void _pthread_cleanup_push_defer (struct _pthread_cleanup_buffer *buffer, void (*routine) (void *), void *arg); extern void _pthread_cleanup_pop_restore (struct _pthread_cleanup_buffer *buffer, @@ -415,170 +182,11 @@ extern void _pthread_cleanup_pop_restore (struct _pthread_cleanup_buffer *buffer _buffer.__routine (_buffer.__arg); \ } -/* Sometimes we have to exit the block in the middle. */ -#define __libc_cleanup_end(DOIT) \ - if (_avail) { \ - __libc_ptf_call_always (_pthread_cleanup_pop_restore, (&_buffer, DOIT));\ - } else if (DOIT) \ - _buffer.__routine (_buffer.__arg) - - -/* Normal cleanup handling, based on C cleanup attribute. */ -__extern_inline void -__libc_cleanup_routine (struct __pthread_cleanup_frame *f) -{ - if (f->__do_it) - f->__cancel_routine (f->__cancel_arg); -} - -#define __libc_cleanup_push(fct, arg) \ - do { \ - struct __pthread_cleanup_frame __clframe \ - __attribute__ ((__cleanup__ (__libc_cleanup_routine))) \ - = { .__cancel_routine = (fct), .__cancel_arg = (arg), \ - .__do_it = 1 }; - -#define __libc_cleanup_pop(execute) \ - __clframe.__do_it = (execute); \ - } while (0) - - -/* Create thread-specific key. */ -#define __libc_key_create(KEY, DESTRUCTOR) \ - __libc_ptf_call (__pthread_key_create, (KEY, DESTRUCTOR), 1) -/* Get thread-specific data. */ -#define __libc_getspecific(KEY) \ - __libc_ptf_call (__pthread_getspecific, (KEY), NULL) - -/* Set thread-specific data. */ -#define __libc_setspecific(KEY, VALUE) \ - __libc_ptf_call (__pthread_setspecific, (KEY, VALUE), 0) - - -/* Register handlers to execute before and after `fork'. Note that the - last parameter is NULL. The handlers registered by the libc are - never removed so this is OK. */ -#define __libc_atfork(PREPARE, PARENT, CHILD) \ - __register_atfork (PREPARE, PARENT, CHILD, NULL) -extern int __register_atfork (void (*__prepare) (void), - void (*__parent) (void), - void (*__child) (void), - void *__dso_handle); - -/* Functions that are used by this file and are internal to the GNU C - library. */ - -extern int __pthread_mutex_init (pthread_mutex_t *__mutex, - const pthread_mutexattr_t *__mutex_attr); - -extern int __pthread_mutex_destroy (pthread_mutex_t *__mutex); - -extern int __pthread_mutex_trylock (pthread_mutex_t *__mutex); - -extern int __pthread_mutex_lock (pthread_mutex_t *__mutex); - -extern int __pthread_mutex_unlock (pthread_mutex_t *__mutex); - -extern int __pthread_mutexattr_init (pthread_mutexattr_t *__attr); - -extern int __pthread_mutexattr_destroy (pthread_mutexattr_t *__attr); - -extern int __pthread_mutexattr_settype (pthread_mutexattr_t *__attr, - int __kind); - -#ifdef __USE_UNIX98 -extern int __pthread_rwlock_init (pthread_rwlock_t *__rwlock, - const pthread_rwlockattr_t *__attr); - -extern int __pthread_rwlock_destroy (pthread_rwlock_t *__rwlock); - -extern int __pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock); - -extern int __pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock); - -extern int __pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock); - -extern int __pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock); - -extern int __pthread_rwlock_unlock (pthread_rwlock_t *__rwlock); -#endif - -extern int __pthread_key_create (pthread_key_t *__key, - void (*__destr_function) (void *)); - -extern int __pthread_setspecific (pthread_key_t __key, - const void *__pointer); - -extern void *__pthread_getspecific (pthread_key_t __key); - -extern int __pthread_once (pthread_once_t *__once_control, - void (*__init_routine) (void)); - -extern int __pthread_atfork (void (*__prepare) (void), - void (*__parent) (void), - void (*__child) (void)); - - - -/* Make the pthread functions weak so that we can elide them from - single-threaded processes. */ -#ifndef __NO_WEAK_PTHREAD_ALIASES -# ifdef weak_extern -# if _LIBC -# include -# else -# define BP_SYM(sym) sym -# endif -weak_extern (BP_SYM (__pthread_mutex_init)) -weak_extern (BP_SYM (__pthread_mutex_destroy)) -weak_extern (BP_SYM (__pthread_mutex_lock)) -weak_extern (BP_SYM (__pthread_mutex_trylock)) -weak_extern (BP_SYM (__pthread_mutex_unlock)) -weak_extern (BP_SYM (__pthread_mutexattr_init)) -weak_extern (BP_SYM (__pthread_mutexattr_destroy)) -weak_extern (BP_SYM (__pthread_mutexattr_settype)) -weak_extern (BP_SYM (__pthread_rwlock_init)) -weak_extern (BP_SYM (__pthread_rwlock_destroy)) -weak_extern (BP_SYM (__pthread_rwlock_rdlock)) -weak_extern (BP_SYM (__pthread_rwlock_tryrdlock)) -weak_extern (BP_SYM (__pthread_rwlock_wrlock)) -weak_extern (BP_SYM (__pthread_rwlock_trywrlock)) -weak_extern (BP_SYM (__pthread_rwlock_unlock)) -weak_extern (BP_SYM (__pthread_key_create)) -weak_extern (BP_SYM (__pthread_setspecific)) -weak_extern (BP_SYM (__pthread_getspecific)) -weak_extern (BP_SYM (__pthread_once)) -weak_extern (__pthread_initialize) -weak_extern (__pthread_atfork) -weak_extern (BP_SYM (_pthread_cleanup_push_defer)) -weak_extern (BP_SYM (_pthread_cleanup_pop_restore)) -weak_extern (BP_SYM (pthread_setcancelstate)) -# else -# pragma weak __pthread_mutex_init -# pragma weak __pthread_mutex_destroy -# pragma weak __pthread_mutex_lock -# pragma weak __pthread_mutex_trylock -# pragma weak __pthread_mutex_unlock -# pragma weak __pthread_mutexattr_init -# pragma weak __pthread_mutexattr_destroy -# pragma weak __pthread_mutexattr_settype -# pragma weak __pthread_rwlock_destroy -# pragma weak __pthread_rwlock_rdlock -# pragma weak __pthread_rwlock_tryrdlock -# pragma weak __pthread_rwlock_wrlock -# pragma weak __pthread_rwlock_trywrlock -# pragma weak __pthread_rwlock_unlock -# pragma weak __pthread_key_create -# pragma weak __pthread_setspecific -# pragma weak __pthread_getspecific -# pragma weak __pthread_once -# pragma weak __pthread_initialize -# pragma weak __pthread_atfork -# pragma weak _pthread_cleanup_push_defer -# pragma weak _pthread_cleanup_pop_restore -# pragma weak pthread_setcancelstate -# endif +/* Hide the definitions which are only supposed to be used inside libc in + a separate file. This file is not present in the installation! */ +#ifdef _LIBC +# include "libc-lockP.h" #endif #endif /* bits/libc-lock.h */ diff --git a/nptl/sysdeps/pthread/bits/libc-lockP.h b/nptl/sysdeps/pthread/bits/libc-lockP.h new file mode 100644 index 0000000000..d08fb9db3c --- /dev/null +++ b/nptl/sysdeps/pthread/bits/libc-lockP.h @@ -0,0 +1,434 @@ +/* Private libc-internal interface for mutex locks. NPTL version. + Copyright (C) 1996-2003, 2005, 2007, 2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; see the file COPYING.LIB. If + not, see . */ + +#ifndef _BITS_LIBC_LOCKP_H +#define _BITS_LIBC_LOCKP_H 1 + +#include +#define __need_NULL +#include + + +/* Fortunately Linux now has a mean to do locking which is realtime + safe without the aid of the thread library. We also need no fancy + options like error checking mutexes etc. We only need simple + locks, maybe recursive. This can be easily and cheaply implemented + using futexes. We will use them everywhere except in ld.so since + ld.so might be used on old kernels with a different libc.so. */ +#include +#include +#include + +/* Mutex type. */ +#if defined NOT_IN_libc && !defined IS_IN_libpthread +typedef pthread_mutex_t __libc_lock_t; +#else +typedef int __libc_lock_t; +#endif +typedef struct { pthread_mutex_t mutex; } __rtld_lock_recursive_t; +typedef pthread_rwlock_t __libc_rwlock_t; + +/* Type for key to thread-specific data. */ +typedef pthread_key_t __libc_key_t; + +/* Define a lock variable NAME with storage class CLASS. The lock must be + initialized with __libc_lock_init before it can be used (or define it + with __libc_lock_define_initialized, below). Use `extern' for CLASS to + declare a lock defined in another module. In public structure + definitions you must use a pointer to the lock structure (i.e., NAME + begins with a `*'), because its storage size will not be known outside + of libc. */ +#define __libc_lock_define(CLASS,NAME) \ + CLASS __libc_lock_t NAME; +#define __libc_rwlock_define(CLASS,NAME) \ + CLASS __libc_rwlock_t NAME; +#define __rtld_lock_define_recursive(CLASS,NAME) \ + CLASS __rtld_lock_recursive_t NAME; + +/* Define an initialized lock variable NAME with storage class CLASS. + + For the C library we take a deeper look at the initializer. For + this implementation all fields are initialized to zero. Therefore + we don't initialize the variable which allows putting it into the + BSS section. (Except on PA-RISC and other odd architectures, where + initialized locks must be set to one due to the lack of normal + atomic operations.) */ + +#if !defined NOT_IN_libc || defined IS_IN_libpthread +# if LLL_LOCK_INITIALIZER == 0 +# define __libc_lock_define_initialized(CLASS,NAME) \ + CLASS __libc_lock_t NAME; +# else +# define __libc_lock_define_initialized(CLASS,NAME) \ + CLASS __libc_lock_t NAME = LLL_LOCK_INITIALIZER; +# endif +#else +# if __LT_SPINLOCK_INIT == 0 +# define __libc_lock_define_initialized(CLASS,NAME) \ + CLASS __libc_lock_t NAME; +# else +# define __libc_lock_define_initialized(CLASS,NAME) \ + CLASS __libc_lock_t NAME = PTHREAD_MUTEX_INITIALIZER; +# endif +#endif + +#define __libc_rwlock_define_initialized(CLASS,NAME) \ + CLASS __libc_rwlock_t NAME = PTHREAD_RWLOCK_INITIALIZER; + +#define __rtld_lock_define_initialized_recursive(CLASS,NAME) \ + CLASS __rtld_lock_recursive_t NAME = _RTLD_LOCK_RECURSIVE_INITIALIZER; +#define _RTLD_LOCK_RECURSIVE_INITIALIZER \ + {PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP} + +#define __rtld_lock_initialize(NAME) \ + (void) ((NAME) = (__rtld_lock_recursive_t) _RTLD_LOCK_RECURSIVE_INITIALIZER) + +/* If we check for a weakly referenced symbol and then perform a + normal jump to it te code generated for some platforms in case of + PIC is unnecessarily slow. What would happen is that the function + is first referenced as data and then it is called indirectly + through the PLT. We can make this a direct jump. */ +#ifdef __PIC__ +# define __libc_maybe_call(FUNC, ARGS, ELSE) \ + (__extension__ ({ __typeof (FUNC) *_fn = (FUNC); \ + _fn != NULL ? (*_fn) ARGS : ELSE; })) +#else +# define __libc_maybe_call(FUNC, ARGS, ELSE) \ + (FUNC != NULL ? FUNC ARGS : ELSE) +#endif + +/* Call thread functions through the function pointer table. */ +#if defined SHARED && !defined NOT_IN_libc +# define PTFAVAIL(NAME) __libc_pthread_functions_init +# define __libc_ptf_call(FUNC, ARGS, ELSE) \ + (__libc_pthread_functions_init ? PTHFCT_CALL (ptr_##FUNC, ARGS) : ELSE) +# define __libc_ptf_call_always(FUNC, ARGS) \ + PTHFCT_CALL (ptr_##FUNC, ARGS) +#else +# define PTFAVAIL(NAME) (NAME != NULL) +# define __libc_ptf_call(FUNC, ARGS, ELSE) \ + __libc_maybe_call (FUNC, ARGS, ELSE) +# define __libc_ptf_call_always(FUNC, ARGS) \ + FUNC ARGS +#endif + + +/* Initialize the named lock variable, leaving it in a consistent, unlocked + state. */ +#if !defined NOT_IN_libc || defined IS_IN_libpthread +# define __libc_lock_init(NAME) ((NAME) = LLL_LOCK_INITIALIZER, 0) +#else +# define __libc_lock_init(NAME) \ + __libc_maybe_call (__pthread_mutex_init, (&(NAME), NULL), 0) +#endif +#if defined SHARED && !defined NOT_IN_libc +/* ((NAME) = (__libc_rwlock_t) PTHREAD_RWLOCK_INITIALIZER, 0) is + inefficient. */ +# define __libc_rwlock_init(NAME) \ + (__builtin_memset (&(NAME), '\0', sizeof (NAME)), 0) +#else +# define __libc_rwlock_init(NAME) \ + __libc_maybe_call (__pthread_rwlock_init, (&(NAME), NULL), 0) +#endif + +#define __rtld_lock_init_recursive(NAME) \ + do { \ + if (__pthread_mutex_init != NULL) \ + { \ + pthread_mutexattr_t __attr; \ + __pthread_mutexattr_init (&__attr); \ + __pthread_mutexattr_settype (&__attr, PTHREAD_MUTEX_RECURSIVE_NP); \ + __pthread_mutex_init (&(NAME).mutex, &__attr); \ + __pthread_mutexattr_destroy (&__attr); \ + } \ + } while (0) + +/* Finalize the named lock variable, which must be locked. It cannot be + used again until __libc_lock_init is called again on it. This must be + called on a lock variable before the containing storage is reused. */ +#if !defined NOT_IN_libc || defined IS_IN_libpthread +# define __libc_lock_fini(NAME) ((void) 0) +#else +# define __libc_lock_fini(NAME) \ + __libc_maybe_call (__pthread_mutex_destroy, (&(NAME)), 0) +#endif +#if defined SHARED && !defined NOT_IN_libc +# define __libc_rwlock_fini(NAME) ((void) 0) +#else +# define __libc_rwlock_fini(NAME) \ + __libc_maybe_call (__pthread_rwlock_destroy, (&(NAME)), 0) +#endif + +/* Lock the named lock variable. */ +#if !defined NOT_IN_libc || defined IS_IN_libpthread +# define __libc_lock_lock(NAME) \ + ({ lll_lock (NAME, LLL_PRIVATE); 0; }) +#else +# define __libc_lock_lock(NAME) \ + __libc_maybe_call (__pthread_mutex_lock, (&(NAME)), 0) +#endif +#define __libc_rwlock_rdlock(NAME) \ + __libc_ptf_call (__pthread_rwlock_rdlock, (&(NAME)), 0) +#define __libc_rwlock_wrlock(NAME) \ + __libc_ptf_call (__pthread_rwlock_wrlock, (&(NAME)), 0) + +/* Try to lock the named lock variable. */ +#if !defined NOT_IN_libc || defined IS_IN_libpthread +# define __libc_lock_trylock(NAME) \ + lll_trylock (NAME) +#else +# define __libc_lock_trylock(NAME) \ + __libc_maybe_call (__pthread_mutex_trylock, (&(NAME)), 0) +#endif +#define __libc_rwlock_tryrdlock(NAME) \ + __libc_maybe_call (__pthread_rwlock_tryrdlock, (&(NAME)), 0) +#define __libc_rwlock_trywrlock(NAME) \ + __libc_maybe_call (__pthread_rwlock_trywrlock, (&(NAME)), 0) + +#define __rtld_lock_trylock_recursive(NAME) \ + __libc_maybe_call (__pthread_mutex_trylock, (&(NAME).mutex), 0) + +/* Unlock the named lock variable. */ +#if !defined NOT_IN_libc || defined IS_IN_libpthread +# define __libc_lock_unlock(NAME) \ + lll_unlock (NAME, LLL_PRIVATE) +#else +# define __libc_lock_unlock(NAME) \ + __libc_maybe_call (__pthread_mutex_unlock, (&(NAME)), 0) +#endif +#define __libc_rwlock_unlock(NAME) \ + __libc_ptf_call (__pthread_rwlock_unlock, (&(NAME)), 0) + +#ifdef SHARED +# define __rtld_lock_default_lock_recursive(lock) \ + ++((pthread_mutex_t *)(lock))->__data.__count; + +# define __rtld_lock_default_unlock_recursive(lock) \ + --((pthread_mutex_t *)(lock))->__data.__count; + +# define __rtld_lock_lock_recursive(NAME) \ + GL(dl_rtld_lock_recursive) (&(NAME).mutex) + +# define __rtld_lock_unlock_recursive(NAME) \ + GL(dl_rtld_unlock_recursive) (&(NAME).mutex) +#else +# define __rtld_lock_lock_recursive(NAME) \ + __libc_maybe_call (__pthread_mutex_lock, (&(NAME).mutex), 0) + +# define __rtld_lock_unlock_recursive(NAME) \ + __libc_maybe_call (__pthread_mutex_unlock, (&(NAME).mutex), 0) +#endif + +/* Define once control variable. */ +#if PTHREAD_ONCE_INIT == 0 +/* Special case for static variables where we can avoid the initialization + if it is zero. */ +# define __libc_once_define(CLASS, NAME) \ + CLASS pthread_once_t NAME +#else +# define __libc_once_define(CLASS, NAME) \ + CLASS pthread_once_t NAME = PTHREAD_ONCE_INIT +#endif + +/* Call handler iff the first call. */ +#define __libc_once(ONCE_CONTROL, INIT_FUNCTION) \ + do { \ + if (PTFAVAIL (__pthread_once)) \ + __libc_ptf_call_always (__pthread_once, (&(ONCE_CONTROL), \ + INIT_FUNCTION)); \ + else if ((ONCE_CONTROL) == PTHREAD_ONCE_INIT) { \ + INIT_FUNCTION (); \ + (ONCE_CONTROL) |= 2; \ + } \ + } while (0) + + +/* Note that for I/O cleanup handling we are using the old-style + cancel handling. It does not have to be integrated with C++ snce + no C++ code is called in the middle. The old-style handling is + faster and the support is not going away. */ +extern void _pthread_cleanup_push (struct _pthread_cleanup_buffer *buffer, + void (*routine) (void *), void *arg); +extern void _pthread_cleanup_pop (struct _pthread_cleanup_buffer *buffer, + int execute); +extern void _pthread_cleanup_push_defer (struct _pthread_cleanup_buffer *buffer, + void (*routine) (void *), void *arg); +extern void _pthread_cleanup_pop_restore (struct _pthread_cleanup_buffer *buffer, + int execute); + +/* Sometimes we have to exit the block in the middle. */ +#define __libc_cleanup_end(DOIT) \ + if (_avail) { \ + __libc_ptf_call_always (_pthread_cleanup_pop_restore, (&_buffer, DOIT));\ + } else if (DOIT) \ + _buffer.__routine (_buffer.__arg) + + +/* Normal cleanup handling, based on C cleanup attribute. */ +__extern_inline void +__libc_cleanup_routine (struct __pthread_cleanup_frame *f) +{ + if (f->__do_it) + f->__cancel_routine (f->__cancel_arg); +} + +#define __libc_cleanup_push(fct, arg) \ + do { \ + struct __pthread_cleanup_frame __clframe \ + __attribute__ ((__cleanup__ (__libc_cleanup_routine))) \ + = { .__cancel_routine = (fct), .__cancel_arg = (arg), \ + .__do_it = 1 }; + +#define __libc_cleanup_pop(execute) \ + __clframe.__do_it = (execute); \ + } while (0) + + +/* Create thread-specific key. */ +#define __libc_key_create(KEY, DESTRUCTOR) \ + __libc_ptf_call (__pthread_key_create, (KEY, DESTRUCTOR), 1) + +/* Get thread-specific data. */ +#define __libc_getspecific(KEY) \ + __libc_ptf_call (__pthread_getspecific, (KEY), NULL) + +/* Set thread-specific data. */ +#define __libc_setspecific(KEY, VALUE) \ + __libc_ptf_call (__pthread_setspecific, (KEY, VALUE), 0) + + +/* Register handlers to execute before and after `fork'. Note that the + last parameter is NULL. The handlers registered by the libc are + never removed so this is OK. */ +#define __libc_atfork(PREPARE, PARENT, CHILD) \ + __register_atfork (PREPARE, PARENT, CHILD, NULL) +extern int __register_atfork (void (*__prepare) (void), + void (*__parent) (void), + void (*__child) (void), + void *__dso_handle); + +/* Functions that are used by this file and are internal to the GNU C + library. */ + +extern int __pthread_mutex_init (pthread_mutex_t *__mutex, + const pthread_mutexattr_t *__mutex_attr); + +extern int __pthread_mutex_destroy (pthread_mutex_t *__mutex); + +extern int __pthread_mutex_trylock (pthread_mutex_t *__mutex); + +extern int __pthread_mutex_lock (pthread_mutex_t *__mutex); + +extern int __pthread_mutex_unlock (pthread_mutex_t *__mutex); + +extern int __pthread_mutexattr_init (pthread_mutexattr_t *__attr); + +extern int __pthread_mutexattr_destroy (pthread_mutexattr_t *__attr); + +extern int __pthread_mutexattr_settype (pthread_mutexattr_t *__attr, + int __kind); + +extern int __pthread_rwlock_init (pthread_rwlock_t *__rwlock, + const pthread_rwlockattr_t *__attr); + +extern int __pthread_rwlock_destroy (pthread_rwlock_t *__rwlock); + +extern int __pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock); + +extern int __pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock); + +extern int __pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock); + +extern int __pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock); + +extern int __pthread_rwlock_unlock (pthread_rwlock_t *__rwlock); + +extern int __pthread_key_create (pthread_key_t *__key, + void (*__destr_function) (void *)); + +extern int __pthread_setspecific (pthread_key_t __key, + const void *__pointer); + +extern void *__pthread_getspecific (pthread_key_t __key); + +extern int __pthread_once (pthread_once_t *__once_control, + void (*__init_routine) (void)); + +extern int __pthread_atfork (void (*__prepare) (void), + void (*__parent) (void), + void (*__child) (void)); + + + +/* Make the pthread functions weak so that we can elide them from + single-threaded processes. */ +#ifndef __NO_WEAK_PTHREAD_ALIASES +# ifdef weak_extern +# include +weak_extern (BP_SYM (__pthread_mutex_init)) +weak_extern (BP_SYM (__pthread_mutex_destroy)) +weak_extern (BP_SYM (__pthread_mutex_lock)) +weak_extern (BP_SYM (__pthread_mutex_trylock)) +weak_extern (BP_SYM (__pthread_mutex_unlock)) +weak_extern (BP_SYM (__pthread_mutexattr_init)) +weak_extern (BP_SYM (__pthread_mutexattr_destroy)) +weak_extern (BP_SYM (__pthread_mutexattr_settype)) +weak_extern (BP_SYM (__pthread_rwlock_init)) +weak_extern (BP_SYM (__pthread_rwlock_destroy)) +weak_extern (BP_SYM (__pthread_rwlock_rdlock)) +weak_extern (BP_SYM (__pthread_rwlock_tryrdlock)) +weak_extern (BP_SYM (__pthread_rwlock_wrlock)) +weak_extern (BP_SYM (__pthread_rwlock_trywrlock)) +weak_extern (BP_SYM (__pthread_rwlock_unlock)) +weak_extern (BP_SYM (__pthread_key_create)) +weak_extern (BP_SYM (__pthread_setspecific)) +weak_extern (BP_SYM (__pthread_getspecific)) +weak_extern (BP_SYM (__pthread_once)) +weak_extern (__pthread_initialize) +weak_extern (__pthread_atfork) +weak_extern (BP_SYM (_pthread_cleanup_push_defer)) +weak_extern (BP_SYM (_pthread_cleanup_pop_restore)) +weak_extern (BP_SYM (pthread_setcancelstate)) +# else +# pragma weak __pthread_mutex_init +# pragma weak __pthread_mutex_destroy +# pragma weak __pthread_mutex_lock +# pragma weak __pthread_mutex_trylock +# pragma weak __pthread_mutex_unlock +# pragma weak __pthread_mutexattr_init +# pragma weak __pthread_mutexattr_destroy +# pragma weak __pthread_mutexattr_settype +# pragma weak __pthread_rwlock_destroy +# pragma weak __pthread_rwlock_rdlock +# pragma weak __pthread_rwlock_tryrdlock +# pragma weak __pthread_rwlock_wrlock +# pragma weak __pthread_rwlock_trywrlock +# pragma weak __pthread_rwlock_unlock +# pragma weak __pthread_key_create +# pragma weak __pthread_setspecific +# pragma weak __pthread_getspecific +# pragma weak __pthread_once +# pragma weak __pthread_initialize +# pragma weak __pthread_atfork +# pragma weak _pthread_cleanup_push_defer +# pragma weak _pthread_cleanup_pop_restore +# pragma weak pthread_setcancelstate +# endif +#endif + +#endif /* bits/libc-lockP.h */ -- cgit 1.4.1 From abdf2e1915ddc03b5dec1fd81d9520a90a69710d Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 6 Mar 2012 23:39:31 -0500 Subject: Better CL --- nptl/ChangeLog | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 4ca4c38d1c..4decc287e9 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,7 +1,7 @@ 2012-03-06 Ulrich Drepper - * sysdeps/pthread/bits/libc-lock.h: Split information not needed in - installed headers... + * sysdeps/pthread/bits/libc-lock.h: Move information not needed in + installed headers to... * sysdeps/pthread/bits/libc-lockP.h: ...here. New file. 2012-03-06 David S. Miller -- cgit 1.4.1 From 959e12e37b7fd3090fbe58913e29fa91dcc5620d Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 7 Mar 2012 00:28:22 -0500 Subject: Fix CL --- nptl/ChangeLog | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 4decc287e9..53b8ad18c2 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -54,8 +54,8 @@ 2012-02-16 Richard Henderson - * nptl/sysdeps/unix/sysv/linux/s390/s390-32/pt-initfini.c: Remove file. - * nptl/sysdeps/unix/sysv/linux/s390/s390-64/pt-initfini.c: Remove file. + * sysdeps/unix/sysv/linux/s390/s390-32/pt-initfini.c: Remove file. + * sysdeps/unix/sysv/linux/s390/s390-64/pt-initfini.c: Remove file. 2012-02-15 Kaz Kojima -- cgit 1.4.1 From 840df61ea4e9bc587a1cb8b3787364d650a7d29e Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 7 Mar 2012 04:11:11 -0500 Subject: Get rid of superfluous assignments in sem_timedwait --- nptl/ChangeLog | 9 +++++++++ nptl/sysdeps/unix/sysv/linux/sem_timedwait.c | 3 +-- nptl/sysdeps/unix/sysv/linux/sparc/sem_timedwait.c | 3 +-- nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_timedwait.c | 3 +-- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 53b8ad18c2..73394b9ed6 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,12 @@ +2012-01-23 Thomas Schwinge + + * sysdeps/unix/sysv/linux/sem_timedwait.c (sem_timedwait): Get rid of + superfluous assignment. + * sysdeps/unix/sysv/linux/sparc/sem_timedwait.c (sem_timedwait): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/sem_timedwait.c + (sem_timedwait): Likewise. + 2012-03-06 Ulrich Drepper * sysdeps/pthread/bits/libc-lock.h: Move information not needed in diff --git a/nptl/sysdeps/unix/sysv/linux/sem_timedwait.c b/nptl/sysdeps/unix/sysv/linux/sem_timedwait.c index 903830ea7e..36e00426d9 100644 --- a/nptl/sysdeps/unix/sysv/linux/sem_timedwait.c +++ b/nptl/sysdeps/unix/sysv/linux/sem_timedwait.c @@ -1,5 +1,5 @@ /* sem_timedwait -- wait on a semaphore. Generic futex-using version. - Copyright (C) 2003, 2007 Free Software Foundation, Inc. + Copyright (C) 2003, 2007, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Paul Mackerras , 2003. @@ -83,7 +83,6 @@ sem_timedwait (sem_t *sem, const struct timespec *abstime) } /* Already timed out? */ - err = -ETIMEDOUT; if (sec < 0) { __set_errno (ETIMEDOUT); diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sem_timedwait.c b/nptl/sysdeps/unix/sysv/linux/sparc/sem_timedwait.c index 7b4e8241a8..8e56bc9c19 100644 --- a/nptl/sysdeps/unix/sysv/linux/sparc/sem_timedwait.c +++ b/nptl/sysdeps/unix/sysv/linux/sparc/sem_timedwait.c @@ -1,5 +1,5 @@ /* sem_timedwait -- wait on a semaphore. Generic futex-using version. - Copyright (C) 2003, 2007 Free Software Foundation, Inc. + Copyright (C) 2003, 2007, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Paul Mackerras , 2003. @@ -83,7 +83,6 @@ sem_timedwait (sem_t *sem, const struct timespec *abstime) } /* Already timed out? */ - err = -ETIMEDOUT; if (sec < 0) { __set_errno (ETIMEDOUT); diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_timedwait.c b/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_timedwait.c index 5da15742cf..c9fcd595fc 100644 --- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_timedwait.c +++ b/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_timedwait.c @@ -1,5 +1,5 @@ /* sem_timedwait -- wait on a semaphore. SPARC version. - Copyright (C) 2003, 2006, 2007 Free Software Foundation, Inc. + Copyright (C) 2003, 2006, 2007, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Paul Mackerras , 2003. @@ -102,7 +102,6 @@ sem_timedwait (sem_t *sem, const struct timespec *abstime) } /* Already timed out? */ - err = -ETIMEDOUT; if (sec < 0) { __set_errno (ETIMEDOUT); -- cgit 1.4.1 From 482ff4dae91cf9a288284072d1a299868db7a634 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 7 Mar 2012 04:48:47 -0500 Subject: Don't install timezone rule files --- ChangeLog | 5 +++ timezone/Makefile | 102 +----------------------------------------------------- 2 files changed, 6 insertions(+), 101 deletions(-) diff --git a/ChangeLog b/ChangeLog index e4c64f6068..4035838516 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2012-03-07 Ulrich Drepper + + * timezone/Makefile: Don't install timezone files, just the programs + and scripts. + 2012-03-06 Ulrich Drepper * nss/databases.def: Add missing gshadow entry. diff --git a/timezone/Makefile b/timezone/Makefile index e8fb7162f4..d5ea538991 100644 --- a/timezone/Makefile +++ b/timezone/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1998,1999,2000,2002,2005,2007 Free Software Foundation, Inc. +# Copyright (C) 1998-2000,2002,2005,2007,2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -49,33 +49,6 @@ include ../Makeconfig # Get objpfx defined so we can use it below. CPPFLAGS-zic = -DNOT_IN_libc -# z.* use this variable. -define nl - - -endef -ifndef avoid-generated -ifndef inhibit_timezone_rules --include $(addprefix $(objpfx)z.,$(tzfiles)) -endif -endif - -# Make these absolute file names. -installed-localtime-file := $(firstword $(filter /%,$(inst_localtime-file)) \ - $(addprefix $(inst_zonedir)/, \ - $(localtime-file))) -installed-posixrules-file := $(firstword $(filter /%,$(posixrules-file)) \ - $(addprefix $(inst_zonedir)/, \ - $(posixrules-file))) - -ifeq ($(cross-compiling),no) -# Don't try to install the zoneinfo files since we can't run zic. -install-others = $(addprefix $(inst_zonedir)/,$(zonenames) \ - $(zonenames:%=posix/%) \ - $(zonenames:%=right/%)) \ - $(installed-localtime-file) $(installed-posixrules-file) -endif - ifeq ($(have-ksh),yes) install-others += $(inst_zonedir)/iso3166.tab $(inst_zonedir)/zone.tab install-bin-script = tzselect @@ -85,79 +58,6 @@ endif include ../Rules -$(tzfiles:%=$(objpfx)z.%): $(objpfx)z.%: % Makefile -# Kludge alert: we use an implicit rule (in what we are generating here) -# because that is the only way to tell Make that the one command builds all -# the files. -# The extra kludge for the $(tzlinks) files is necessary since running zic -# this file requires all other files to exist. Blech! - $(make-target-directory) - (echo 'define $*-zones' ;\ - $(AWK) '$$1 == "Zone" { print $$2 } $$1 == "Link" { print $$3 }' $^ ;\ - echo 'endef' ;\ - echo '$*-zones := $$(subst $$(nl), ,$$($*-zones))' ;\ - echo 'ifdef $*-zones' ;\ - if test x$(findstring $*, $(tzlinks)) != x; then \ - echo '$$(addprefix $$(inst_zonedir)/right/,$$($*-zones)): \';\ - echo '$$(foreach t,$$(tzbases),$$(addprefix $$(inst_zonedir)/right/,$$($$t-zones)))' ;\ - echo '$$(addprefix $$(inst_zonedir)/posix/,$$($*-zones)): \';\ - echo '$$(foreach t,$$(tzbases),$$(addprefix $$(inst_zonedir)/posix/,$$($$t-zones)))' ;\ - echo '$$(addprefix $$(inst_zonedir)/,$$($*-zones)): \' ;\ - echo '$$(foreach t,$$(tzbases),$$(addprefix $$(inst_zonedir)/,$$($$t-zones)))' ;\ - fi ;\ - echo '$$(addprefix $$(dir $$(inst_zonedir))zone%/right/,$$($*-zones)): \' ;\ - echo '$< $$(objpfx)zic leapseconds yearistype' ;\ - echo ' $$(tzcompile)' ;\ - echo '$$(addprefix $$(dir $$(inst_zonedir))zone%/posix/,$$($*-zones)): \' ;\ - echo '$< $$(objpfx)zic /dev/null yearistype' ;\ - echo ' $$(tzcompile)' ;\ - echo '$$(addprefix $$(dir $$(inst_zonedir))zone%/,$$($*-zones)): \' ;\ - echo '$< $$(objpfx)zic $$(leapseconds) yearistype' ;\ - echo ' $$(tzcompile)' ;\ - echo 'endif' ;\ - echo 'zonenames := $$(zonenames) $$($*-zones)' ;\ - ) > $@.new - mv $@.new $@ - -.PHONY: echo-zonenames -echo-zonenames: - @echo 'Known zones: $(zonenames)' - - -# We have to use `-d $(inst_zonedir)' to explictly tell zic where to -# place the output files although $(zonedir) is compiled in. But the -# user might have set $(install_root) on the command line of `make install'. -zic-cmd = $(built-program-cmd) -d $(inst_zonedir) -tzcompile = $(zic-cmd)$(target-zone-flavor) -L $(word 3,$^) \ - -y $(dir $(word 4,$^))$(notdir $(word 4,$^)) $< - -# The source files specify the zone names relative to the -d directory, -# so for the posix/ and right/ flavors we need to pass -d $(inst_zonedir)/posix -# and the like. This magic extracts /posix or /right if it's the first -# component after $(inst_zonedir) in the target name $@. -target-zone-flavor = $(filter /posix /right, \ - /$(firstword $(subst /, , \ - $(patsubst $(inst_zonedir)/%,%,$@)))) - -ifdef localtime -$(installed-localtime-file): $(inst_zonedir)/$(localtime) $(objpfx)zic \ - $(+force) - $(make-target-directory) - if test -r $@; then \ - echo Site timezone NOT reset to Factory.; \ - else \ - rm -f $@T; \ - $(SHELL) $(..)scripts/rellns-sh $< $@T; \ - mv -f $@T $@; \ - fi -endif -ifdef posixrules -$(installed-posixrules-file): $(inst_zonedir)/$(posixrules) $(objpfx)zic \ - $(+force) - $(zic-cmd) -p $(posixrules) -endif - - $(objpfx)zic: $(objpfx)scheck.o $(objpfx)ialloc.o tz-cflags = -DTZDIR='"$(zonedir)"' \ -- cgit 1.4.1 From a4300c7a4d65e24a4a0215460c063ea9c7b4605a Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 7 Mar 2012 05:17:13 -0500 Subject: Remove distribute variable from Makefiles --- ChangeLog | 45 +++++++++++++++++++++++++++ argp/Makefile | 4 +-- catgets/Makefile | 4 +-- conform/Makefile | 3 -- crypt/Makefile | 5 +-- csu/Makefile | 2 -- debug/Makefile | 2 -- dirent/Makefile | 4 +-- dlfcn/Makefile | 6 ---- elf/Makefile | 85 --------------------------------------------------- gmon/Makefile | 3 +- grp/Makefile | 5 ++- hesiod/Makefile | 10 +++--- hurd/Makefile | 7 ++--- iconv/Makefile | 4 --- iconvdata/Makefile | 79 +---------------------------------------------- inet/Makefile | 4 +-- intl/Makefile | 11 +------ io/Makefile | 2 -- libidn/ChangeLog | 4 +++ libidn/Makefile | 4 +-- libio/Makefile | 5 +-- locale/Makefile | 15 +-------- localedata/ChangeLog | 4 +++ localedata/Makefile | 16 ++-------- login/Makefile | 5 ++- mach/Makefile | 11 ++----- malloc/Makefile | 11 ++----- manual/Makefile | 9 ------ math/Makefile | 8 ----- misc/Makefile | 2 -- nis/Makefile | 7 ++--- nptl/ChangeLog | 4 +++ nptl/Makefile | 2 -- nptl_db/ChangeLog | 4 +++ nptl_db/Makefile | 4 +-- nscd/Makefile | 6 +--- nss/Makefile | 9 +----- po/Makefile | 6 +--- posix/Makefile | 9 +----- resolv/Makefile | 2 -- rt/Makefile | 2 -- signal/Makefile | 4 +-- socket/Makefile | 4 +-- soft-fp/Makefile | 8 +---- stdio-common/Makefile | 4 +-- stdlib/Makefile | 3 -- string/Makefile | 4 +-- sunrpc/Makefile | 8 +---- time/Makefile | 3 +- timezone/Makefile | 9 ++---- wcsmbs/Makefile | 1 - wctype/Makefile | 3 +- 53 files changed, 107 insertions(+), 378 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4035838516..b3dbb5d63b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,50 @@ 2012-03-07 Ulrich Drepper + * login/Makefile (distribute): Remove variable. + * catgets/Makefile: Likewise. + * mach/Makefile: Likewise. + * malloc/Makefile: Likewise. + * misc/Makefile: Likewise. + * iconv/Makefile: Likewise. + * nscd/Makefile: Likewise. + * hurd/Makefile: Likewise. + * manual/Makefile: Likewise. + * locale/Makefile: Likewise. + * intl/Makefile: Likewise. + * conform/Makefile: Likewise. + * nss/Makefile: Likewise. + * time/Makefile: Likewise. + * soft-fp/Makefile: Likewise. + * dirent/Makefile: Likewise. + * gmon/Makefile: Likewise. + * po/Makefile: Likewise. + * rt/Makefile: Likewise. + * socket/Makefile: Likewise. + * math/Makefile: Likewise. + * signal/Makefile: Likewise. + * debug/Makefile: Likewise. + * elf/Makefile: Likewise. + * timezone/Makefile: Likewise. + * stdlib/Makefile: Likewise. + * iconvdata/Makefile: Likewise. + * sunrpc/Makefile: Likewise. + * io/Makefile: Likewise. + * argp/Makefile: Likewise. + * inet/Makefile: Likewise. + * hesiod/Makefile: Likewise. + * grp/Makefile: Likewise. + * csu/Makefile: Likewise. + * wctype/Makefile: Likewise. + * crypt/Makefile: Likewise. + * libio/Makefile: Likewise. + * string/Makefile: Likewise. + * nis/Makefile: Likewise. + * resolv/Makefile: Likewise. + * stdio-common/Makefile: Likewise. + * wcsmbs/Makefile: Likewise. + * dlfcn/Makefile: Likewise. + * posix/Makefile: Likewise. + * timezone/Makefile: Don't install timezone files, just the programs and scripts. diff --git a/argp/Makefile b/argp/Makefile index 7aa6804aa2..63cea6a222 100644 --- a/argp/Makefile +++ b/argp/Makefile @@ -1,4 +1,5 @@ -# Copyright (C) 1997,2002,2003,2006,2007,2010 Free Software Foundation, Inc. +# Copyright (C) 1997,2002,2003,2006,2007,2010,2012 +# Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -21,7 +22,6 @@ subdir := argp headers = argp.h -distribute = argp-fmtstream.h argp-namefrob.h routines = $(addprefix argp-, ba fmtstream fs-xinl help parse pv \ pvh xinl eexst) diff --git a/catgets/Makefile b/catgets/Makefile index 9e308c50cf..a95028f2dd 100644 --- a/catgets/Makefile +++ b/catgets/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1996-2000, 2002, 2003, 2004 Free Software Foundation, Inc. +# Copyright (C) 1996-2000, 2002-2004, 2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -21,8 +21,6 @@ subdir := catgets headers = nl_types.h -distribute = catgetsinfo.h config.h xopen-msg.sed test1.msg test2.msg \ - test-gencat.sh sample.SJIS routines = catgets open_catalog others = gencat install-bin = gencat diff --git a/conform/Makefile b/conform/Makefile index f1f45ee201..4915a67b1e 100644 --- a/conform/Makefile +++ b/conform/Makefile @@ -20,9 +20,6 @@ # subdir := conform -distribute = conformtest.pl $(wildcard data/*.h-data) \ - $(wildcard data/*/*.h-data) - include ../Rules ifneq (yes,$(fast-check)) diff --git a/crypt/Makefile b/crypt/Makefile index 217588df5e..d276092215 100644 --- a/crypt/Makefile +++ b/crypt/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1996, 2000, 2001, 2007, 2009 Free Software Foundation, Inc. +# Copyright (C) 1996,2000,2001,2007,2009,2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -30,9 +30,6 @@ libcrypt-routines := crypt-entry md5-crypt sha256-crypt sha512-crypt crypt \ tests := cert md5c-test sha256c-test sha512c-test -distribute := ufc-crypt.h crypt-private.h ufc.c speeds.c README.ufc-crypt \ - Banner md5.h sha256.h sha512.h - include ../Makeconfig ifeq ($(crypt-in-libc),yes) diff --git a/csu/Makefile b/csu/Makefile index 8e8a41ecad..31300a49d9 100644 --- a/csu/Makefile +++ b/csu/Makefile @@ -37,8 +37,6 @@ omit-deps = $(patsubst %.o,%,$(start-installed-name) g$(start-installed-name) \ b$(start-installed-name) $(csu-dummies) \ S$(start-installed-name)) install-lib = $(start-installed-name) g$(start-installed-name) $(csu-dummies) -distribute = gmon-start.c start.c \ - abi-note.S init.c c not-cancel.h generated = version-info.h before-compile = $(objpfx)version-info.h diff --git a/debug/Makefile b/debug/Makefile index 4055211083..fb8c28572f 100644 --- a/debug/Makefile +++ b/debug/Makefile @@ -21,7 +21,6 @@ subdir := debug headers := execinfo.h -distribute = sigcontextinfo.h register-dump.h frame.h routines = backtrace backtracesyms backtracesymsfd noophooks \ memcpy_chk memmove_chk mempcpy_chk memset_chk stpcpy_chk \ @@ -138,7 +137,6 @@ install-bin-script = xtrace include ../Makeconfig -distribute += catchsegv.sh xtrace.sh ifeq ($(build-shared),yes) install-bin-script += catchsegv endif diff --git a/dirent/Makefile b/dirent/Makefile index 8b504fdf09..0cdab68abf 100644 --- a/dirent/Makefile +++ b/dirent/Makefile @@ -1,4 +1,5 @@ -# Copyright (C) 1991-2000,2002,2003,2005,2006,2011 Free Software Foundation, Inc. +# Copyright (C) 1991-2000,2002,2003,2005,2006,2011,2012 +# Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -26,7 +27,6 @@ routines := opendir closedir readdir readdir_r rewinddir \ getdents getdents64 dirfd readdir64 readdir64_r scandir64 \ alphasort64 versionsort64 fdopendir \ scandirat scandirat64 -distribute := dirstream.h tests := list tst-seekdir opendir-tst1 bug-readdir1 tst-fdopendir \ tst-fdopendir2 diff --git a/dlfcn/Makefile b/dlfcn/Makefile index e46744476c..1a2d2e84e6 100644 --- a/dlfcn/Makefile +++ b/dlfcn/Makefile @@ -22,12 +22,6 @@ libdl-routines := dlopen dlclose dlsym dlvsym dlerror dladdr dladdr1 dlinfo \ dlmopen dlfcn routines := $(patsubst %,s%,$(filter-out dlfcn,$(libdl-routines))) elide-routines.os := $(routines) -distribute := dlopenold.c glreflib1.c glreflib2.c glreflib3.c \ - failtestmod.c \ - defaultmod1.c defaultmod2.c errmsg1mod.c modatexit.c \ - modcxaatexit.c modstatic.c modstatic2.c \ - bug-dlsym1-lib1.c bug-dlsym1-lib2.c bug-atexit1-lib.c \ - bug-atexit2-lib.c extra-libs-others := libdl diff --git a/elf/Makefile b/elf/Makefile index 25ffc5765b..59a3936a1b 100644 --- a/elf/Makefile +++ b/elf/Makefile @@ -41,91 +41,6 @@ shared-only-routines += dl-caller rtld-routines := rtld $(dl-routines) dl-sysdep dl-environ dl-minimal all-rtld-routines = $(rtld-routines) $(sysdep-rtld-routines) -distribute := rtld-Rules \ - $(rtld-routines:=.c) dynamic-link.h do-rel.h dl-machine.h \ - dl-cache.h dl-hash.h soinit.c sofini.c ldd.bash.in \ - genrtldtbl.awk atomicity.h dl-procinfo.h ldsodefs.h \ - dl-librecon.h interp.c sln.c dl-dst.h hp-timing.h \ - dl-lookupcfg.h sprof.c gen-trusted-dirs.awk \ - testobj1.c testobj2.c testobj3.c testobj4.c testobj5.c \ - testobj6.c testobj1_1.c failobj.c unloadmod.c \ - ldconfig.h ldconfig.c cache.c readlib.c readelflib.c \ - chroot_canon.c gccframe.h \ - dep1.c dep2.c dep3.c dep4.c dl-dtprocnum.h unsecvars.h \ - vismain.c vismod1.c vismod2.c vismod3.c \ - constload2.c constload3.c filtmod1.c filtmod2.c \ - nodlopenmod.c nodelete.c nodelmod1.c nodelmod2.c \ - nodelmod3.c nodelmod4.c nodlopen.c dl-osinfo.h \ - reldepmod1.c reldepmod2.c reldepmod3.c reldepmod4.c \ - reldepmod5.c reldepmod6.c \ - reldep4mod1.c reldep4mod2.c reldep4mod3.c reldep4mod4.c \ - nextmod1.c nextmod2.c pathoptobj.c tst-pathopt.sh \ - neededobj1.c neededobj2.c neededobj3.c neededobj4.c \ - neededobj5.c neededobj6.c firstobj.c \ - unload2mod.c unload2dep.c ltglobmod1.c ltglobmod2.c \ - testobj.h vismod.h globalmod1.c \ - dblloadmod1.c dblloadmod2.c dblloadmod3.c \ - reldep6mod4.c reldep6mod3.c reldep6mod2.c reldep6mod1.c \ - reldep6mod0.c reldep7mod1.c reldep7mod2.c \ - unwind-dw2.c unwind-dw2-fde.c unwind.h unwind-pe.h \ - unwind-dw2-fde.h dwarf2.h dl-procinfo.c tls.h dl-tls.h \ - tst-tlsmod1.c tst-tlsmod2.c tst-tlsmod3.c tst-tlsmod4.c \ - tst-tlsmod5.c tst-tlsmod6.c tst-tlsmod7.c tst-tlsmod8.c \ - tst-tlsmod9.c tst-tlsmod10.c tst-tlsmod11.c \ - tst-tlsmod12.c tst-tls10.h tst-alignmod.c tst-alignmod2.c \ - circlemod1.c circlemod1a.c circlemod2.c circlemod2a.c \ - circlemod3.c circlemod3a.c nodlopenmod2.c \ - tst-tls19mod1.c tst-tls19mod2.c tst-tls19mod3.c \ - tls-macros.h \ - reldep8mod1.c reldep8mod2.c reldep8mod3.c \ - nodel2mod1.c nodel2mod2.c nodel2mod3.c \ - reldep9.c reldep9mod1.c reldep9mod2.c reldep9mod3.c \ - tst-array1.exp tst-array2.exp tst-array4.exp \ - tst-array2dep.c tst-piemod1.c \ - tst-execstack-mod.c tst-dlmodcount.c \ - check-textrel.c dl-sysdep.h test-dlopenrpathmod.c \ - tst-deep1mod1.c tst-deep1mod2.c tst-deep1mod3.c \ - unload3mod1.c unload3mod2.c unload3mod3.c unload3mod4.c \ - unload4mod1.c unload4mod2.c unload4mod3.c unload4mod4.c \ - unload6mod1.c unload6mod2.c unload6mod3.c \ - unload7mod1.c unload7mod2.c \ - unload8mod1.c unload8mod1x.c unload8mod2.c unload8mod3.c \ - tst-audit1.c tst-audit2.c tst-audit3.c tst-audit4.c \ - tst-auditmod1.c tst-auditmod3a.c tst-auditmod3b.c \ - tst-auditmod4a.c tst-auditmod4b.c \ - tst-audit5.c tst-auditmod5a.c tst-auditmod5b.c \ - tst-audit6.c tst-auditmod6a.c tst-auditmod6b.c \ - tst-auditmod6c.c \ - tst-audit7.c tst-auditmod7a.c tst-auditmod7b.c \ - order2mod1.c order2mod2.c order2mod3.c order2mod4.c \ - tst-stackguard1.c tst-stackguard1-static.c \ - tst-array5.c tst-array5-static.c tst-array5dep.c \ - tst-array5.exp tst-leaks1.c check-execstack.c \ - ifuncmain1.c ifuncmain1pic.c ifuncmain1vis.c \ - ifuncmain1vispic.c ifuncmain1static.c \ - ifuncmain1staticpic.c ifuncmain1picstatic.c \ - ifuncdep1.c ifuncdep1pic.c ifuncmod1.c \ - ifuncmain1pie.c ifuncmain1vispie.c \ - ifuncmain1staticpie.c \ - ifuncmain2.c ifuncmain2static.c ifuncdep2.c \ - ifuncmain2pic.c ifuncmain2picstatic.c ifuncdep2pic.c \ - ifuncmain3.c ifuncmod3.c \ - ifuncmain4.c ifuncmain4static.c ifuncmain4picstatic.c \ - ifuncmain5.c ifuncmain5pic.c ifuncmain5picstatic.c \ - ifuncmain5pie.c ifuncmain5static.c \ - ifuncmain5staticpic.c \ - ifuncdep5.c ifuncdep5pic.c ifuncmod5.c \ - ifuncmain6pie.c ifuncmod6.c \ - ifuncmain7.c ifuncmain7pic.c ifuncmain7picstatic.c \ - ifuncmain7pie.c ifuncmain7static.c \ - tst-unique1.c tst-unique1mod1.c tst-unique1mod2.c \ - tst-unique2.c tst-unique2mod1.c tst-unique2mod2.c \ - tst-initordera1.c tst-initordera2.c tst-initorderb1.c \ - tst-initorderb2.c tst-initordera3.c tst-initordera4.c \ - tst-initorder.c \ - tst-initorder2.c \ - tst-relsort1.c tst-relsort1mod1.c tst-relsort1mod2.c - CFLAGS-dl-runtime.c = -fexceptions -fasynchronous-unwind-tables CFLAGS-dl-lookup.c = -fexceptions -fasynchronous-unwind-tables CFLAGS-dl-iterate-phdr.c = $(uses-callbacks) diff --git a/gmon/Makefile b/gmon/Makefile index 2f15d8ca3c..66c7916e1f 100644 --- a/gmon/Makefile +++ b/gmon/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1995,1996,1997,2001,2002,2005 Free Software Foundation, Inc. +# Copyright (C) 1995-1997,2001,2002,2005,2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -21,7 +21,6 @@ subdir := gmon headers := sys/gmon.h sys/gmon_out.h sys/profil.h -distribute := machine-gmon.h profil-counter.h routines := gmon mcount profil sprofil bb_init_func bb_exit_func prof-freq elide-routines.os = bb_init_func bb_exit_func diff --git a/grp/Makefile b/grp/Makefile index f14212eed2..b5c689effa 100644 --- a/grp/Makefile +++ b/grp/Makefile @@ -1,4 +1,5 @@ -# Copyright (C) 1991,1992,1996-2000,2003,2004 Free Software Foundation, Inc. +# Copyright (C) 1991,1992,1996-2000,2003,2004,2012 +# Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -21,8 +22,6 @@ subdir := grp headers := grp.h -distribute := tst_fgetgrent.c tst_fgetgrent.sh compat-initgroups.c - routines := fgetgrent initgroups setgroups \ getgrent getgrgid getgrnam putgrent \ getgrent_r getgrgid_r getgrnam_r fgetgrent_r diff --git a/hesiod/Makefile b/hesiod/Makefile index 6c31a08782..b9f9b07188 100644 --- a/hesiod/Makefile +++ b/hesiod/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1997, 1998, 2000, 2001 Free Software Foundation, Inc. +# Copyright (C) 1997, 1998, 2000, 2001, 2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -20,8 +20,6 @@ # subdir := hesiod -distribute := hesiod.h hesiod_p.h README.hesiod nss_hesiod/nss_hesiod.h - extra-libs := libnss_hesiod extra-libs-others = $(extra-libs) @@ -29,7 +27,7 @@ subdir-dirs = nss_hesiod vpath %.c nss_hesiod libnss_hesiod-routines := hesiod hesiod-grp hesiod-init hesiod-proto \ - hesiod-pwd hesiod-service + hesiod-pwd hesiod-service # Build only shared library libnss_hesiod-inhibit-o = $(filter-out .os,$(object-suffixes)) @@ -41,6 +39,6 @@ include ../Rules # The Hesiod NSS modules also needs the resolver and some help from # the file service. $(objpfx)libnss_hesiod.so: $(common-objpfx)resolv/libresolv.so \ - $(common-objpfx)nss/libnss_files.so \ - $(common-objpfx)libc.so \ + $(common-objpfx)nss/libnss_files.so \ + $(common-objpfx)libc.so \ $(common-objpfx)libc_nonshared.a diff --git a/hurd/Makefile b/hurd/Makefile index bdad4ff90b..321e04ef13 100644 --- a/hurd/Makefile +++ b/hurd/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1991,92,93,94,95,96,97,98,99,2001,2002,2004,2006 +# Copyright (C) 1991,92,93,94,95,96,97,98,99,2001,2002,2004,2006,2012 # Free Software Foundation, Inc. # This file is part of the GNU C Library. @@ -29,7 +29,7 @@ headers = hurd.h $(interface-headers) \ userlink.h resource.h threadvar.h lookup.h) inline-headers = hurd.h $(addprefix hurd/,fd.h signal.h \ - userlink.h threadvar.h port.h) + userlink.h threadvar.h port.h) # The RPC interfaces go in a separate library. interface-library := libhurduser @@ -67,12 +67,9 @@ dtable = dtable port2fd new-fd alloc-fd intern-fd \ getdport openport \ fd-close fd-read fd-write hurdioctl ctty-input ctty-output inlines = $(inline-headers:%.h=%-inlines) -distribute = hurdstartup.h hurdfault.h hurdhost.h \ - faultexc.defs intr-rpc.defs intr-rpc.h intr-msg.h Notes # XXX this is a temporary hack; see hurdmalloc.h routines += hurdmalloc -distribute += hurdmalloc.h # Binary compatibility for libc.so.0.2[GLIBC_2.0]. ifeq ($(versioning),yes) diff --git a/iconv/Makefile b/iconv/Makefile index 87545bf2fe..6d7791103f 100644 --- a/iconv/Makefile +++ b/iconv/Makefile @@ -45,10 +45,6 @@ CFLAGS-simple-hash.c = -I../locale tests = tst-iconv1 tst-iconv2 tst-iconv3 tst-iconv4 tst-iconv5 -distribute = gconv_builtin.h gconv_int.h loop.c skeleton.c iconv_prog.h \ - iconv_charmap.c dummy-repertoire.c gconv_charset.h strtab.c \ - iconvconfig.h - others = iconv_prog iconvconfig install-others-programs = $(inst_bindir)/iconv install-sbin = iconvconfig diff --git a/iconvdata/Makefile b/iconvdata/Makefile index 78d5da683c..eac51ba572 100644 --- a/iconvdata/Makefile +++ b/iconvdata/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1997-2008, 2011 Free Software Foundation, Inc. +# Copyright (C) 1997-2008, 2011, 2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -127,83 +127,6 @@ LDFLAGS-libCNS.so = $(LDFLAGS-soname-fname) LDFLAGS-libISOIR165.so = $(LDFLAGS-soname-fname) LDFLAGS-libJISX0213.so = $(LDFLAGS-soname-fname) -distribute := gconv-modules extra-module.mk gap.awk gaptab.awk gconv.map \ - gen-8bit.sh gen-8bit-gap.sh gen-8bit-gap-1.sh \ - TESTS $(wildcard testdata/*) \ - TESTS2 run-iconv-test.sh tst-tables.sh tst-table.sh \ - tst-table-charmap.sh tst-table-from.c tst-table-to.c \ - EUC-JP.irreversible ISIRI-3342.irreversible SJIS.irreversible \ - EUC-KR.irreversible BIG5HKSCS.irreversible BIG5.irreversible \ - CP1255.irreversible CP1258.irreversible EUC-TW.irreversible \ - IBM856.irreversible IBM922.irreversible IBM1132.irreversible \ - IBM1133.irreversible IBM1160.irreversible IBM1161.irreversible\ - IBM1163.irreversible IBM1164.irreversible \ - ARMSCII-8.irreversible TCVN5712-1.precomposed \ - JISX0213.TXT EUC-JISX0213.precomposed \ - SHIFT_JISX0213.precomposed SHIFT_JISX0213.irreversible \ - TSCII.irreversible TSCII.precomposed \ - 8bit-generic.c 8bit-gap.c \ - ansi_x3.110.c asmo_449.c big5.c cp737.c cp737.h \ - cp775.c cp775.h ibm874.c cns11643.c cns11643.h \ - cns11643l1.c cns11643l1.h cp1125.c cp1250.c cp1251.c cp1252.c \ - cp1253.c cp1254.c cp1255.c cp1256.c cp1257.c cp1258.c \ - csn_369103.c cwi.c dec-mcs.c ebcdic-at-de.c ebcdic-at-de-a.c \ - ebcdic-ca-fr.c ebcdic-dk-no.c ebcdic-dk-no-a.c ebcdic-es.c \ - ebcdic-es-a.c ebcdic-es-s.c ebcdic-fr.c ebcdic-fi-se.c \ - ebcdic-fi-se-a.c ebcdic-is-friss.c ebcdic-it.c ebcdic-pt.c \ - ebcdic-uk.c ebcdic-us.c ecma-cyrillic.c euc-cn.c euc-jp.c \ - euc-kr.c euc-tw.c gb2312.c gb2312.h gbk.c gost_19768-74.c \ - greek-ccitt.c greek7.c greek7-old.c hp-roman8.c ibm037.c \ - ibm038.c ibm256.c ibm273.c ibm274.c ibm275.c ibm277.c \ - ibm278.c ibm280.c ibm281.c ibm284.c ibm285.c ibm290.c \ - ibm297.c ibm420.c ibm423.c ibm424.c ibm437.c ibm500.c \ - ibm850.c ibm851.c ibm852.c ibm855.c ibm857.c ibm860.c \ - ibm861.c ibm862.c ibm863.c ibm864.c ibm865.c ibm866.c \ - ibm868.c ibm869.c ibm870.c ibm871.c ibm875.c ibm880.c \ - ibm891.c ibm903.c ibm904.c ibm905.c ibm918.c ibm1004.c \ - ibm856.c ibm930.c ibm933.c ibm935.c ibm937.c ibm939.c ibm1046.c \ - ibm856.h ibm930.h ibm933.h ibm935.h ibm937.h ibm939.h ibm1046.h \ - ibm922.c ibm922.h ibm1124.c ibm1124.h ibm1129.c ibm1129.h \ - ibm1132.c ibm1132.h ibm1133.c ibm1133.h ibm1162.c ibm1162.h \ - ibm1026.c ibm1047.c iec_p27-1.c inis.c inis-8.c viscii.c \ - inis-cyrillic.c iso-2022-jp.c iso-2022-kr.c iso646.c \ - iso8859-1.c iso8859-2.c iso8859-3.c iso8859-4.c iso8859-5.c \ - iso8859-6.c iso8859-7.c iso8859-8.c iso8859-9.c iso8859-10.c \ - iso8859-11.c iso8859-13.c iso8859-14.c iso8859-9e.c \ - iso8859-15.c iso_2033.c iso_5427-ext.c iso_5427.c iso_5428.c \ - iso_6937.c iso_6937-2.c iso_10367-box.c jis0201.c jis0201.h \ - jis0208.c jis0208.h jis0212.c jis0212.h johab.c koi-8.c \ - koi8-r.c ksc5601.c ksc5601.h latin-greek.c latin-greek-1.c \ - macintosh.c mac-is.c mac-uk.c nats-dano.c nats-sefi.c sjis.c \ - t.61.c uhc.c sami-ws2.c iso-ir-197.c tis-620.c koi8-u.c \ - isiri-3342.c isiri-3342.h gbgbk.c iso-2022-cn.c cns11643l2.h \ - iso8859-16.c utf-16.c unicode.c utf-32.c utf-7.c big5hkscs.c \ - iso-ir-165.c iso-ir-165.h gb18030.c iso-2022-cn-ext.c \ - ibm932.c ibm932.h ibm943.c ibm943.h gbbig5.c cp10007.c \ - koi8-t.c georgian-ps.c georgian-academy.c iso-ir-209.c \ - mac-sami.c ibm1160.c ibm1160.h ibm1161.c ibm1161.h \ - ibm1163.c ibm1163.h ibm1164.c ibm1164.h jisx0213.c jisx0213.h \ - euc-jisx0213.c shift_jisx0213.c iso-2022-jp-3.c \ - tcvn5712-1.c armscii-8.c tscii.c ibm866nav.c pt154.c rk1048.c \ - ibm1025.c ibm1025.h ibm1122.c ibm1122.h ibm1137.c ibm1137.h \ - ibm1153.c ibm1153.h ibm1154.c ibm1154.h ibm1155.c ibm1155.h \ - ibm1156.c ibm1156.h ibm1157.c ibm1157.h ibm1158.c ibm1158.h \ - ibm803.c ibm803.h ibm901.c ibm901.h ibm902.c ibm902.h \ - ibm921.c ibm921.h ibm1008.c ibm1008.h ibm1008_420.c \ - ibm1097.c ibm1097.h ibm1112.c ibm1112.h ibm1123.c ibm1123.h \ - ibm1130.c ibm1130.h ibm1140.c ibm1140.h ibm1141.c ibm1141.h \ - ibm1142.c ibm1142.h ibm1143.c ibm1143.h ibm1144.c ibm1144.h \ - ibm1145.c ibm1145.h ibm1146.c ibm1146.h ibm1147.c ibm1147.h \ - ibm1148.c ibm1148.h ibm1149.c ibm1149.h ibm1166.c ibm1166.h \ - ibm1167.c ibm1167.h ibm4517.c ibm4517.h ibm4899.c ibm4899.h \ - ibm4909.c ibm4909.h ibm4971.c ibm4971.h ibm5347.c ibm5347.h \ - ibm9030.c ibm9030.h ibm9066.c ibm9066.h ibm9448.c ibm9448.h \ - ibm12712.c ibm12712.h ibm16804.c ibm16804.h \ - ibm1364.c ibm1364.h ibm1371.c ibm1371.h ibm1388.c ibm1388.h \ - ibm1390.c ibm1390.h ibm1399.c ibm1399.h iso_11548-1.c mik.c \ - brf.c mac-centraleurope.c hp-roman9.c hp-turkish8.c \ - hp-thai8.c hp-greek8.c cp770.c cp771.c cp772.c cp773.c cp774.c - # We build the transformation modules only when we build shared libs. ifeq (yes,$(build-shared)) diff --git a/inet/Makefile b/inet/Makefile index 1e67cdf643..a7b8f2858d 100644 --- a/inet/Makefile +++ b/inet/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1991-2006, 2007, 2009, 2011 Free Software Foundation, Inc. +# Copyright (C) 1991-2007, 2009, 2011, 2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -25,8 +25,6 @@ headers := netinet/ether.h netinet/in.h netinet/in_systm.h \ netinet/tcp.h netinet/ip.h $(wildcard arpa/*.h protocols/*.h) \ aliases.h ifaddrs.h netinet/ip6.h netinet/icmp6.h bits/in.h -distribute := netgroup.h - routines := htonl htons \ inet_lnaof inet_mkadr \ inet_netof inet_ntoa inet_net herrno herrno-loc \ diff --git a/intl/Makefile b/intl/Makefile index c9a3575329..fc6af4446a 100644 --- a/intl/Makefile +++ b/intl/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1995-2003, 2005, 2008, 2011 Free Software Foundation, Inc. +# Copyright (C) 1995-2003,2005,2008,2011,2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -23,15 +23,6 @@ routines = bindtextdom dcgettext dgettext gettext \ dcigettext dcngettext dngettext ngettext \ finddomain loadmsgcat localealias textdomain aux = l10nflist explodename plural plural-exp hash-string -distribute = gmo.h gettextP.h hash-string.h loadinfo.h locale.alias \ - plural.y plural-exp.h plural-eval.c po2test.sed \ - tst-gettext.sh \ - tst-translit.sh translit.po \ - tst-gettext2.sh tstlang1.po tstlang2.po \ - tst-codeset.sh tstcodeset.po \ - tst-gettext3.sh \ - tst-gettext4.sh tst-gettext4-de.po tst-gettext4-fr.po \ - tst-gettext5.sh tst-gettext6.sh include ../Makeconfig diff --git a/io/Makefile b/io/Makefile index 1a849eca2b..6e3a737851 100644 --- a/io/Makefile +++ b/io/Makefile @@ -71,8 +71,6 @@ tests := test-utime test-stat test-stat2 test-lfs tst-getcwd \ tst-mknodat tst-mkfifoat tst-ttyname_r bug-ftw5 \ tst-posix_fallocate -distribute := ftwtest-sh - include ../Rules CFLAGS-fcntl.c = -fexceptions -fasynchronous-unwind-tables diff --git a/libidn/ChangeLog b/libidn/ChangeLog index a718a9f2a3..58a95b1b93 100644 --- a/libidn/ChangeLog +++ b/libidn/ChangeLog @@ -1,3 +1,7 @@ +2012-03-07 Ulrich Drepper + + * Makefile (distribute): Remove variable. + 2011-12-03 Ulrich Drepper * idna.c (idna_to_unicode_4z4z): Remove variable rc. diff --git a/libidn/Makefile b/libidn/Makefile index ecabc1b1af..8342c461ff 100644 --- a/libidn/Makefile +++ b/libidn/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +# Copyright (C) 2003, 2004, 2005, 2006, 2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -19,8 +19,6 @@ subdir := libidn -distribute := punycode.h stringprep.h idna.h iconvme.h - routines = idn-stub extra-libs = libcidn diff --git a/libio/Makefile b/libio/Makefile index 206cbacebc..02efe1b3a3 100644 --- a/libio/Makefile +++ b/libio/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1995-2004,2006-2009,2011 Free Software Foundation, Inc. +# Copyright (C) 1995-2004,2006-2009,2011,2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -167,9 +167,6 @@ shared-only-routines = oldiofopen oldiofdopen oldiofclose oldfileops \ oldiofgetpos oldiofgetpos64 oldiofsetpos \ oldiofsetpos64 -distribute := iolibio.h libioP.h strfile.h Banner test-freopen.sh \ - fd_to_filename.h - include ../Rules ifeq (no,$(cross-compiling)) diff --git a/locale/Makefile b/locale/Makefile index 5cc1e7295d..42c6772ceb 100644 --- a/locale/Makefile +++ b/locale/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1991,1992,1995-2003,2005,2009,2011 +# Copyright (C) 1991,1992,1995-2003,2005,2009,2011,2012 # Free Software Foundation, Inc. # This file is part of the GNU C Library. @@ -22,19 +22,6 @@ subdir := locale headers = locale.h bits/locale.h langinfo.h xlocale.h -distribute = localeinfo.h categories.def iso-639.def iso-3166.def \ - iso-4217.def weight.h weightwc.h strlen-hash.h elem-hash.h \ - indigits.h indigitswc.h outdigits.h outdigitswc.h \ - coll-lookup.h C-translit.h.in C-translit.h gen-translit.pl \ - locarchive.h hashval.h \ - $(addprefix programs/, \ - locale.c localedef.c \ - $(localedef-modules:=.c) $(locale-modules:=.c) \ - $(lib-modules:=.c) config.h simple-hash.h \ - charmap-kw.gperf charmap-kw.h locfile-token.h \ - locfile-kw.gperf locfile-kw.h linereader.h \ - locfile.h charmap.h repertoire.h localedef.h \ - 3level.h charmap-dir.h locarchive.c) routines = setlocale findlocale loadlocale loadarchive \ localeconv nl_langinfo nl_langinfo_l mb_cur_max \ newlocale duplocale freelocale uselocale diff --git a/localedata/ChangeLog b/localedata/ChangeLog index ff5851fcdc..c5afba1b09 100644 --- a/localedata/ChangeLog +++ b/localedata/ChangeLog @@ -1,3 +1,7 @@ +2012-03-07 Ulrich Drepper + + * Makefile (distribute): Remove variable. + 2012-02-10 Joseph Myers Revert changes to locales from previous commit. diff --git a/localedata/Makefile b/localedata/Makefile index 6b48c874f1..13189607c6 100644 --- a/localedata/Makefile +++ b/localedata/Makefile @@ -1,4 +1,5 @@ -# Copyright (C) 1996-2003,2005,2007,2008,2009,2011 Free Software Foundation, Inc. +# Copyright (C) 1996-2003,2005,2007-2009,2011,2012 +# Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -56,19 +57,6 @@ generated := $(test-input) $(test-output) sort-test.out tst-locale.out \ generated-dirs := $(ld-test-names) tt_TT de_DE.437 \ $(addprefix tstfmon_,$(fmon-tests)) \ -distribute := CHECKSUMS README SUPPORTED ChangeLog \ - $(charmaps) $(locales) \ - tst-rpmatch.sh tst-locale.sh tst-fmon.sh sort-test.sh \ - tst-fmon.data $(test-input-data) $(ld-test-srcs) \ - th_TH.in cs_CZ.in tst-mbswcs.sh tst-trans.sh tst-ctype.sh \ - tst-ctype-de_DE.ISO-8859-1.in \ - tst-numeric.sh tst-numeric.data \ - $(wildcard tests-mbwc/*.[ch]) \ - $(addprefix tst-fmon-locales/tstfmon_,$(fmon-tests)) \ - gen-locale.sh show-ucs-data.c tst-langinfo.sh \ - tst-wctype.sh tst-wctype.input gen-unicode-ctype.c \ - dump-ctype.c - # Get $(inst_i18ndir) defined. include ../Makeconfig diff --git a/login/Makefile b/login/Makefile index 305d334d8a..f28f007e6f 100644 --- a/login/Makefile +++ b/login/Makefile @@ -1,4 +1,5 @@ -# Copyright (C) 1996-1998,2000-2003,2007, 2009 Free Software Foundation, Inc. +# Copyright (C) 1996-1998,2000-2003,2007,2009,2012 +# Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -32,8 +33,6 @@ others = utmpdump pt_chown others-pie = pt_chown install-others-programs = $(inst_libexecdir)/pt_chown -distribute := utmp-private.h utmp-equal.h pty-private.h - subdir-dirs = programs vpath %.c programs diff --git a/mach/Makefile b/mach/Makefile index ec33fa72d4..00de7a505e 100644 --- a/mach/Makefile +++ b/mach/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1991,92,93,94,95,96,97,98,2001,02 +# Copyright (C) 1991,92,93,94,95,96,97,98,2001,02,12 # Free Software Foundation, Inc. # This file is part of the GNU C Library. @@ -27,7 +27,6 @@ include ../Makeconfig headers = mach_init.h mach.h mach_error.h mach-shortcuts.h mach/mach_traps.h \ $(interface-headers) mach/mach.h mach/mig_support.h mach/error.h \ $(lock-headers) machine-sp.h -distribute = thread_state.h lock = spin-solid spin-lock mutex-init mutex-solid lock-headers = lock-intern.h machine-lock.h spin-lock.h routines = $(mach-syscalls) $(mach-shortcuts) \ @@ -52,17 +51,11 @@ mach/memory_object_user.defs = mach/memory_object.defs user-interfaces := $(addprefix mach/,$(mach-interface-list) \ mach_port mach_host exc \ - )\ + )\ $(addprefix device/,device device_request) server-interfaces := mach/exc -# It is important that we do not use the wildcard function to expand -# `err_*.sub'. Leaving the wildcard allows Make-dist to find all matching -# files in all sysdep directories. -distribute += Machrules syscalls.awk shortcut.awk \ - errorlib.h err_*.sub errsystems.awk - # Clear any environment value. generated = diff --git a/malloc/Makefile b/malloc/Makefile index 17421062f3..5d6d716a78 100644 --- a/malloc/Makefile +++ b/malloc/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1991-1999, 2000, 2001, 2002, 2003, 2005, 2006, 2007, 2009, 2011 +# Copyright (C) 1991-2003, 2005, 2006, 2007, 2009, 2011, 2012 # Free Software Foundation, Inc. # This file is part of the GNU C Library. @@ -29,14 +29,7 @@ tests := mallocbug tst-malloc tst-valloc tst-calloc tst-obstack \ tst-mallocstate tst-mcheck tst-mallocfork tst-trim1 test-srcs = tst-mtrace -distribute = thread-m.h mtrace.pl mcheck-init.c stackinfo.h memusage.h \ - memusage.sh memusagestat.c tst-mtrace.sh arena.c hooks.c - -# Things which get pasted together into gmalloc.c. -gmalloc-routines := malloc morecore -# Things to include in the standalone distribution. -dist-routines = $(gmalloc-routines) mcheck mtrace -routines = $(dist-routines) obstack +routines = malloc morecore mcheck mtrace obstack install-lib := libmcheck.a non-lib.a := libmcheck.a diff --git a/manual/Makefile b/manual/Makefile index e291509a3a..daddd29059 100644 --- a/manual/Makefile +++ b/manual/Makefile @@ -145,17 +145,8 @@ minimal-dist = summary.awk texis.awk tsort.awk libc-texinfo.sh libc.texinfo \ $(filter-out summary.texi, $(nonexamples)) \ $(patsubst %.c.texi,examples/%.c, $(examples)) -doc-only-dist = Makefile COPYING.LIB -distribute = $(minimal-dist) $(examples) stdio-fp.c \ - libc.info* libc.?? libc.??s texinfo.tex \ - xtract-typefun.awk dir-add.texi dir libm-err-tab.pl -export distribute := $(distribute) - tar-it = tar chovf $@ $^ -manual.tar: $(doc-only-dist) $(minimal-dist) ; $(tar-it) -mandist.tar: $(doc-only-dist) $(distribute) ; $(tar-it) - edition := $(shell sed -n 's/^@set EDITION \([0-9][0-9.]*\)[^0-9.]*.*$$/\1/p' \ libc.texinfo) diff --git a/math/Makefile b/math/Makefile index 6a6688dd0f..3a671aac71 100644 --- a/math/Makefile +++ b/math/Makefile @@ -26,9 +26,6 @@ headers := math.h bits/mathcalls.h bits/mathinline.h bits/huge_val.h \ bits/fenv.h bits/fenvinline.h bits/mathdef.h tgmath.h \ bits/math-finite.h -# Internal header files. -distribute := math_ldbl.h math_private.h machine/asm.h - # FPU support code. aux := setfpucw fpu_control @@ -84,7 +81,6 @@ calls = s_isinf s_isnan s_finite s_copysign s_modf s_scalbn s_frexp s_ldexp \ generated += $(foreach s,.c .S l.c l.S f.c f.S,$(calls:s_%=m_%$s)) routines = $(calls) $(calls:=f) $(long-c-$(long-double-fcts)) long-c-yes = $(calls:=l) -distribute += $(filter-out $(generated),$(long-m-yes:=.c) $(long-c-yes:=.c)) # Rules for the test suite. tests = test-matherr test-fenv atest-exp atest-sincos atest-exp2 basic-test \ @@ -94,7 +90,6 @@ tests = test-matherr test-fenv atest-exp atest-sincos atest-exp2 basic-test \ # We do the `long double' tests only if this data type is available and # distinct from `double'. test-longdouble-yes = test-ldouble test-ildoubl -distribute += $(test-longdouble-yes:=.c) ifneq (no,$(PERL)) libm-tests = test-float test-double $(test-longdouble-$(long-double-fcts)) \ @@ -139,15 +134,12 @@ CPPFLAGS-test-idouble.c = -U__LIBC_INTERNAL_MATH_INLINES -D__FAST_MATH__ \ CPPFLAGS-test-ildoubl.c = -U__LIBC_INTERNAL_MATH_INLINES -D__FAST_MATH__ \ -DTEST_FAST_MATH -fno-builtin -distribute += libm-test.inc gen-libm-test.pl README.libm-test - # The -lieee module sets the _LIB_VERSION_ switch to IEEE mode # for error handling in the -lm functions. install-lib += libieee.a non-lib.a += libieee.a extra-objs += libieee.a ieee-math.o -distribute += ieee-math.c include ../Rules diff --git a/misc/Makefile b/misc/Makefile index 169f2fd7d1..f42347ab9d 100644 --- a/misc/Makefile +++ b/misc/Makefile @@ -66,8 +66,6 @@ routines := brk sbrk sstk ioctl \ listxattr lgetxattr llistxattr lremovexattr lsetxattr \ removexattr setxattr -distribute := device-nrs.h - generated := tst-error1.mtrace tst-error1-mem include ../Makeconfig diff --git a/nis/Makefile b/nis/Makefile index 3a187cac68..a48753f7a9 100644 --- a/nis/Makefile +++ b/nis/Makefile @@ -1,4 +1,5 @@ -# Copyright (C) 1996-1998,2001,2004,2006,2011 Free Software Foundation, Inc. +# Copyright (C) 1996-1998,2001,2004,2006,2011,2012 +# Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -22,10 +23,6 @@ subdir := nis aux := nis_hash -distribute := nss-nis.h nss-nisplus.h nis_intern.h Banner \ - nisplus-parser.h nis_xdr.h nss \ - $(wildcard rpcsvc/*.[hx]) - # These are the databases available for the nis (and perhaps later nisplus) # service. This must be a superset of the services in nss. databases = proto service hosts network grp pwd rpc ethers \ diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 73394b9ed6..eb2e38daf9 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,7 @@ +2012-03-07 Ulrich Drepper + + * Makefile (distribute): Remove variable. + 2012-01-23 Thomas Schwinge * sysdeps/unix/sysv/linux/sem_timedwait.c (sem_timedwait): Get rid of diff --git a/nptl/Makefile b/nptl/Makefile index c39230d818..52277dd843 100644 --- a/nptl/Makefile +++ b/nptl/Makefile @@ -268,8 +268,6 @@ tests-nolibpthread = tst-unload # of the page size since every architecture's page size is > 1k. tst-oddstacklimit-ENV = ; ulimit -s 1023; -distribute = eintr.c tst-cleanup4aux.c - gen-as-const-headers = pthread-errnos.sym LDFLAGS-pthread.so = -Wl,--enable-new-dtags,-z,nodelete,-z,initfirst diff --git a/nptl_db/ChangeLog b/nptl_db/ChangeLog index 81ebfcdfc3..fe1778ee95 100644 --- a/nptl_db/ChangeLog +++ b/nptl_db/ChangeLog @@ -1,3 +1,7 @@ +2012-03-07 Ulrich Drepper + + * Makefile (distribute): Remove variable. + 2011-09-15 Andreas Schwab * thread_dbP.h: Include diff --git a/nptl_db/Makefile b/nptl_db/Makefile index eb3c7e89f0..d15fb9e818 100644 --- a/nptl_db/Makefile +++ b/nptl_db/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 2002,2003,2009 Free Software Foundation, Inc. +# Copyright (C) 2002,2003,2009,2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -49,8 +49,6 @@ libthread_db-inhibit-o = $(filter-out .os,$(object-suffixes)) # The ps_* callback functions are not defined. libthread_db.so-no-z-defs = yes -distribute = thread_dbP.h shlib-versions proc_service.h \ - db_info.c structs.def db-symbols.h db-symbols.awk include ../Rules # Depend on libc.so so a DT_NEEDED is generated in the shared objects. diff --git a/nscd/Makefile b/nscd/Makefile index f6965dd9c6..9503f53908 100644 --- a/nscd/Makefile +++ b/nscd/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1998,2000,2002-2009,2011 Free Software Foundation, Inc. +# Copyright (C) 1998,2000,2002-2009,2011,2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -74,10 +74,6 @@ endif LDLIBS-nscd = $(selinux-LIBS) -distribute := nscd.h nscd-client.h dbg_log.h \ - $(addsuffix .c, $(filter-out xmalloc,$(all-nscd-modules))) \ - nscd.conf nscd.init nscd_proto.h nscd-types.h - include ../Rules CFLAGS-nscd_getpw_r.c = -fexceptions diff --git a/nss/Makefile b/nss/Makefile index 65c094d689..13accaa01d 100644 --- a/nss/Makefile +++ b/nss/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1996-1998,2000-2002,2007,2009,2010,2011 +# Copyright (C) 1996-1998,2000-2002,2007,2009,2010,2011,2012 # Free Software Foundation, Inc. # This file is part of the GNU C Library. @@ -22,9 +22,6 @@ subdir := nss headers := nss.h -distribute := nsswitch.h XXX-lookup.c getXXbyYY.c getXXbyYY_r.c \ - getXXent.c getXXent_r.c databases.def \ - nsswitch.conf digits_dots.c function.def # This is the trivial part which goes into libc itself. routines = nsswitch getnssent getnssent_r digits_dots \ @@ -66,7 +63,6 @@ vpath %.c $(subdir-dirs) ../locale/programs ../intl libnss_files-routines := $(addprefix files-,$(databases)) \ files-initgroups files-have_o_cloexec files-init -distribute += files-XXX.c files-parse.c libnss_db-dbs := $(addprefix db-,\ $(filter-out hosts network key alias,\ @@ -75,7 +71,6 @@ libnss_db-dbs := $(addprefix db-,\ libnss_db-routines := $(libnss_db-dbs) db-open db-init hash-string generated += $(filter-out db-alias.c db-netgrp.c, \ $(addsuffix .c,$(libnss_db-dbs))) -distribute += $(addprefix nss_db/, db-XXX.c nss_db.h) install-others += $(inst_vardbdir)/Makefile @@ -118,8 +113,6 @@ $(objpfx)makedb: $(makedb-modules:%=$(objpfx)%.o) $(inst_vardbdir)/Makefile: db-Makefile $(+force) $(do-install) -distribute += nss_test1.c - CFLAGS-nss_test1.c = -DNOT_IN_libc=1 $(objpfx)/libnss_test1.so: $(objpfx)nss_test1.os $(common-objpfx)libc.so \ $(common-objpfx)libc_nonshared.a diff --git a/po/Makefile b/po/Makefile index 7f523eeb36..4ca0d1c4d1 100644 --- a/po/Makefile +++ b/po/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1996-1999,2001,2002,2006,2007,2009,2011 +# Copyright (C) 1996-1999,2001,2002,2006,2007,2009,2011,2012 # Free Software Foundation, Inc. # This file is part of the GNU C Library. @@ -47,10 +47,6 @@ mo-installed = $(inst_msgcatdir)/%/LC_MESSAGES/$(domainname).mo # Files to install: a $(domainname).mo file for each language. install-others = $(LINGUAS:%=$(mo-installed)) -# Files to distribute: all the source and compiled binary translation files. -distribute = $(ALL_LINGUAS:=.po) $(BROKEN_LINGUAS:=.po) $(ALL_LINGUAS:=.mo) \ - libc.pot header.pot - include ../Rules diff --git a/posix/Makefile b/posix/Makefile index 565861f7dd..da6a325a97 100644 --- a/posix/Makefile +++ b/posix/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1991-2007, 2009, 2010, 2011 Free Software Foundation, Inc. +# Copyright (C) 1991-2007,2009,2010,2011,2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -29,13 +29,6 @@ headers := sys/utsname.h sys/times.h sys/wait.h sys/types.h unistd.h \ bits/sched.h re_comp.h wait.h bits/environments.h cpio.h \ sys/sysmacros.h spawn.h bits/unistd.h -distribute := confstr.h TESTS TESTS2C.sed testcases.h \ - PTESTS PTESTS2C.sed ptestcases.h \ - globtest.c globtest.sh wordexp-tst.sh annexc.c fnmatch_loop.c \ - spawn_int.h tst-getconf.sh regcomp.c regexec.c regex_internal.c \ - regex_internal.h fork.h rxspencer/tests rxspencer/COPYRIGHT \ - PCRE.tests BOOST.tests - routines := \ uname \ times \ diff --git a/resolv/Makefile b/resolv/Makefile index 1c7b491cf4..d87119385b 100644 --- a/resolv/Makefile +++ b/resolv/Makefile @@ -25,8 +25,6 @@ headers := resolv.h \ netdb.h bits/netdb.h \ arpa/nameser.h arpa/nameser_compat.h \ sys/bitypes.h -distribute := ../conf/portability.h mapv4v6addr.h mapv4v6hostent.h \ - Banner res_hconf.h res_debug.h README gai_misc.h ga_test.c routines := herror inet_addr inet_ntop inet_pton nsap_addr res_init \ res_hconf res_libc res-state diff --git a/rt/Makefile b/rt/Makefile index 14a2df3903..651d007aa4 100644 --- a/rt/Makefile +++ b/rt/Makefile @@ -53,8 +53,6 @@ tests := tst-shm tst-clock tst-clock_nanosleep tst-timer tst-timer2 \ extra-libs := librt extra-libs-others := $(extra-libs) -distribute := aio_misc.h - include ../Rules CFLAGS-aio_suspend.c = -fexceptions diff --git a/signal/Makefile b/signal/Makefile index 4cf886cd71..9da8599847 100644 --- a/signal/Makefile +++ b/signal/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1991-1998,2003,2006 Free Software Foundation, Inc. +# Copyright (C) 1991-1998,2003,2006,2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -38,8 +38,6 @@ routines := signal raise killpg \ tests := tst-signal tst-sigset tst-sigsimple tst-raise tst-sigset2 -distribute := sigsetops.h testrtsig.h sigset-cvt-mask.h - include ../Rules diff --git a/socket/Makefile b/socket/Makefile index b5be39a672..e3a90b8a31 100644 --- a/socket/Makefile +++ b/socket/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1991,1995-2001,2005,2008 Free Software Foundation, Inc. +# Copyright (C) 1991,1995-2001,2005,2008,2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -30,6 +30,4 @@ routines := accept bind connect getpeername getsockname getsockopt \ aux := have_sock_cloexec -distribute := ifreq.h - include ../Rules diff --git a/soft-fp/Makefile b/soft-fp/Makefile index 11464dfac4..88ee6c5cb3 100644 --- a/soft-fp/Makefile +++ b/soft-fp/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. +# Copyright (C) 1997, 1999, 2000, 2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # @@ -35,10 +35,4 @@ gcc-quad-routines := negtf2 addtf3 subtf3 multf3 divtf3 eqtf2 \ fixunstfdi floatditf extendsftf2 trunctfsf2 extenddftf2 \ trunctfdf2 sqrttf2 floatunsitf floatunditf -distribute := double.h op-1.h op-2.h op-4.h op-common.h quad.h \ - single.h soft-fp.h extended.h Banner op-8.h testit.c \ - $(addsuffix .c,$(gcc-single-routines)) \ - $(addsuffix .c,$(gcc-double-routines)) \ - $(addsuffix .c,$(gcc-quad-routines)) - include ../Rules diff --git a/stdio-common/Makefile b/stdio-common/Makefile index 831fafefb9..c8a136539a 100644 --- a/stdio-common/Makefile +++ b/stdio-common/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1991-2009, 2011 Free Software Foundation, Inc. +# Copyright (C) 1991-2009, 2011, 2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -44,8 +44,6 @@ install-others = $(inst_includedir)/bits/stdio_lim.h include ../Makeconfig aux := errlist siglist printf-parsemb printf-parsewc fxprintf -distribute := _itoa.h _itowa.h _i18n_number.h \ - printf-parse.h stdio_lim.h.in tst-unbputc.sh tst-printf.sh tests := tstscanf test_rdwr test-popen tstgetln test-fseek \ temptest tst-fileno test-fwrite tst-ungetc tst-ferror \ diff --git a/stdlib/Makefile b/stdlib/Makefile index efdf8731da..44eb20d681 100644 --- a/stdlib/Makefile +++ b/stdlib/Makefile @@ -59,8 +59,6 @@ aux = grouping groupingwc tens_in_limb # linked against when the shared library will be used. static-only-routines = atexit at_quick_exit -distribute := exit.h grouping.h abort-instr.h isomac.c tst-fmtmsg.sh \ - allocalim.h test-srcs := tst-fmtmsg tests := tst-strtol tst-strtod testmb testrand testsort testdiv \ test-canon test-canon2 tst-strtoll tst-environ \ @@ -87,7 +85,6 @@ routines := $(strip $(routines) $(mpn-routines)) \ dbl2mpn ldbl2mpn \ mpn2flt mpn2dbl mpn2ldbl aux += fpioconst mp_clz_tab -distribute := $(distribute) $(mpn-headers) fpioconst.h tst-putenvmod.c tests-extras += tst-putenvmod extra-test-objs += tst-putenvmod.os diff --git a/string/Makefile b/string/Makefile index a402602099..0e42d31dee 100644 --- a/string/Makefile +++ b/string/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1991-2002, 2005-2010, 2011 Free Software Foundation, Inc. +# Copyright (C) 1991-2002, 2005-2011, 2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -57,8 +57,6 @@ tests := tester inl-tester noinl-tester testcopy test-ffs \ bug-strtok1 $(addprefix test-,$(strop-tests)) \ bug-envz1 tst-strxfrm2 tst-endian tst-svc2 \ bug-strstr1 bug-strchr1 -distribute := memcopy.h pagecopy.h tst-svc.expect test-string.h \ - str-two-way.h include ../Rules diff --git a/sunrpc/Makefile b/sunrpc/Makefile index b7f63a50b2..329d3f3d35 100644 --- a/sunrpc/Makefile +++ b/sunrpc/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1994-2004, 2005, 2006, 2011 Free Software Foundation, Inc. +# Copyright (C) 1994-2006, 2011, 2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -85,11 +85,6 @@ install-bin := rpcgen rpcgen-objs = rpc_main.o rpc_hout.o rpc_cout.o rpc_parse.o \ rpc_scan.o rpc_util.o rpc_svcout.o rpc_clntout.o \ rpc_tblout.o rpc_sample.o -# These headers are part of rpcgen. -distribute := proto.h rpc_util.h rpc_parse.h rpc_scan.h \ - $(headers-in-tirpc) $(headers-not-in-tirpc) \ - $(rpcgen-objs:.o=.c) etc.rpc \ - errqueue.h extra-objs = $(rpcgen-objs) all: # Make this the default target; it will be defined in Rules. @@ -100,7 +95,6 @@ xtests := tst-getmyaddr ifeq ($(have-thread-library),yes) xtests += thrsvc endif -distribute += thrsvc.c ifeq (yes,$(build-static-nss)) otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \ diff --git a/time/Makefile b/time/Makefile index 49ea729e35..ffa3e881ef 100644 --- a/time/Makefile +++ b/time/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1991-2003, 2004, 2005, 2007, 2011 Free Software Foundation, Inc. +# Copyright (C) 1991-2005,2007,2011,2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -31,7 +31,6 @@ routines := offtime asctime clock ctime ctime_r difftime \ strftime wcsftime strftime_l wcsftime_l \ timespec_get aux := era alt_digit lc-time-cleanup -distribute := datemsk tests := test_time clocktest tst-posixtz tst-strptime tst_wcsftime \ tst-getdate tst-mktime tst-mktime2 tst-ftime_l tst-strftime \ diff --git a/timezone/Makefile b/timezone/Makefile index d5ea538991..00bfba6e23 100644 --- a/timezone/Makefile +++ b/timezone/Makefile @@ -20,23 +20,18 @@ # subdir := timezone -distribute := tzfile.h private.h scheck.c ialloc.c yearistype \ - iso3166.tab zone.tab tzselect.ksh checktab.awk \ - README - extra-objs := scheck.o ialloc.o others := zdump zic tests := test-tz tst-timezone +# pacificnew doesn't compile; if it is to be used, it should be included in +# northamerica. tzbases := africa antarctica asia australasia europe northamerica \ southamerica etcetera factory \ solar87 solar88 solar89 tzlinks := backward systemv tzfiles := $(tzbases) $(tzlinks) -# pacificnew doesn't compile; if it is to be used, it should be included in -# northamerica. -distribute += $(tzfiles) leapseconds pacificnew simplebackw generated := $(addprefix z.,$(tzfiles)) install-sbin := zic zdump diff --git a/wcsmbs/Makefile b/wcsmbs/Makefile index 46d4c5f478..fc67be8f82 100644 --- a/wcsmbs/Makefile +++ b/wcsmbs/Makefile @@ -22,7 +22,6 @@ subdir := wcsmbs headers := wchar.h bits/wchar.h bits/wchar2.h bits/wchar-ldbl.h uchar.h -distribute := wcwidth.h wcsmbsload.h routines := wcscat wcschr wcscmp wcscpy wcscspn wcsdup wcslen wcsncat \ wcsncmp wcsncpy wcspbrk wcsrchr wcsspn wcstok wcsstr wmemchr \ diff --git a/wctype/Makefile b/wctype/Makefile index e54e6efe56..6a06f001fe 100644 --- a/wctype/Makefile +++ b/wctype/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1996, 1997, 1999, 2000, 2008 Free Software Foundation, Inc. +# Copyright (C) 1996,1997,1999,2000,2008,2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -21,7 +21,6 @@ subdir := wctype headers := wctype.h -distribute := wchar-lookup.h routines := wcfuncs wctype iswctype wctrans towctrans \ wcfuncs_l wctype_l iswctype_l wctrans_l towctrans_l -- cgit 1.4.1 From 872fda052d516f3c5a43182c469391b38e62fcc0 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 7 Mar 2012 05:35:30 -0500 Subject: Update traditional Chinese translation --- ChangeLog | 2 + po/zh_TW.po | 9737 ++++++++++++++++++++++++++++++++--------------------------- 2 files changed, 5350 insertions(+), 4389 deletions(-) diff --git a/ChangeLog b/ChangeLog index b3dbb5d63b..4f00552a4d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,7 @@ 2012-03-07 Ulrich Drepper + * po/zh_TW.po: Update from translation team. + * login/Makefile (distribute): Remove variable. * catgets/Makefile: Likewise. * mach/Makefile: Likewise. diff --git a/po/zh_TW.po b/po/zh_TW.po index 6ccffec2bc..63f0707f7a 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -1,3746 +1,4610 @@ -# Traditional Chinese Messages for libc -# Copyright (C) 2000, 05 Free Software Foundation, Inc. -# Tung-Han Hsieh , 2000 -# Yuan-Chung Cheng , 2000 -# Wei-Lun Chao , 2005 +# Traditional Chinese Messages for libc. +# Copyright (C) 2011 Free Software Foundation, Inc. +# This file is distributed under the same license as the glibc package. +# Tung-Han Hsieh , 2000. +# Yuan-Chung Cheng , 2000. +# Wei-Lun Chao , 2005, 2008, 2011. +# Wei-Lun Chao , 2012. # msgid "" msgstr "" -"Project-Id-Version: libc 2.3.3\n" -"POT-Creation-Date: 2004-08-05 09:16+0200\n" -"PO-Revision-Date: 2005-07-26 11:27+0800\n" -"Last-Translator: Wei-Lun Chao \n" +"Project-Id-Version: libc 2.14\n" +"POT-Creation-Date: 2011-05-31 00:06-0400\n" +"PO-Revision-Date: 2012-02-09 18:09+0800\n" +"Last-Translator: Wei-Lun Chao \n" "Language-Team: Chinese (traditional) \n" +"Language: zh_TW\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: sysdeps/generic/siglist.h:29 stdio-common/../sysdeps/unix/siglist.c:27 -msgid "Hangup" -msgstr "掛斷" +#: argp/argp-help.c:228 +#, c-format +msgid "%.*s: ARGP_HELP_FMT parameter requires a value" +msgstr "%.*s: ARGP_HELP_FMT 參數需要一個值" -#: sysdeps/generic/siglist.h:30 stdio-common/../sysdeps/unix/siglist.c:28 -msgid "Interrupt" -msgstr "中斷" +#: argp/argp-help.c:238 +#, c-format +msgid "%.*s: Unknown ARGP_HELP_FMT parameter" +msgstr "%.*s: 未知的 ARGP_HELP_FMT 參數" -#: sysdeps/generic/siglist.h:31 stdio-common/../sysdeps/unix/siglist.c:29 -msgid "Quit" -msgstr "離開" +#: argp/argp-help.c:251 +#, c-format +msgid "Garbage in ARGP_HELP_FMT: %s" +msgstr "ARGP_HELP_FMT 中無用的資訊: %s" -#: sysdeps/generic/siglist.h:32 stdio-common/../sysdeps/unix/siglist.c:30 -msgid "Illegal instruction" -msgstr "不合法的命令" +#: argp/argp-help.c:1215 +msgid "Mandatory or optional arguments to long options are also mandatory or optional for any corresponding short options." +msgstr "長選項的必須或可選用的引數也是相對應短選項的必須或可選用的引數。" -#: sysdeps/generic/siglist.h:33 stdio-common/../sysdeps/unix/siglist.c:31 -msgid "Trace/breakpoint trap" -msgstr "追蹤與中斷點陷阱" +#: argp/argp-help.c:1601 +msgid "Usage:" +msgstr "使用方式:" -#: sysdeps/generic/siglist.h:34 -msgid "Aborted" -msgstr "已經終止" +#: argp/argp-help.c:1605 +msgid " or: " +msgstr " 或者: " -#: sysdeps/generic/siglist.h:35 stdio-common/../sysdeps/unix/siglist.c:34 -msgid "Floating point exception" -msgstr "浮點數出錯" +#: argp/argp-help.c:1617 +msgid " [OPTION...]" +msgstr " [參數...]" -#: sysdeps/generic/siglist.h:36 stdio-common/../sysdeps/unix/siglist.c:35 -msgid "Killed" -msgstr "已砍掉" +#: argp/argp-help.c:1644 +#, c-format +msgid "Try `%s --help' or `%s --usage' for more information.\n" +msgstr "請試著用 `%s --help' 或 `%s --usage' 來獲得更多相關訊息。\n" -#: sysdeps/generic/siglist.h:37 stdio-common/../sysdeps/unix/siglist.c:36 -msgid "Bus error" -msgstr "匯流排錯誤 (Bus error)" +#: argp/argp-help.c:1672 +#, c-format +msgid "Report bugs to %s.\n" +msgstr "請將程式問題回報至 %s。\n" -#: sysdeps/generic/siglist.h:38 stdio-common/../sysdeps/unix/siglist.c:37 -msgid "Segmentation fault" -msgstr "程式記憶體區段錯誤" +#: argp/argp-parse.c:102 +msgid "Give this help list" +msgstr "給出這個使用方式列表" -#. TRANS Broken pipe; there is no process reading from the other end of a pipe. -#. TRANS Every library function that returns this error code also generates a -#. TRANS @code{SIGPIPE} signal; this signal terminates the program if not handled -#. TRANS or blocked. Thus, your program will never actually see @code{EPIPE} -#. TRANS unless it has handled or blocked @code{SIGPIPE}. -#: sysdeps/generic/siglist.h:39 stdio-common/../sysdeps/gnu/errlist.c:351 -#: stdio-common/../sysdeps/unix/siglist.c:39 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:62 -msgid "Broken pipe" -msgstr "中斷的 pipe" +#: argp/argp-parse.c:103 +msgid "Give a short usage message" +msgstr "給出簡短的使用訊息" -#: sysdeps/generic/siglist.h:40 stdio-common/../sysdeps/unix/siglist.c:40 -msgid "Alarm clock" -msgstr "鬧鐘" +#: argp/argp-parse.c:104 +msgid "Set the program name" +msgstr "設定程式名稱" -#: sysdeps/generic/siglist.h:41 stdio-common/../sysdeps/unix/siglist.c:41 -msgid "Terminated" -msgstr "終止" +#: argp/argp-parse.c:106 +msgid "Hang for SECS seconds (default 3600)" +msgstr "SECS 秒後掛斷 (預設是 3600)" -#: sysdeps/generic/siglist.h:42 stdio-common/../sysdeps/unix/siglist.c:42 -msgid "Urgent I/O condition" -msgstr "緊急的輸出入狀態" +#: argp/argp-parse.c:167 +msgid "Print program version" +msgstr "印出程式版本" -#: sysdeps/generic/siglist.h:43 stdio-common/../sysdeps/unix/siglist.c:43 -msgid "Stopped (signal)" -msgstr "停止 (信號)" +#: argp/argp-parse.c:183 +msgid "(PROGRAM ERROR) No version known!?" +msgstr "(程式錯誤) 沒有認得的版本!?" -#: sysdeps/generic/siglist.h:44 stdio-common/../sysdeps/unix/siglist.c:44 -msgid "Stopped" -msgstr "停止" +#: argp/argp-parse.c:623 +#, c-format +msgid "%s: Too many arguments\n" +msgstr "%s: 太多的引數\n" -#: sysdeps/generic/siglist.h:45 stdio-common/../sysdeps/unix/siglist.c:45 -msgid "Continued" -msgstr "繼續" +#: argp/argp-parse.c:766 +msgid "(PROGRAM ERROR) Option should have been recognized!?" +msgstr "(程式錯誤) 選項應該已經可辨識!?" -#: sysdeps/generic/siglist.h:46 stdio-common/../sysdeps/unix/siglist.c:46 -msgid "Child exited" -msgstr "子行程結束" +#: assert/assert-perr.c:37 +#, c-format +msgid "%s%s%s:%u: %s%sUnexpected error: %s.\n" +msgstr "%s%s%s:%u: %s%s無法預料的錯誤: %s。\n" -#: sysdeps/generic/siglist.h:47 stdio-common/../sysdeps/unix/siglist.c:47 -msgid "Stopped (tty input)" -msgstr "停止 (tty 輸入)" +#: assert/assert.c:105 +#, c-format +msgid "" +"%s%s%s:%u: %s%sAssertion `%s' failed.\n" +"%n" +msgstr "" +"%s%s%s:%u:%s%s假設『%s』失敗。\n" +"%n" -#: sysdeps/generic/siglist.h:48 stdio-common/../sysdeps/unix/siglist.c:48 -msgid "Stopped (tty output)" -msgstr "停止 (tty 輸出)" +#: catgets/gencat.c:110 catgets/gencat.c:114 nscd/nscd.c:100 nss/makedb.c:61 +msgid "NAME" +msgstr "名稱" -#: sysdeps/generic/siglist.h:49 stdio-common/../sysdeps/unix/siglist.c:49 -msgid "I/O possible" -msgstr "I/O 可行" +#: catgets/gencat.c:111 +msgid "Create C header file NAME containing symbol definitions" +msgstr "產生的 C 標頭檔名內含符號定義" -#: sysdeps/generic/siglist.h:50 stdio-common/../sysdeps/unix/siglist.c:50 -msgid "CPU time limit exceeded" -msgstr "CPU 時間上限超過了" +#: catgets/gencat.c:113 +msgid "Do not use existing catalog, force new output file" +msgstr "不使用現存的 catalog, 強制使用新的輸出檔" -#: sysdeps/generic/siglist.h:51 stdio-common/../sysdeps/unix/siglist.c:51 -msgid "File size limit exceeded" -msgstr "檔案大小超過上限" +#: catgets/gencat.c:114 nss/makedb.c:61 +msgid "Write output to file NAME" +msgstr "將輸出寫到檔案 NAME 中" -#: sysdeps/generic/siglist.h:52 stdio-common/../sysdeps/unix/siglist.c:52 -msgid "Virtual timer expired" -msgstr "虛擬計時器已過時取消了" +#: catgets/gencat.c:119 +msgid "" +"Generate message catalog.\vIf INPUT-FILE is -, input is read from standard input. If OUTPUT-FILE\n" +"is -, output is written to standard output.\n" +msgstr "" +"產生訊息 catelog。\\v如果輸入檔名是 -, 將從標準輸入讀取輸入。\n" +"如果輸出檔名是 -, 則輸出將寫到標準輸出去。\n" -#: sysdeps/generic/siglist.h:53 stdio-common/../sysdeps/unix/siglist.c:53 -msgid "Profiling timer expired" -msgstr "測速評估用的計時器已過時取消了" +#: catgets/gencat.c:124 +msgid "" +"-o OUTPUT-FILE [INPUT-FILE]...\n" +"[OUTPUT-FILE [INPUT-FILE]...]" +msgstr "" +"-o 輸出檔案名稱 [輸入檔案名稱]...\n" +"[輸出檔案名稱 [輸入檔案名稱]...]" -#: sysdeps/generic/siglist.h:54 stdio-common/../sysdeps/unix/siglist.c:54 -msgid "Window changed" -msgstr "範圍改變了" +#: catgets/gencat.c:232 debug/pcprofiledump.c:208 debug/xtrace.sh:58 +#: elf/ldconfig.c:302 elf/ldd.bash.in:56 elf/sln.c:86 elf/sotruss.ksh:49 +#: elf/sprof.c:371 iconv/iconv_prog.c:408 iconv/iconvconfig.c:380 +#: locale/programs/locale.c:278 locale/programs/localedef.c:371 +#: login/programs/pt_chown.c:92 malloc/memusage.sh:65 +#: malloc/memusagestat.c:539 nscd/nscd.c:415 nss/getent.c:918 nss/makedb.c:231 +#: posix/getconf.c:1122 sunrpc/rpc_main.c:1492 sunrpc/rpcinfo.c:691 +#: sysdeps/unix/sysv/linux/lddlibc4.c:62 +msgid "" +"For bug reporting instructions, please see:\n" +".\n" +msgstr "" +"用於錯誤報告指令,請參看:\n" +"。\n" -#: sysdeps/generic/siglist.h:55 stdio-common/../sysdeps/unix/siglist.c:56 -msgid "User defined signal 1" -msgstr "使用者定義的訊號 1" +#: catgets/gencat.c:246 debug/pcprofiledump.c:222 debug/xtrace.sh:66 +#: elf/ldconfig.c:316 elf/ldd.bash.in:39 elf/sotruss.ksh:76 elf/sprof.c:386 +#: iconv/iconv_prog.c:423 iconv/iconvconfig.c:395 locale/programs/locale.c:293 +#: locale/programs/localedef.c:387 login/programs/pt_chown.c:63 +#: malloc/memusage.sh:73 malloc/memusagestat.c:557 nscd/nscd.c:429 +#: nss/getent.c:87 nss/makedb.c:245 posix/getconf.c:1104 +#: sysdeps/unix/sysv/linux/lddlibc4.c:69 +#, c-format +msgid "" +"Copyright (C) %s Free Software Foundation, Inc.\n" +"This is free software; see the source for copying conditions. There is NO\n" +"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" +msgstr "" +"版權所有 (C) %s 自由軟體基金會。\n" +"這是一個自由軟體;請見源始碼的授權條款。這沒有擔保;甚至也沒有專為銷\n" +"售或者適合某些特殊目的。\n" -#: sysdeps/generic/siglist.h:56 stdio-common/../sysdeps/unix/siglist.c:57 -msgid "User defined signal 2" -msgstr "使用者定義的訊號 2" +#: catgets/gencat.c:251 debug/pcprofiledump.c:227 debug/xtrace.sh:70 +#: elf/ldconfig.c:321 elf/sprof.c:392 iconv/iconv_prog.c:428 +#: iconv/iconvconfig.c:400 locale/programs/locale.c:298 +#: locale/programs/localedef.c:392 malloc/memusage.sh:77 +#: malloc/memusagestat.c:562 nscd/nscd.c:434 nss/getent.c:92 nss/makedb.c:250 +#: posix/getconf.c:1109 +#, c-format +msgid "Written by %s.\n" +msgstr "作者 %s。\n" -#: sysdeps/generic/siglist.h:60 stdio-common/../sysdeps/unix/siglist.c:33 -msgid "EMT trap" -msgstr "EMT 陷阱" +#: catgets/gencat.c:282 +msgid "*standard input*" +msgstr "*標準輸入*" -#: sysdeps/generic/siglist.h:63 stdio-common/../sysdeps/unix/siglist.c:38 -msgid "Bad system call" -msgstr "錯誤的系統呼叫" +#: catgets/gencat.c:288 iconv/iconv_charmap.c:170 iconv/iconv_prog.c:294 +#: nss/makedb.c:170 +#, c-format +msgid "cannot open input file `%s'" +msgstr "無法開啟輸入檔 `%s'" -#: sysdeps/generic/siglist.h:66 -msgid "Stack fault" -msgstr "堆疊錯誤" +#: catgets/gencat.c:417 catgets/gencat.c:494 +msgid "illegal set number" +msgstr "不合法的集合編號" -#: sysdeps/generic/siglist.h:69 -msgid "Information request" -msgstr "需要資料" +#: catgets/gencat.c:444 +msgid "duplicate set definition" +msgstr "複製集合定義" -#: sysdeps/generic/siglist.h:71 -msgid "Power failure" -msgstr "電源嚴重錯誤" +#: catgets/gencat.c:446 catgets/gencat.c:623 catgets/gencat.c:677 +msgid "this is the first definition" +msgstr "此為第一個定義" -#: sysdeps/generic/siglist.h:74 stdio-common/../sysdeps/unix/siglist.c:55 -msgid "Resource lost" -msgstr "資源漏失" +#: catgets/gencat.c:522 +#, c-format +msgid "unknown set `%s'" +msgstr "不明的集合 `%s'" -#: sysdeps/mach/hurd/mips/dl-machine.c:68 -#: string/../sysdeps/mach/_strerror.c:57 -msgid "Error in unknown error system: " -msgstr "未知問題系統錯誤: " +#: catgets/gencat.c:563 +msgid "invalid quote character" +msgstr "不適用的引用字元" -#: sysdeps/mach/hurd/mips/dl-machine.c:83 -#: string/../sysdeps/generic/_strerror.c:44 -#: string/../sysdeps/mach/_strerror.c:87 -msgid "Unknown error " -msgstr "未知的錯誤 " +#: catgets/gencat.c:576 +#, c-format +msgid "unknown directive `%s': line ignored" +msgstr "不明的指令 `%s': 此列忽略" + +#: catgets/gencat.c:621 +msgid "duplicated message number" +msgstr "重複的訊息編號" + +#: catgets/gencat.c:674 +msgid "duplicated message identifier" +msgstr "重複的訊息識別符號" + +#: catgets/gencat.c:731 +msgid "invalid character: message ignored" +msgstr "不適用的字元: 忽略此訊息" + +#: catgets/gencat.c:774 +msgid "invalid line" +msgstr "無效的輸入列" + +#: catgets/gencat.c:828 +msgid "malformed line ignored" +msgstr "忽略奇怪的列" -#: sysdeps/unix/sysv/linux/lddlibc4.c:64 +#: catgets/gencat.c:992 catgets/gencat.c:1033 nss/makedb.c:183 #, c-format -msgid "cannot open `%s'" -msgstr "無法開啟 `%s'" +msgid "cannot open output file `%s'" +msgstr "無法開啟輸出檔 `%s'" + +#: catgets/gencat.c:1195 locale/programs/linereader.c:560 +msgid "invalid escape sequence" +msgstr "無效的跳脫序列" + +#: catgets/gencat.c:1217 +msgid "unterminated message" +msgstr "沒有結尾的訊息" -#: sysdeps/unix/sysv/linux/lddlibc4.c:68 +#: catgets/gencat.c:1241 #, c-format -msgid "cannot read header from `%s'" -msgstr "無法從 `%s' 讀取標頭資料" +msgid "while opening old catalog file" +msgstr "在開啟舊的類別檔案時" -#: iconv/iconv_charmap.c:159 iconv/iconv_prog.c:295 catgets/gencat.c:288 +#: catgets/gencat.c:1332 #, c-format -msgid "cannot open input file `%s'" -msgstr "無法開啟輸入檔 `%s'" +msgid "conversion modules not available" +msgstr "轉換模組不存在" -#: iconv/iconv_charmap.c:177 iconv/iconv_prog.c:313 +#: catgets/gencat.c:1358 #, c-format -msgid "error while closing input `%s'" -msgstr "正在關閉輸入 `%s' 的時候發生錯誤" +msgid "cannot determine escape character" +msgstr "無法決定跳脫字元" + +#: debug/pcprofiledump.c:53 +msgid "Don't buffer output" +msgstr "不要將輸入存入緩衝區" + +#: debug/pcprofiledump.c:58 +msgid "Dump information generated by PC profiling." +msgstr "將產生於 PC 測速評估的資料傾卸出來" + +#: debug/pcprofiledump.c:61 +msgid "[FILE]" +msgstr "[檔案]" -#: iconv/iconv_charmap.c:443 +#: debug/pcprofiledump.c:108 #, c-format -msgid "illegal input sequence at position %Zd" -msgstr "位置 %Zd 有不合法的輸入序列" +msgid "cannot open input file" +msgstr "無法開啟輸入檔" -#: iconv/iconv_charmap.c:462 iconv/iconv_prog.c:506 -msgid "incomplete character or shift sequence at end of buffer" -msgstr "緩衝區結尾有不完全的字元或 shift sequence" +#: debug/pcprofiledump.c:115 +#, c-format +msgid "cannot read header" +msgstr "無法讀取標頭資料" -#: iconv/iconv_charmap.c:507 iconv/iconv_charmap.c:543 iconv/iconv_prog.c:549 -#: iconv/iconv_prog.c:585 -msgid "error while reading the input" -msgstr "正在讀入資料的時候發生錯誤" +#: debug/pcprofiledump.c:179 +#, c-format +msgid "invalid pointer size" +msgstr "無效的指標大小" -#: iconv/iconv_charmap.c:525 iconv/iconv_prog.c:567 -msgid "unable to allocate buffer for input" -msgstr "無法配置輸入用的緩衝區" +#: debug/xtrace.sh:27 debug/xtrace.sh:45 +msgid "Usage: xtrace [OPTION]... PROGRAM [PROGRAMOPTION]...\\n" +msgstr "用法:xtrace [選項]… 程式 [PROGRAMOPTION]…\\n" -#: iconv/iconv_prog.c:61 -msgid "Input/Output format specification:" -msgstr "輸入/輸出格式設定:" +#: debug/xtrace.sh:33 malloc/memusage.sh:27 +msgid "Try \\`%s --help' or `%s --usage' for more information.\\n" +msgstr "請嘗試 \\『%s --help』或『%s --usage』以獲得更多資訊。\\n" -#: iconv/iconv_prog.c:62 -msgid "encoding of original text" -msgstr "原始文字的編碼" +#: debug/xtrace.sh:39 +msgid "%s: option '%s' requires an argument.\\n" +msgstr "%s:選項『%s』需要一個引數.\\n" -#: iconv/iconv_prog.c:63 -msgid "encoding for output" -msgstr "用來輸出的編碼" +#: debug/xtrace.sh:46 +msgid "" +"Trace execution of program by printing currently executed function.\n" +"\n" +" --data=FILE Don't run the program, just print the data from FILE.\n" +"\n" +" -?,--help Print this help and exit\n" +" --usage Give a short usage message\n" +" -V,--version Print version information and exit\n" +"\n" +"Mandatory arguments to long options are also mandatory for any corresponding\n" +"short options.\n" +"\n" +msgstr "" +"經由列印目前執行的函式來追蹤程式的執行。\n" +"\n" +" --data=檔案 無法運行程式,僅從檔案印出資料。\n" +"\n" +" -?,--help 列印這份說明然後離開\n" +" --usage 給出簡短用法訊息\n" +" -V,--version 印出版本資訊然後離開\n" +"\n" +"對於長選項必要的引數同樣必要於任何相應的\n" +"短選項。\n" +"\n" -#: iconv/iconv_prog.c:64 -msgid "Information:" -msgstr "資料:" +#: debug/xtrace.sh:127 +msgid "xtrace: unrecognized option \\`$1'\\n" +msgstr "xtrace:無法辨識的選項「$1」\\n" -#: iconv/iconv_prog.c:65 -msgid "list all known coded character sets" -msgstr "列出所有已知的編碼字元集" +#: debug/xtrace.sh:140 +msgid "No program name given\\n" +msgstr "未給定程式名稱\\n" -#: iconv/iconv_prog.c:66 locale/programs/localedef.c:128 -msgid "Output control:" -msgstr "輸出控制:" +#: debug/xtrace.sh:148 +#, sh-format +msgid "executable \\`$program' not found\\n" +msgstr "可執行檔案「$program」找不到\\n" -#: iconv/iconv_prog.c:67 -msgid "omit invalid characters from output" -msgstr "省略無效字元的輸出" +#: debug/xtrace.sh:152 +#, sh-format +msgid "\\`$program' is no executable\\n" +msgstr "「$program」不是可執行檔案\\n" -#: iconv/iconv_prog.c:68 -msgid "output file" -msgstr "輸出檔案" +#: dlfcn/dlinfo.c:64 +msgid "RTLD_SELF used in code not dynamically loaded" +msgstr "程式碼所使用的 RTLD_SELF 沒有動態載入" -#: iconv/iconv_prog.c:69 -msgid "suppress warnings" -msgstr "停止輸出警告訊息" +#: dlfcn/dlinfo.c:73 +msgid "unsupported dlinfo request" +msgstr "未支援的 dlinfo 請求" -#: iconv/iconv_prog.c:70 -msgid "print progress information" -msgstr "印出程序相關資訊" +#: dlfcn/dlmopen.c:64 +msgid "invalid namespace" +msgstr "無效的命名空間" -#: iconv/iconv_prog.c:75 -msgid "Convert encoding of given files from one encoding to another." -msgstr "從給定的檔案的字元編碼轉換到另一個" +#: dlfcn/dlmopen.c:69 +msgid "invalid mode" +msgstr "無效的模式" -#: iconv/iconv_prog.c:79 -msgid "[FILE...]" -msgstr "[FILE...]" +#: dlfcn/dlopen.c:65 +msgid "invalid mode parameter" +msgstr "無效的模式參數" -#: iconv/iconv_prog.c:201 -msgid "cannot open output file" -msgstr "無法開啟輸出檔" +#: elf/cache.c:69 +msgid "unknown" +msgstr "未知" + +#: elf/cache.c:112 +msgid "Unknown OS" +msgstr "未知的作業系統" -#: iconv/iconv_prog.c:243 +#: elf/cache.c:117 #, c-format -msgid "conversions from `%s' and to `%s' are not supported" -msgstr "不支援從 `%s' 以及到 `%s' 的轉換" +msgid ", OS ABI: %s %d.%d.%d" +msgstr ", OS ABI: %s %d.%d.%d" -#: iconv/iconv_prog.c:248 +#: elf/cache.c:134 elf/ldconfig.c:1305 #, c-format -msgid "conversion from `%s' is not supported" -msgstr "不支援從 `%s' 的轉換" +msgid "Can't open cache file %s\n" +msgstr "無法開啟快取檔 %s\n" -#: iconv/iconv_prog.c:255 +#: elf/cache.c:148 #, c-format -msgid "conversion to `%s' is not supported" -msgstr "不支援到 `%s' 的轉換" +msgid "mmap of cache file failed.\n" +msgstr "快取檔案 mmap 失敗。\n" -#: iconv/iconv_prog.c:259 +#: elf/cache.c:152 elf/cache.c:166 #, c-format -msgid "conversion from `%s' to `%s' is not supported" -msgstr "不支援從 `%s' 到 `%s' 的轉換" +msgid "File is not a cache file.\n" +msgstr "檔案並非快取檔。\n" -#: iconv/iconv_prog.c:265 -msgid "failed to start conversion processing" -msgstr "開始轉換程序失敗" +#: elf/cache.c:199 elf/cache.c:209 +#, c-format +msgid "%d libs found in cache `%s'\n" +msgstr "%d 函式庫在快取 `%s' 中找到\n" -#: iconv/iconv_prog.c:360 -msgid "error while closing output file" -msgstr "正在關閉輸出檔案的時候發生錯誤" +#: elf/cache.c:403 +#, c-format +msgid "Can't create temporary cache file %s" +msgstr "無法產生暫時的快取檔 %s" -#: iconv/iconv_prog.c:409 iconv/iconvconfig.c:357 locale/programs/locale.c:279 -#: locale/programs/localedef.c:372 catgets/gencat.c:233 -#: malloc/memusagestat.c:602 debug/pcprofiledump.c:199 -msgid "Report bugs using the `glibcbug' script to .\n" -msgstr "請使用 `glibcbug' 命令稿將問題回報至 。\n" +#: elf/cache.c:411 elf/cache.c:421 elf/cache.c:425 elf/cache.c:430 +#, c-format +msgid "Writing of cache data failed" +msgstr "寫入快取資料時發生錯誤" -#: iconv/iconv_prog.c:423 iconv/iconvconfig.c:371 locale/programs/locale.c:292 -#: locale/programs/localedef.c:386 catgets/gencat.c:246 posix/getconf.c:913 -#: nss/getent.c:74 nscd/nscd.c:355 nscd/nscd_nischeck.c:90 elf/ldconfig.c:274 -#: elf/sprof.c:349 +#: elf/cache.c:435 #, c-format -msgid "" -"Copyright (C) %s Free Software Foundation, Inc.\n" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"版權所有 (C) %s 自由軟體基金會。\n" -"這是一個自由軟體;請見源始碼的授權條款。這沒有擔保;甚至也沒有專為銷\n" -"售或者適合某些特殊目的。\n" +msgid "Changing access rights of %s to %#o failed" +msgstr "更改 %s 的存取權限為 %#o 失敗" -#: iconv/iconv_prog.c:428 iconv/iconvconfig.c:376 locale/programs/locale.c:297 -#: locale/programs/localedef.c:391 catgets/gencat.c:251 posix/getconf.c:918 -#: nss/getent.c:79 nscd/nscd.c:360 nscd/nscd_nischeck.c:95 elf/ldconfig.c:279 -#: elf/sprof.c:355 +#: elf/cache.c:440 #, c-format -msgid "Written by %s.\n" -msgstr "作者 %s。\n" +msgid "Renaming of %s to %s failed" +msgstr "將 %s 改名為 %s 失敗" -#: iconv/iconv_prog.c:458 iconv/iconv_prog.c:484 -msgid "conversion stopped due to problem in writing the output" -msgstr "因寫入輸出時發生錯誤而導致轉換停止" +#: elf/dl-close.c:387 elf/dl-open.c:397 +msgid "cannot create scope list" +msgstr "無法建立作用域列表" -#: iconv/iconv_prog.c:502 -#, c-format -msgid "illegal input sequence at position %ld" -msgstr "位置 %ld 有不合法的輸入序列" +#: elf/dl-close.c:767 +msgid "shared object not open" +msgstr "共用目的檔案沒有開啟" -#: iconv/iconv_prog.c:510 -msgid "internal error (illegal descriptor)" -msgstr "內部錯誤 (不合法的敘述項)" +#: elf/dl-deps.c:114 +msgid "DST not allowed in SUID/SGID programs" +msgstr "DST 不允許在 SUID/SGID 的程式中" + +#: elf/dl-deps.c:127 +msgid "empty dynamic string token substitution" +msgstr "空的動態字串字組替換" -#: iconv/iconv_prog.c:513 +#: elf/dl-deps.c:133 #, c-format -msgid "unknown iconv() error %d" -msgstr "不明的 iconv() 錯誤 %d" +msgid "cannot load auxiliary `%s' because of empty dynamic string token substitution\n" +msgstr "由於空的動態字串字組替換而無法載入外部的 `%s'\n" -#: iconv/iconv_prog.c:756 -msgid "" -"The following list contain all the coded character sets known. This does\n" -"not necessarily mean that all combinations of these names can be used for\n" -"the FROM and TO command line parameters. One coded character set can be\n" -"listed with several different names (aliases).\n" -"\n" -" " -msgstr "" -"以下的列表包含所有已知的編碼字集,但這不代表所有的字集名稱組合皆可用於\n" -"命令列的 \"來源\" 以及 \"目的\" 引數。一個編碼字集可以用幾個不同的名稱\n" -"來表示 (即 \"匿名\")。\n" -"\n" -" " +#: elf/dl-deps.c:474 +msgid "cannot allocate dependency list" +msgstr "無法配置相關性列表" -#: iconv/iconvconfig.c:110 -msgid "Create fastloading iconv module configuration file." -msgstr "建立快速載入 iconv 模組的設定檔案。" +#: elf/dl-deps.c:514 elf/dl-deps.c:574 +msgid "cannot allocate symbol search list" +msgstr "無法配置符號搜尋列表" -#: iconv/iconvconfig.c:114 -msgid "[DIR...]" -msgstr "[目錄...]" +#: elf/dl-deps.c:554 +msgid "Filters not supported with LD_TRACE_PRELINKING" +msgstr "過濾程式不支援與 LD_TRACE_PRELINKING 共用" -#: iconv/iconvconfig.c:126 -msgid "Prefix used for all file accesses" -msgstr "使用於所有檔案存取時的前置文字" +#: elf/dl-error.c:77 +msgid "DYNAMIC LINKER BUG!!!" +msgstr "動態連接程式有問題!!!" -#: iconv/iconvconfig.c:327 locale/programs/localedef.c:292 -msgid "no output file produced because warnings were issued" -msgstr "因為發出過警告訊息,所以沒有製造任何輸出檔" +#: elf/dl-error.c:124 +msgid "error while loading shared libraries" +msgstr "載入共用函式庫時發生錯誤" -#: iconv/iconvconfig.c:405 -msgid "while inserting in search tree" -msgstr "當插入於搜尋樹之中" +#: elf/dl-fptr.c:88 +msgid "cannot map pages for fdesc table" +msgstr "無法將頁面對映於 fdesc 表格" -#: iconv/iconvconfig.c:1204 -msgid "cannot generate output file" -msgstr "無法產生輸出檔" +#: elf/dl-fptr.c:192 +msgid "cannot map pages for fptr table" +msgstr "無法將頁面對映於 fptr 表格" -#: locale/programs/charmap-dir.c:59 -#, c-format -msgid "cannot read character map directory `%s'" -msgstr "無法讀取字集對照檔目錄 `%s'" +#: elf/dl-fptr.c:221 +msgid "internal error: symidx out of range of fptr table" +msgstr "內部錯誤:symidx 超出 fptr 表格的範圍" -#: locale/programs/charmap.c:136 -#, c-format -msgid "character map file `%s' not found" -msgstr "找不到字集對照檔 `%s'" +#: elf/dl-load.c:471 +msgid "cannot allocate name record" +msgstr "無法配置名稱紀錄" -#: locale/programs/charmap.c:194 -#, c-format -msgid "default character map file `%s' not found" -msgstr "找不到預設的字集對照檔 `%s'" +#: elf/dl-load.c:548 elf/dl-load.c:664 elf/dl-load.c:749 elf/dl-load.c:862 +msgid "cannot create cache for search path" +msgstr "無法為搜尋路徑建立快取" -#: locale/programs/charmap.c:257 -#, c-format -msgid "character map `%s' is not ASCII compatible, locale not ISO C compliant\n" -msgstr "字元對應 `%s' 不是 ASCII 相容碼,區域化資料庫不符合 ISO C\n" +#: elf/dl-load.c:639 +msgid "cannot create RUNPATH/RPATH copy" +msgstr "無法建立 RUNPATH/RPATH 的副本" -#: locale/programs/charmap.c:336 -#, c-format -msgid "%s: must be greater than \n" -msgstr "%s: 必須大於 \n" +#: elf/dl-load.c:735 +msgid "cannot create search path array" +msgstr "無法建立搜尋路徑陣列" -#: locale/programs/charmap.c:356 locale/programs/charmap.c:373 -#: locale/programs/repertoire.c:175 -#, c-format -msgid "syntax error in prolog: %s" -msgstr "prolog 中有語法錯誤: %s" +#: elf/dl-load.c:931 +msgid "cannot stat shared object" +msgstr "無法 stat 共用目的檔" -#: locale/programs/charmap.c:357 -msgid "invalid definition" -msgstr "無效的定義" +#: elf/dl-load.c:1009 +msgid "cannot open zero fill device" +msgstr "無法開啟以零填滿的裝置" -#: locale/programs/charmap.c:374 locale/programs/locfile.c:126 -#: locale/programs/locfile.c:153 locale/programs/repertoire.c:176 -msgid "bad argument" -msgstr "錯誤的引數" +#: elf/dl-load.c:1055 elf/dl-load.c:2313 +msgid "cannot create shared object descriptor" +msgstr "無法建立共用目的檔敘述項" -#: locale/programs/charmap.c:402 -#, c-format -msgid "duplicate definition of <%s>" -msgstr "<%s> 的定義重複了" +#: elf/dl-load.c:1074 elf/dl-load.c:1730 elf/dl-load.c:1833 +msgid "cannot read file data" +msgstr "無法讀取檔案資料" -#: locale/programs/charmap.c:409 -#, c-format -msgid "value for <%s> must be 1 or greater" -msgstr "<%s> 的值必須為 1 或者更大" +#: elf/dl-load.c:1120 +msgid "ELF load command alignment not page-aligned" +msgstr "ELF 載入命令對齊並沒有按照記憶體分頁 (page) 對齊" -#: locale/programs/charmap.c:421 -#, c-format -msgid "value of <%s> must be greater or equal than the value of <%s>" -msgstr "<%s> 的值必須等於或大於 <%s> 的值" +#: elf/dl-load.c:1127 +msgid "ELF load command address/offset not properly aligned" +msgstr "ELF 載入命令位址/位移並沒有適當地對齊" -#: locale/programs/charmap.c:444 locale/programs/repertoire.c:184 -#, c-format -msgid "argument to <%s> must be a single character" -msgstr "給 <%s> 的引數必須是一個單字元" +#: elf/dl-load.c:1210 +msgid "cannot allocate TLS data structures for initial thread" +msgstr "無法配置 TLS 資料結構用以起始執行緒" -#: locale/programs/charmap.c:470 -msgid "character sets with locking states are not supported" -msgstr "不支援使用 locking 狀態的字元集" +#: elf/dl-load.c:1233 +msgid "cannot handle TLS data" +msgstr "無法處理 TLS 資料" -#: locale/programs/charmap.c:497 locale/programs/charmap.c:551 -#: locale/programs/charmap.c:583 locale/programs/charmap.c:677 -#: locale/programs/charmap.c:732 locale/programs/charmap.c:773 -#: locale/programs/charmap.c:814 -#, c-format -msgid "syntax error in %s definition: %s" -msgstr "定義 %s 的語法錯誤: %s" +#: elf/dl-load.c:1252 +msgid "object file has no loadable segments" +msgstr "目的檔中沒有可載入的節區" -#: locale/programs/charmap.c:498 locale/programs/charmap.c:678 -#: locale/programs/charmap.c:774 locale/programs/repertoire.c:231 -msgid "no symbolic name given" -msgstr "沒有給予符號名稱" +#: elf/dl-load.c:1288 +msgid "failed to map segment from shared object" +msgstr "從共用目的檔中對映區段失敗" -#: locale/programs/charmap.c:552 -msgid "invalid encoding given" -msgstr "給予的編碼是無效的" +#: elf/dl-load.c:1314 +msgid "cannot dynamically load executable" +msgstr "無法動態載入執行檔" -#: locale/programs/charmap.c:561 -msgid "too few bytes in character encoding" -msgstr "字元定義中的位元組太少了" +#: elf/dl-load.c:1376 +msgid "cannot change memory protections" +msgstr "無法改變記憶體保護狀態" -#: locale/programs/charmap.c:563 -msgid "too many bytes in character encoding" -msgstr "字元定義中的位元組太多了" +#: elf/dl-load.c:1395 +msgid "cannot map zero-fill pages" +msgstr "無法對應以零填滿的分頁區" -#: locale/programs/charmap.c:585 locale/programs/charmap.c:733 -#: locale/programs/charmap.c:816 locale/programs/repertoire.c:297 -msgid "no symbolic name given for end of range" -msgstr "沒有給此區的最後一個字元符號名稱" +#: elf/dl-load.c:1409 +msgid "object file has no dynamic section" +msgstr "共用目的檔中沒有動態節區" -#: locale/programs/charmap.c:609 locale/programs/locfile.c:818 -#: locale/programs/repertoire.c:314 -#, c-format -msgid "`%1$s' definition does not end with `END %1$s'" -msgstr "`%1$s' 定義沒有以 `END %1$s' 結束" +#: elf/dl-load.c:1432 +msgid "shared object cannot be dlopen()ed" +msgstr "共用目的檔無法被 dlopen()" -#: locale/programs/charmap.c:642 -msgid "only WIDTH definitions are allowed to follow the CHARMAP definition" -msgstr "只有 WIDTH 定義才能直接寫在 CHARMAP 定義之後" +#: elf/dl-load.c:1445 +msgid "cannot allocate memory for program header" +msgstr "無法配置記憶體給程式標頭區使用" -#: locale/programs/charmap.c:650 locale/programs/charmap.c:713 -#, c-format -msgid "value for %s must be an integer" -msgstr "%s 的值必須是整數才行" +#: elf/dl-load.c:1462 elf/dl-open.c:180 +msgid "invalid caller" +msgstr "無效的呼叫者" -#: locale/programs/charmap.c:841 -#, c-format -msgid "%s: error in state machine" -msgstr "%s: 狀態機錯誤" +#: elf/dl-load.c:1501 +msgid "cannot enable executable stack as shared object requires" +msgstr "無法開啟可執行堆疊做為共用目的檔" -#: locale/programs/charmap.c:849 locale/programs/ld-address.c:605 -#: locale/programs/ld-collate.c:2650 locale/programs/ld-collate.c:3818 -#: locale/programs/ld-ctype.c:2225 locale/programs/ld-ctype.c:2994 -#: locale/programs/ld-identification.c:469 -#: locale/programs/ld-measurement.c:255 locale/programs/ld-messages.c:349 -#: locale/programs/ld-monetary.c:958 locale/programs/ld-name.c:324 -#: locale/programs/ld-numeric.c:392 locale/programs/ld-paper.c:258 -#: locale/programs/ld-telephone.c:330 locale/programs/ld-time.c:1219 -#: locale/programs/locfile.c:825 locale/programs/repertoire.c:325 -#, c-format -msgid "%s: premature end of file" -msgstr "%s: 未完成已達檔案的末尾" +#: elf/dl-load.c:1514 +msgid "cannot close file descriptor" +msgstr "無法關閉檔案描述符號" -#: locale/programs/charmap.c:868 locale/programs/charmap.c:879 -#, c-format -msgid "unknown character `%s'" -msgstr "不明的字元 `%s'" +#: elf/dl-load.c:1730 +msgid "file too short" +msgstr "檔案太小" -#: locale/programs/charmap.c:887 -#, c-format -msgid "number of bytes for byte sequence of beginning and end of range not the same: %d vs %d" -msgstr "在範圍起始與結束的位元組序列中,位元組的數目並不一致: %d vs %d" +#: elf/dl-load.c:1766 +msgid "invalid ELF header" +msgstr "無效的 ELF 標頭" -#: locale/programs/charmap.c:991 locale/programs/ld-collate.c:2930 -#: locale/programs/repertoire.c:420 -msgid "invalid names for character range" -msgstr "無效的字元範圍名稱" +#: elf/dl-load.c:1778 +msgid "ELF file data encoding not big-endian" +msgstr "ELF 檔資料編碼並非大尾序" -#: locale/programs/charmap.c:1003 locale/programs/repertoire.c:432 -msgid "hexadecimal range format should use only capital characters" -msgstr "在表示十六進位的範圍時只能用大寫的英文字母表示" +#: elf/dl-load.c:1780 +msgid "ELF file data encoding not little-endian" +msgstr "ELF 檔資料編碼並非小尾序" -#: locale/programs/charmap.c:1021 -#, c-format -msgid "<%s> and <%s> are illegal names for range" -msgstr "<%s> 以及 <%s> 是不合法的範圍名稱" +#: elf/dl-load.c:1784 +msgid "ELF file version ident does not match current one" +msgstr "ELF 檔版本 ident 不符合目前所使用的" -#: locale/programs/charmap.c:1027 -msgid "upper limit in range is not higher then lower limit" -msgstr "區域定義中的最大值沒有比最小值還要大" +#: elf/dl-load.c:1788 +msgid "ELF file OS ABI invalid" +msgstr "ELF 檔 OS ABI 版本不適用" -#: locale/programs/charmap.c:1085 -msgid "resulting bytes for range not representable." -msgstr "用來定義範圍的位元組無法被表述出來" +#: elf/dl-load.c:1791 +msgid "ELF file ABI version invalid" +msgstr "ELF 檔 ABI 版本不適用" -#: locale/programs/ld-address.c:134 locale/programs/ld-collate.c:1534 -#: locale/programs/ld-ctype.c:421 locale/programs/ld-identification.c:134 -#: locale/programs/ld-measurement.c:95 locale/programs/ld-messages.c:98 -#: locale/programs/ld-monetary.c:194 locale/programs/ld-name.c:95 -#: locale/programs/ld-numeric.c:99 locale/programs/ld-paper.c:92 -#: locale/programs/ld-telephone.c:95 locale/programs/ld-time.c:160 -#, c-format -msgid "No definition for %s category found" -msgstr "找不到 %s 類別的定義" +#: elf/dl-load.c:1794 +msgid "nonzero padding in e_ident" +msgstr "在 e_ident 中填補非零值" -#: locale/programs/ld-address.c:145 locale/programs/ld-address.c:183 -#: locale/programs/ld-address.c:201 locale/programs/ld-address.c:228 -#: locale/programs/ld-address.c:290 locale/programs/ld-address.c:309 -#: locale/programs/ld-address.c:322 locale/programs/ld-identification.c:147 -#: locale/programs/ld-measurement.c:106 locale/programs/ld-monetary.c:206 -#: locale/programs/ld-monetary.c:250 locale/programs/ld-monetary.c:266 -#: locale/programs/ld-monetary.c:278 locale/programs/ld-name.c:106 -#: locale/programs/ld-name.c:143 locale/programs/ld-numeric.c:113 -#: locale/programs/ld-numeric.c:127 locale/programs/ld-paper.c:103 -#: locale/programs/ld-paper.c:112 locale/programs/ld-telephone.c:106 -#: locale/programs/ld-telephone.c:163 locale/programs/ld-time.c:176 -#: locale/programs/ld-time.c:197 -#, c-format -msgid "%s: field `%s' not defined" -msgstr "%s: 欄位 `%s' 沒有定義" +#: elf/dl-load.c:1797 +msgid "internal error" +msgstr "內部錯誤" -#: locale/programs/ld-address.c:157 locale/programs/ld-address.c:209 -#: locale/programs/ld-address.c:235 locale/programs/ld-address.c:265 -#: locale/programs/ld-name.c:118 locale/programs/ld-telephone.c:118 -#, c-format -msgid "%s: field `%s' must not be empty" -msgstr "%s: 欄位 `%s' 不可以空白" +#: elf/dl-load.c:1804 +msgid "ELF file version does not match current one" +msgstr "ELF 檔版本不符合目前的版本" -#: locale/programs/ld-address.c:169 -#, c-format -msgid "%s: invalid escape `%%%c' sequence in field `%s'" -msgstr "%s: 不適用的跳脫序列 `%%%c', 在欄位 `%s' 中" +#: elf/dl-load.c:1812 +msgid "only ET_DYN and ET_EXEC can be loaded" +msgstr "只有 ET_DYN 以及 ET_EXEC 可以載入" -#: locale/programs/ld-address.c:220 -#, c-format -msgid "%s: terminology language code `%s' not defined" -msgstr "%s: 術語語言編碼 `%s' 未定義" +#: elf/dl-load.c:1818 +msgid "ELF file's phentsize not the expected size" +msgstr "ELF 檔的 phentsize 並不是預期中的大小" -#: locale/programs/ld-address.c:247 locale/programs/ld-address.c:276 -#, c-format -msgid "%s: language abbreviation `%s' not defined" -msgstr "%s: 語言縮寫 `%s' 沒有定義" +#: elf/dl-load.c:2332 +msgid "wrong ELF class: ELFCLASS64" +msgstr "錯誤 ELF 類別:ELFCLASS64" -#: locale/programs/ld-address.c:254 locale/programs/ld-address.c:282 -#: locale/programs/ld-address.c:316 locale/programs/ld-address.c:328 -#, c-format -msgid "%s: `%s' value does not match `%s' value" -msgstr "%s: `%s' 值與 `%s' 值不符合" +#: elf/dl-load.c:2333 +msgid "wrong ELF class: ELFCLASS32" +msgstr "錯誤 ELF 類別:ELFCLASS32" -#: locale/programs/ld-address.c:301 -#, c-format -msgid "%s: numeric country code `%d' not valid" -msgstr "%s: 國家數字代碼 `%d' 錯誤" +#: elf/dl-load.c:2336 +msgid "cannot open shared object file" +msgstr "無法開啟共用目的檔" -#: locale/programs/ld-address.c:497 locale/programs/ld-address.c:534 -#: locale/programs/ld-address.c:572 locale/programs/ld-ctype.c:2601 -#: locale/programs/ld-identification.c:365 -#: locale/programs/ld-measurement.c:222 locale/programs/ld-messages.c:302 -#: locale/programs/ld-monetary.c:700 locale/programs/ld-monetary.c:735 -#: locale/programs/ld-monetary.c:776 locale/programs/ld-name.c:281 -#: locale/programs/ld-numeric.c:264 locale/programs/ld-paper.c:225 -#: locale/programs/ld-telephone.c:289 locale/programs/ld-time.c:1108 -#: locale/programs/ld-time.c:1150 -#, c-format -msgid "%s: field `%s' declared more than once" -msgstr "%s: `%s' 欄位不只一次地宣告" +#: elf/dl-lookup.c:757 +msgid "relocation error" +msgstr "重定址錯誤" -#: locale/programs/ld-address.c:501 locale/programs/ld-address.c:539 -#: locale/programs/ld-identification.c:369 locale/programs/ld-messages.c:312 -#: locale/programs/ld-monetary.c:704 locale/programs/ld-monetary.c:739 -#: locale/programs/ld-name.c:285 locale/programs/ld-numeric.c:268 -#: locale/programs/ld-telephone.c:293 locale/programs/ld-time.c:1002 -#: locale/programs/ld-time.c:1071 locale/programs/ld-time.c:1113 -#, c-format -msgid "%s: unknown character in field `%s'" -msgstr "%s: 未知的字元在欄位 `%s' 中" +#: elf/dl-lookup.c:785 +msgid "symbol lookup error" +msgstr "符號查找錯誤" -#: locale/programs/ld-address.c:586 locale/programs/ld-collate.c:3800 -#: locale/programs/ld-ctype.c:2974 locale/programs/ld-identification.c:450 -#: locale/programs/ld-measurement.c:236 locale/programs/ld-messages.c:331 -#: locale/programs/ld-monetary.c:940 locale/programs/ld-name.c:306 -#: locale/programs/ld-numeric.c:374 locale/programs/ld-paper.c:240 -#: locale/programs/ld-telephone.c:312 locale/programs/ld-time.c:1201 -#, c-format -msgid "%s: incomplete `END' line" -msgstr "%s: 不完整的 `END' 行" +#: elf/dl-open.c:115 +msgid "cannot extend global scope" +msgstr "無法延展全域變數的作用域" -#: locale/programs/ld-address.c:589 locale/programs/ld-collate.c:2653 -#: locale/programs/ld-collate.c:3802 locale/programs/ld-ctype.c:2228 -#: locale/programs/ld-ctype.c:2977 locale/programs/ld-identification.c:453 -#: locale/programs/ld-measurement.c:239 locale/programs/ld-messages.c:333 -#: locale/programs/ld-monetary.c:942 locale/programs/ld-name.c:308 -#: locale/programs/ld-numeric.c:376 locale/programs/ld-paper.c:242 -#: locale/programs/ld-telephone.c:314 locale/programs/ld-time.c:1203 -#, c-format -msgid "%1$s: definition does not end with `END %1$s'" -msgstr "%1$s: 定義並沒有以 `END %1$s' 做為結束" +#: elf/dl-open.c:440 +msgid "TLS generation counter wrapped! Please report this." +msgstr "TLS 產生計數器被轉換執行! 請報告這個情況。" -#: locale/programs/ld-address.c:596 locale/programs/ld-collate.c:523 -#: locale/programs/ld-collate.c:575 locale/programs/ld-collate.c:871 -#: locale/programs/ld-collate.c:884 locale/programs/ld-collate.c:2640 -#: locale/programs/ld-collate.c:3809 locale/programs/ld-ctype.c:1956 -#: locale/programs/ld-ctype.c:2215 locale/programs/ld-ctype.c:2799 -#: locale/programs/ld-ctype.c:2985 locale/programs/ld-identification.c:460 -#: locale/programs/ld-measurement.c:246 locale/programs/ld-messages.c:340 -#: locale/programs/ld-monetary.c:949 locale/programs/ld-name.c:315 -#: locale/programs/ld-numeric.c:383 locale/programs/ld-paper.c:249 -#: locale/programs/ld-telephone.c:321 locale/programs/ld-time.c:1210 -#, c-format -msgid "%s: syntax error" -msgstr "%s: 語法錯誤" +#: elf/dl-open.c:462 +msgid "cannot load any more object with static TLS" +msgstr "無法以靜態 TLS 再載入任何物件" -#: locale/programs/ld-collate.c:398 -#, c-format -msgid "`%.*s' already defined in charmap" -msgstr "`%.*s' 在字集對照表中已經定義過了" +#: elf/dl-open.c:511 +msgid "invalid mode for dlopen()" +msgstr "無效的 dlopen() 模式" -#: locale/programs/ld-collate.c:407 -#, c-format -msgid "`%.*s' already defined in repertoire" -msgstr "`%.*s' 在編碼對映檔中已經被定義過了" +#: elf/dl-open.c:528 +msgid "no more namespaces available for dlmopen()" +msgstr "無更多命名空間可見於 dlmopen ()" -#: locale/programs/ld-collate.c:414 -#, c-format -msgid "`%.*s' already defined as collating symbol" -msgstr "`%.*s' 已被定義為對照符號" +#: elf/dl-open.c:547 +msgid "invalid target namespace in dlmopen()" +msgstr "dlmopen() 中的無效目標命名空間" -#: locale/programs/ld-collate.c:421 -#, c-format -msgid "`%.*s' already defined as collating element" -msgstr "`%.*s' 已被定義為對照元素" +#: elf/dl-reloc.c:120 +msgid "cannot allocate memory in static TLS block" +msgstr "無法在靜態 TLS 區塊中配置記憶體" -#: locale/programs/ld-collate.c:452 locale/programs/ld-collate.c:478 -#, c-format -msgid "%s: `forward' and `backward' are mutually excluding each other" -msgstr "%s: `forward' 以及 `backward' 彼此互相排斥" +#: elf/dl-reloc.c:212 +msgid "cannot make segment writable for relocation" +msgstr "在重新定址以後無法將區段設為可寫入狀態" -#: locale/programs/ld-collate.c:462 locale/programs/ld-collate.c:488 -#: locale/programs/ld-collate.c:504 +#: elf/dl-reloc.c:275 #, c-format -msgid "%s: `%s' mentioned more than once in definition of weight %d" -msgstr "%s: `%s' 不只一次地在權重 %d 中被提到" +msgid "%s: no PLTREL found in object %s\n" +msgstr "%s: 在目的檔 %s 中沒有找到 PLTREL\n" -#: locale/programs/ld-collate.c:560 +#: elf/dl-reloc.c:286 #, c-format -msgid "%s: too many rules; first entry only had %d" -msgstr "%s: 太多規則;第一個項目只包含 %d" +msgid "%s: out of memory to store relocation results for %s\n" +msgstr "%s: 記憶體不足以儲存重定址結果用於 %s\n" -#: locale/programs/ld-collate.c:596 -#, c-format -msgid "%s: not enough sorting rules" -msgstr "%s: 排序規則不足" +#: elf/dl-reloc.c:302 +msgid "cannot restore segment prot after reloc" +msgstr "在 reloc 之後無法復原 segment prot" -#: locale/programs/ld-collate.c:761 -#, c-format -msgid "%s: empty weight string not allowed" -msgstr "%s: 空白的權重字串是不允許的" +#: elf/dl-reloc.c:331 +msgid "cannot apply additional memory protection after relocation" +msgstr "重定址之後無法套用額外記憶體保護" + +#: elf/dl-sym.c:162 +msgid "RTLD_NEXT used in code not dynamically loaded" +msgstr "程式碼所使用的 RTLD_NEXT 沒有動態載入" + +#: elf/dl-sysdep.c:488 elf/dl-sysdep.c:500 +msgid "cannot create capability list" +msgstr "無法建立 capability 列表" + +#: elf/dl-tls.c:861 +msgid "cannot create TLS data structures" +msgstr "無法建立 TLS 資料結構" + +#: elf/dl-version.c:172 +msgid "version lookup error" +msgstr "版本查找錯誤" + +#: elf/dl-version.c:303 +msgid "cannot allocate version reference table" +msgstr "無法配置版本參照表" + +#: elf/ldconfig.c:141 +msgid "Print cache" +msgstr "印出快取" + +#: elf/ldconfig.c:142 +msgid "Generate verbose messages" +msgstr "產生更多的訊息" + +#: elf/ldconfig.c:143 +msgid "Don't build cache" +msgstr "不建立快取" + +#: elf/ldconfig.c:144 +msgid "Don't generate links" +msgstr "不產生連結" + +#: elf/ldconfig.c:145 +msgid "Change to and use ROOT as root directory" +msgstr "變換到 ROOT 目錄並以它做為根目錄" + +#: elf/ldconfig.c:145 +msgid "ROOT" +msgstr "ROOT" + +#: elf/ldconfig.c:146 +msgid "CACHE" +msgstr "CACHE" + +#: elf/ldconfig.c:146 +msgid "Use CACHE as cache file" +msgstr "使用 CACHE 當作快取檔案" + +#: elf/ldconfig.c:147 +msgid "CONF" +msgstr "CONF" + +#: elf/ldconfig.c:147 +msgid "Use CONF as configuration file" +msgstr "使用 CONF 當作設定檔" + +#: elf/ldconfig.c:148 +msgid "Only process directories specified on the command line. Don't build cache." +msgstr "只處理在命令列引數中有指定的目錄,不建立快取檔案。" + +#: elf/ldconfig.c:149 +msgid "Manually link individual libraries." +msgstr "手動個別連結函式庫" + +#: elf/ldconfig.c:150 +msgid "FORMAT" +msgstr "FORMAT" -#: locale/programs/ld-collate.c:856 +#: elf/ldconfig.c:150 +msgid "Format to use: new, old or compat (default)" +msgstr "將使用格式: 新、舊或相容 (預設)" + +#: elf/ldconfig.c:151 +msgid "Ignore auxiliary cache file" +msgstr "忽略輔助設備快取檔案" + +#: elf/ldconfig.c:159 +msgid "Configure Dynamic Linker Run Time Bindings." +msgstr "設定執行時期動態連接" + +#: elf/ldconfig.c:339 #, c-format -msgid "%s: weights must use the same ellipsis symbol as the name" -msgstr "%s: 權重必須使用與名稱相同的省略符號" +msgid "Path `%s' given more than once" +msgstr "路徑 `%s' 使用超過一次" -#: locale/programs/ld-collate.c:912 +#: elf/ldconfig.c:379 #, c-format -msgid "%s: too many values" -msgstr "%s: 太多變數值" +msgid "%s is not a known library type" +msgstr "%s 不是一個已知的函式庫型態" -#: locale/programs/ld-collate.c:1031 locale/programs/ld-collate.c:1206 +#: elf/ldconfig.c:407 #, c-format -msgid "order for `%.*s' already defined at %s:%Zu" -msgstr "`%.*s' 的順序已經在 %s:%Zu 裡面定義了" +msgid "Can't stat %s" +msgstr "無法 stat %s" -#: locale/programs/ld-collate.c:1081 +#: elf/ldconfig.c:481 #, c-format -msgid "%s: the start and the end symbol of a range must stand for characters" -msgstr "%s: 啟始與結束符號範圍必須代表字元" +msgid "Can't stat %s\n" +msgstr "無法 stat %s\n" -#: locale/programs/ld-collate.c:1108 +#: elf/ldconfig.c:491 #, c-format -msgid "%s: byte sequences of first and last character must have the same length" -msgstr "%s: 第一個與最後一個字元的位元組序列必須有相同的長度" +msgid "%s is not a symbolic link\n" +msgstr "%s 不是一個符號連接檔\n" -#: locale/programs/ld-collate.c:1150 +#: elf/ldconfig.c:510 #, c-format -msgid "%s: byte sequence of first character of sequence is not lower than that of the last character" -msgstr "%s: 第一個字元序列的位元組序列並沒有低於最後一個字元的位元組序列" +msgid "Can't unlink %s" +msgstr "無法取消連結 %s" -#: locale/programs/ld-collate.c:1275 +#: elf/ldconfig.c:516 #, c-format -msgid "%s: symbolic range ellipsis must not directly follow `order_start'" -msgstr "%s: 符號範圍的省略不可以直接在 `order_start' 之後" +msgid "Can't link %s to %s" +msgstr "無法從 %s 連結到 %s" + +#: elf/ldconfig.c:522 +msgid " (changed)\n" +msgstr " (已改變)\n" -#: locale/programs/ld-collate.c:1279 +#: elf/ldconfig.c:524 +msgid " (SKIPPED)\n" +msgstr " (已忽略)\n" + +#: elf/ldconfig.c:579 #, c-format -msgid "%s: symbolic range ellipsis must not be directly followed by `order_end'" -msgstr "%s: 符號範圍的省略不可以直接在 `order_end' 之前" +msgid "Can't find %s" +msgstr "找不到 %s" -#: locale/programs/ld-collate.c:1299 locale/programs/ld-ctype.c:1476 +#: elf/ldconfig.c:595 elf/ldconfig.c:768 elf/ldconfig.c:827 elf/ldconfig.c:861 #, c-format -msgid "`%s' and `%.*s' are not valid names for symbolic range" -msgstr "`%s' 和 `%.*s' 皆非符號範圍中適用的名稱" +msgid "Cannot lstat %s" +msgstr "無法 lstat %s" -#: locale/programs/ld-collate.c:1348 locale/programs/ld-collate.c:3737 +#: elf/ldconfig.c:602 #, c-format -msgid "%s: order for `%.*s' already defined at %s:%Zu" -msgstr "%s: `%.*s' 的順序已在 %s:%Zu 中定義" +msgid "Ignored file %s since it is not a regular file." +msgstr "忽略檔案 %s 因為它不是一個正常的檔案。" -#: locale/programs/ld-collate.c:1357 +#: elf/ldconfig.c:611 #, c-format -msgid "%s: `%s' must be a character" -msgstr "%s: `%s' 必須是一個字元" +msgid "No link created since soname could not be found for %s" +msgstr "由於找不到 %s 的共用目的檔名稱,連結並未被建立" -#: locale/programs/ld-collate.c:1550 +#: elf/ldconfig.c:694 #, c-format -msgid "%s: `position' must be used for a specific level in all sections or none" -msgstr "%s: `position' 必須在所有區塊裡特定的等級中使用,否則不能使用" +msgid "Can't open directory %s" +msgstr "無法開啟目錄 %s" -#: locale/programs/ld-collate.c:1575 +#: elf/ldconfig.c:786 elf/ldconfig.c:848 elf/readlib.c:91 #, c-format -msgid "symbol `%s' not defined" -msgstr "並未定義 `%s' 符號" +msgid "Input file %s not found.\n" +msgstr "輸入檔 %s 找不到。\n" -#: locale/programs/ld-collate.c:1651 locale/programs/ld-collate.c:1757 +#: elf/ldconfig.c:793 #, c-format -msgid "symbol `%s' has the same encoding as" -msgstr "跟符號 `%s' 有相同的編碼: " +msgid "Cannot stat %s" +msgstr "無法顯示狀態 %s" -#: locale/programs/ld-collate.c:1655 locale/programs/ld-collate.c:1761 +#: elf/ldconfig.c:922 #, c-format -msgid "symbol `%s'" -msgstr "符號 `%s'" +msgid "libc5 library %s in wrong directory" +msgstr "libc5 函式庫 %s 擺錯目錄了" -#: locale/programs/ld-collate.c:1803 -msgid "no definition of `UNDEFINED'" -msgstr "沒有找到 `UNDEFINED' 的定義" +#: elf/ldconfig.c:925 +#, c-format +msgid "libc6 library %s in wrong directory" +msgstr "libc6 函式庫 %s 擺錯目錄了" -#: locale/programs/ld-collate.c:1832 -msgid "too many errors; giving up" -msgstr "發生太多錯誤;放棄中" +#: elf/ldconfig.c:928 +#, c-format +msgid "libc4 library %s in wrong directory" +msgstr "libc4 函式庫 %s 擺錯目錄了" -#: locale/programs/ld-collate.c:2735 +#: elf/ldconfig.c:956 #, c-format -msgid "%s: duplicate definition of `%s'" -msgstr "%s: 重複的定義 `%s'" +msgid "libraries %s and %s in directory %s have same soname but different type." +msgstr "函式庫 %s 跟 %s (在目錄 %s 底下) 有共同的共用函式庫名稱,不過其格式卻不同" -#: locale/programs/ld-collate.c:2771 +#: elf/ldconfig.c:1065 #, c-format -msgid "%s: duplicate declaration of section `%s'" -msgstr "%s: 重複的 `%s' 區塊宣告" +msgid "Can't open configuration file %s" +msgstr "無法開啟設定檔 %s" -#: locale/programs/ld-collate.c:2910 +#: elf/ldconfig.c:1129 #, c-format -msgid "%s: unknown character in collating symbol name" -msgstr "%s: 未知的字元在對照符號名稱中" +msgid "%s:%u: bad syntax in hwcap line" +msgstr "%s:%u: 在 hwcap 列中有不當的語法" -#: locale/programs/ld-collate.c:3042 +#: elf/ldconfig.c:1135 #, c-format -msgid "%s: unknown character in equivalent definition name" -msgstr "%s: 未知的字元在同義定義名稱中" +msgid "%s:%u: hwcap index %lu above maximum %u" +msgstr "%s:%u:hwcap 索引 %lu 以上的最大值 %u" -#: locale/programs/ld-collate.c:3055 +#: elf/ldconfig.c:1142 elf/ldconfig.c:1150 #, c-format -msgid "%s: unknown character in equivalent definition value" -msgstr "%s: 未知的字元在同義定義值中" +msgid "%s:%u: hwcap index %lu already defined as %s" +msgstr "%s:%u: hwcap 索引 %lu 已經被定義為 %s" -#: locale/programs/ld-collate.c:3065 +#: elf/ldconfig.c:1153 #, c-format -msgid "%s: unknown symbol `%s' in equivalent definition" -msgstr "%s: 未知的符號 `%s' 在同義定義中" +msgid "%s:%u: duplicate hwcap %lu %s" +msgstr "%s:%u:重製 hwcap %lu %s" -#: locale/programs/ld-collate.c:3074 -msgid "error while adding equivalent collating symbol" -msgstr "正在加入同義對照符號時發生錯誤" +#: elf/ldconfig.c:1175 +#, c-format +msgid "need absolute file name for configuration file when using -r" +msgstr "需要絕對檔案名稱用於組態檔案時正在使用 -r" -#: locale/programs/ld-collate.c:3104 +#: elf/ldconfig.c:1182 locale/programs/xmalloc.c:70 malloc/obstack.c:434 +#: malloc/obstack.c:436 posix/getconf.c:1077 posix/getconf.c:1297 #, c-format -msgid "duplicate definition of script `%s'" -msgstr "敘述 `%s' 的定義重複了" +msgid "memory exhausted" +msgstr "記憶體耗盡" -#: locale/programs/ld-collate.c:3152 +#: elf/ldconfig.c:1214 #, c-format -msgid "%s: unknown section name `%s'" -msgstr "%s: 未知的區塊名稱 `%s'" +msgid "%s:%u: cannot read directory %s" +msgstr "%s:%u: 無法讀取目錄 %s" -#: locale/programs/ld-collate.c:3180 +#: elf/ldconfig.c:1258 #, c-format -msgid "%s: multiple order definitions for section `%s'" -msgstr "%s: `%s' 區塊中有多個順序定義" +msgid "relative path `%s' used to build cache" +msgstr "用來建置快取的相對路徑 `%s'" -#: locale/programs/ld-collate.c:3205 +#: elf/ldconfig.c:1284 #, c-format -msgid "%s: invalid number of sorting rules" -msgstr "%s: 不適用的排序規則數目" +msgid "Can't chdir to /" +msgstr "無法變更目錄到 /" -#: locale/programs/ld-collate.c:3232 +#: elf/ldconfig.c:1325 #, c-format -msgid "%s: multiple order definitions for unnamed section" -msgstr "%s: 未命名的區塊中有多個順序定義" +msgid "Can't open cache file directory %s\n" +msgstr "無法開啟快取檔案目錄 %s\n" -#: locale/programs/ld-collate.c:3286 locale/programs/ld-collate.c:3414 -#: locale/programs/ld-collate.c:3778 -#, c-format -msgid "%s: missing `order_end' keyword" -msgstr "%s: 缺少 `order_end' 關鍵字" +#: elf/ldd.bash.in:43 +msgid "Written by %s and %s.\n" +msgstr "由 %s 和 %s 編寫。\n" -#: locale/programs/ld-collate.c:3347 -#, c-format -msgid "%s: order for collating symbol %.*s not yet defined" -msgstr "%s: 對照符號 %.*s 的順序尚未定義" +#: elf/ldd.bash.in:48 +msgid "" +"Usage: ldd [OPTION]... FILE...\n" +" --help print this help and exit\n" +" --version print version information and exit\n" +" -d, --data-relocs process data relocations\n" +" -r, --function-relocs process data and function relocations\n" +" -u, --unused print unused direct dependencies\n" +" -v, --verbose print all information\n" +msgstr "" +"用法:ldd [選項]… 檔案…\n" +" --help 印出這份說明然後離開\n" +" --version 印出版本資訊然後離開\n" +" -d, --data-relocs 處理資料重定址\n" +" -r, --function-relocs 處理資料和函式重定址\n" +" -u, --unused 印出未使用的直接相依性\n" +" -v, --verbose 印出所有資訊\n" + +#: elf/ldd.bash.in:82 +msgid "ldd: option \\`$1' is ambiguous" +msgstr "ldd:選項「$1」為模稜兩可的" + +#: elf/ldd.bash.in:89 +msgid "unrecognized option" +msgstr "無法辨識的選項" + +#: elf/ldd.bash.in:90 elf/ldd.bash.in:128 +msgid "Try \\`ldd --help' for more information." +msgstr "嘗試「ldd --help」以獲得更多資訊。" + +#: elf/ldd.bash.in:127 +msgid "missing file arguments" +msgstr "缺少檔案引數" -#: locale/programs/ld-collate.c:3365 -#, c-format -msgid "%s: order for collating element %.*s not yet defined" -msgstr "%s: 對照元素 %.*s 的順序尚未定義" +#. TRANS No such file or directory. This is a ``file doesn't exist'' error +#. TRANS for ordinary files that are referenced in contexts where they are +#. TRANS expected to already exist. +#: elf/ldd.bash.in:150 sysdeps/gnu/errlist.c:36 +msgid "No such file or directory" +msgstr "沒有此一檔案或目錄" -#: locale/programs/ld-collate.c:3376 -#, c-format -msgid "%s: cannot reorder after %.*s: symbol not known" -msgstr "%s: 無法重新排列在 %.*s 之後: 未知的符號" +#: elf/ldd.bash.in:153 inet/rcmd.c:488 +msgid "not regular file" +msgstr "並非正常的檔案" -#: locale/programs/ld-collate.c:3428 locale/programs/ld-collate.c:3790 -#, c-format -msgid "%s: missing `reorder-end' keyword" -msgstr "%s: 缺少 `reorder-end' 關鍵字" +#: elf/ldd.bash.in:156 +msgid "warning: you do not have execution permission for" +msgstr "警告:您沒有執行權限用於" -#: locale/programs/ld-collate.c:3462 locale/programs/ld-collate.c:3662 -#, c-format -msgid "%s: section `%.*s' not known" -msgstr "%s: 未知的區塊 `%.*s'" +#: elf/ldd.bash.in:185 +msgid "\tnot a dynamic executable" +msgstr "\t不是動態可執行檔案" -#: locale/programs/ld-collate.c:3527 -#, c-format -msgid "%s: bad symbol <%.*s>" -msgstr "%s: 不當的符號 <%.*s>" +#: elf/ldd.bash.in:193 +msgid "exited with unknown exit code" +msgstr "離開的與不明的離開代碼" -#: locale/programs/ld-collate.c:3725 -#, c-format -msgid "%s: cannot have `%s' as end of ellipsis range" -msgstr "%s: 無法用 `%s' 做為省略區段的結尾" +#: elf/ldd.bash.in:198 +msgid "error: you do not have read permission for" +msgstr "錯誤:您沒有讀取許可權用於" -#: locale/programs/ld-collate.c:3774 +#: elf/readelflib.c:35 #, c-format -msgid "%s: empty category description not allowed" -msgstr "%s: 空白的類別描述是不允許的" +msgid "file %s is truncated\n" +msgstr "檔案 %s 已截短\n" -#: locale/programs/ld-collate.c:3793 +#: elf/readelflib.c:67 #, c-format -msgid "%s: missing `reorder-sections-end' keyword" -msgstr "%s: 缺少 `reorder-sections-end' 關鍵字" - -#: locale/programs/ld-ctype.c:440 -msgid "No character set name specified in charmap" -msgstr "在字元對應 (charmap) 中沒有設定字集名稱" +msgid "%s is a 32 bit ELF file.\n" +msgstr "%s 是一個 32 位元的 ELF 檔案。\n" -#: locale/programs/ld-ctype.c:469 +#: elf/readelflib.c:69 #, c-format -msgid "character L'\\u%0*x' in class `%s' must be in class `%s'" -msgstr "character L'\\u%0*x' (放在類別 `%s' 之中) 必須在類別 `%s' 裡面" +msgid "%s is a 64 bit ELF file.\n" +msgstr "%s 是一個 64 位元的 ELF 檔案。\n" -#: locale/programs/ld-ctype.c:484 +#: elf/readelflib.c:71 #, c-format -msgid "character L'\\u%0*x' in class `%s' must not be in class `%s'" -msgstr "character L'\\u%0*x' (放在類別 `%s' 之中) 不能在類別 `%s' 裡面" +msgid "Unknown ELFCLASS in file %s.\n" +msgstr "檔案 %s 中未知的 ELFCLASS。\n" -#: locale/programs/ld-ctype.c:498 locale/programs/ld-ctype.c:556 +#: elf/readelflib.c:78 #, c-format -msgid "internal error in %s, line %u" -msgstr "%s 的第 %u 行發生內部錯誤" +msgid "%s is not a shared object file (Type: %d).\n" +msgstr "%s 不是一個共用目的檔 (型態: %d)。\n" -#: locale/programs/ld-ctype.c:527 +#: elf/readelflib.c:109 #, c-format -msgid "character '%s' in class `%s' must be in class `%s'" -msgstr "字元 '%s' (放在類別 `%s' 之中) 必須在類別 `%s' 裡面" +msgid "more than one dynamic segment\n" +msgstr "超過一個的動態區段\n" -#: locale/programs/ld-ctype.c:543 +#: elf/readlib.c:97 #, c-format -msgid "character '%s' in class `%s' must not be in class `%s'" -msgstr "字元 '%s' (放在類別 `%s' 之中) 不能在類別 `%s' 裡面" +msgid "Cannot fstat file %s.\n" +msgstr "無法 fstat 檔案 %s。\n" -#: locale/programs/ld-ctype.c:573 locale/programs/ld-ctype.c:611 +#: elf/readlib.c:108 #, c-format -msgid " character not in class `%s'" -msgstr " 字元不在類別 `%s' 中" +msgid "File %s is empty, not checked." +msgstr "檔案 %s 為空,不做檢查。" -#: locale/programs/ld-ctype.c:585 locale/programs/ld-ctype.c:622 +#: elf/readlib.c:114 #, c-format -msgid " character must not be in class `%s'" -msgstr " 字元不可以在類別 `%s' 中" - -#: locale/programs/ld-ctype.c:600 -msgid "character not defined in character map" -msgstr "字元 在字集對照檔中沒有定義" - -#: locale/programs/ld-ctype.c:714 -msgid "`digit' category has not entries in groups of ten" -msgstr "`digit' 類別在群組 \"十\" 中沒有項目" +msgid "File %s is too small, not checked." +msgstr "檔案 %s 太小,不做檢查。" -#: locale/programs/ld-ctype.c:763 -msgid "no input digits defined and none of the standard names in the charmap" -msgstr "沒有定義輸入數字,在字集對照檔中也找不到相符的標準名稱" +#: elf/readlib.c:124 +#, c-format +msgid "Cannot mmap file %s.\n" +msgstr "無法 mmap 檔案 %s。\n" -#: locale/programs/ld-ctype.c:828 -msgid "not all characters used in `outdigit' are available in the charmap" -msgstr "在字集對照表中無法找到某些在 `outdigit' 中用到的字元" +#: elf/readlib.c:162 +#, c-format +msgid "%s is not an ELF file - it has the wrong magic bytes at the start.\n" +msgstr "%s 不是一個 ELF 檔 - 其開頭的魔術位元組是錯的。\n" -#: locale/programs/ld-ctype.c:845 -msgid "not all characters used in `outdigit' are available in the repertoire" -msgstr "在編碼對映檔中無法找到某些在 `outdigit' 中用到的字元" +#: elf/sln.c:85 +#, c-format +msgid "" +"Usage: sln src dest|file\n" +"\n" +msgstr "" +"用法:sln 原始碼 目的|檔案\n" +"\n" -#: locale/programs/ld-ctype.c:1244 +#: elf/sln.c:110 #, c-format -msgid "character class `%s' already defined" -msgstr "字元類別 `%s' 已經定義過了" +msgid "%s: file open error: %m\n" +msgstr "%s:檔案開啟錯誤:%m\n" -#: locale/programs/ld-ctype.c:1250 +#: elf/sln.c:147 #, c-format -msgid "implementation limit: no more than %Zd character classes allowed" -msgstr "程式實作的限制: 不能使用超過 %Zd 個字集類別" +msgid "No target in line %d\n" +msgstr "沒有目標於第 %d 列\n" -#: locale/programs/ld-ctype.c:1276 +#: elf/sln.c:179 #, c-format -msgid "character map `%s' already defined" -msgstr "字集對照檔 `%s' 已經定義過了" +msgid "%s: destination must not be a directory\n" +msgstr "%s:目的必須不是目錄\n" -#: locale/programs/ld-ctype.c:1282 +#: elf/sln.c:185 #, c-format -msgid "implementation limit: no more than %d character maps allowed" -msgstr "程式實作的限制: 不能使用超過 %d 個字集對照檔" +msgid "%s: failed to remove the old destination\n" +msgstr "%s:無法移除舊的目的\n" -#: locale/programs/ld-ctype.c:1547 locale/programs/ld-ctype.c:1672 -#: locale/programs/ld-ctype.c:1778 locale/programs/ld-ctype.c:2464 -#: locale/programs/ld-ctype.c:3460 +#: elf/sln.c:193 #, c-format -msgid "%s: field `%s' does not contain exactly ten entries" -msgstr "%s: `%s' 欄位沒有精確包含十個項目" +msgid "%s: invalid destination: %s\n" +msgstr "%s:無效的目的:%s\n" -#: locale/programs/ld-ctype.c:1575 locale/programs/ld-ctype.c:2146 +#: elf/sln.c:208 elf/sln.c:217 #, c-format -msgid "to-value of range is smaller than from-value " -msgstr "區域定義的結尾值 比起始值 還要小" +msgid "Invalid link from \"%s\" to \"%s\": %s\n" +msgstr "從「%s」到「%s」的鏈結無效:%s\n" -#: locale/programs/ld-ctype.c:1702 -msgid "start and end character sequence of range must have the same length" -msgstr "從起始到結束之間的字元序列長度跟編碼範圍必須相同" +#: elf/sotruss.ksh:33 +#, sh-format +msgid "" +"Usage: sotruss [OPTION...] [--] EXECUTABLE [EXECUTABLE-OPTION...]\n" +" -F, --from FROMLIST trace calls from objects on FORMLIST\n" +" -T, --to TOLIST trace calls to objects on TOLIST\n" +"\n" +" -e, --exit also show exits from the function calls\n" +" -f, --follow trace child processes\n" +" -o, --output FILENAME write output to FILENAME (or FILENAME.$PID in case\n" +"\t\t\t -f is also used) instead of standard error\n" +"\n" +" --help print this help and exit\n" +" --version print version information and exit" +msgstr "" +"用法:sotruss [選項...] [--] 可執行檔案 [EXECUTABLE-OPTION...]\n" +" -F, --from FROMLIST 追蹤從物件的呼叫於 FORMLIST\n" +" -T, --to TOLIST 追蹤到物件的呼叫於 TOLIST\n" +"\n" +" -e, --exit 也顯示從函式呼叫的離開\n" +" -f, --follow 追蹤子進程\n" +" -o, --output 檔名 寫入輸出到檔名 (或 FILENAME.$PID 當\n" +"\t\t\t -f 也同時使用) 以代替標準錯誤\n" +"\n" +" --help 印出這份說明然後離開\n" +" --version 印出版本資訊然後離開" -#: locale/programs/ld-ctype.c:1709 -msgid "to-value character sequence is smaller than from-value sequence" -msgstr "字元序列定義的結尾值比起始值還要小" +#: elf/sotruss.ksh:46 +msgid "Mandatory arguments to long options are also mandatory for any corresponding\\nshort options.\\n" +msgstr "長選項的必要引數同樣也是相對應短選項的必要引數。" -#: locale/programs/ld-ctype.c:2066 locale/programs/ld-ctype.c:2117 -msgid "premature end of `translit_ignore' definition" -msgstr "`translit_ignore' 定義沒有按時結束" +#: elf/sotruss.ksh:56 +msgid "%s: option requires an argument -- '%s'\\n" +msgstr "%s:選項需要一個引數 --『%s』\\n" -#: locale/programs/ld-ctype.c:2072 locale/programs/ld-ctype.c:2123 -#: locale/programs/ld-ctype.c:2165 -msgid "syntax error" -msgstr "語法錯誤" +#: elf/sotruss.ksh:57 elf/sotruss.ksh:68 elf/sotruss.ksh:134 +msgid "Try \\`%s --help' or \\`%s --usage' for more information.\\n" +msgstr "請嘗試 \\『%s --help』或\\『%s --usage』以獲得更多資訊。\\n" -#: locale/programs/ld-ctype.c:2296 -#, c-format -msgid "%s: syntax error in definition of new character class" -msgstr "%s: 在定義新字元類別時語法錯誤" +#: elf/sotruss.ksh:62 +msgid "%s: option is ambiguous; possibilities:" +msgstr "%s:選項是模稜兩可的;可能是:" -#: locale/programs/ld-ctype.c:2311 -#, c-format -msgid "%s: syntax error in definition of new character map" -msgstr "%s: 在定義新字元對應時語法錯誤" +#: elf/sotruss.ksh:80 +msgid "Written by %s.\\n" +msgstr "作者 %s。\\n" -#: locale/programs/ld-ctype.c:2486 -msgid "ellipsis range must be marked by two operands of same type" -msgstr "省略區域必須用兩個型別相同的運算元標示出來" +#: elf/sotruss.ksh:87 +msgid "" +"Usage: %s [-ef] [-F FROMLIST] [-o FILENAME] [-T TOLIST] [--exit]\n" +"\t [--follow] [--from FROMLIST] [--output FILENAME] [--to TOLIST]\\n" +msgstr "" +"用法:%s [-ef] [-F FROMLIST] [-o FILENAME] [-T TOLIST] [--exit]\n" +"\t [--follow] [--from FROMLIST] [--output FILENAME] [--to TOLIST]\\n" -#: locale/programs/ld-ctype.c:2495 -msgid "with symbolic name range values the absolute ellipsis `...' must not be used" -msgstr "用符號名稱來指定字元編碼範圍時不可以用絕對位置的省略符號 `...'" +#: elf/sotruss.ksh:133 +msgid "%s: unrecognized option '%c%s'\\n" +msgstr "%s:無法辨識的選項『%c%s』\\n" -#: locale/programs/ld-ctype.c:2510 -msgid "with UCS range values one must use the hexadecimal symbolic ellipsis `..'" -msgstr "用來指定 UCS 值的範圍時得用十六進位表示的省略符號 `..'" +#: elf/sprof.c:77 +msgid "Output selection:" +msgstr "輸出選擇:" -#: locale/programs/ld-ctype.c:2524 -msgid "with character code range values one must use the absolute ellipsis `...'" -msgstr "用來指定字元編碼值的範圍時得用絕對位置的省略符號 `...'" +#: elf/sprof.c:79 +msgid "print list of count paths and their number of use" +msgstr "列出計數的路徑以及它們使用的次數" -#: locale/programs/ld-ctype.c:2675 -#, c-format -msgid "duplicated definition for mapping `%s'" -msgstr "對映 `%s' 的定義重複了" +#: elf/sprof.c:81 +msgid "generate flat profile with counts and ticks" +msgstr "從執行次數與經歷時間的資料中產生直接的測速結果" -#: locale/programs/ld-ctype.c:2761 locale/programs/ld-ctype.c:2905 -#, c-format -msgid "%s: `translit_start' section does not end with `translit_end'" -msgstr "%s: `translit_start' 小節並沒有以 `translit_end' 做為結束" +#: elf/sprof.c:82 +msgid "generate call graph" +msgstr "產生函式呼叫圖形" -#: locale/programs/ld-ctype.c:2856 -#, c-format -msgid "%s: duplicate `default_missing' definition" -msgstr "%s: 重複的 `default_missing' 定義" +#: elf/sprof.c:89 +msgid "Read and display shared object profiling data." +msgstr "讀取和顯示共用物件規範資料。" -#: locale/programs/ld-ctype.c:2861 -msgid "previous definition was here" -msgstr "先前的設定在此" +#: elf/sprof.c:94 +msgid "SHOBJ [PROFDATA]" +msgstr "SHOBJ [PROFDATA]" -#: locale/programs/ld-ctype.c:2883 +#: elf/sprof.c:431 #, c-format -msgid "%s: no representable `default_missing' definition found" -msgstr "%s: 找不到可表示為 `default_missing' 的定義" +msgid "failed to load shared object `%s'" +msgstr "開啟共用目的檔 `%s' 失敗" -#: locale/programs/ld-ctype.c:3036 +#: elf/sprof.c:440 #, c-format -msgid "%s: character `%s' not defined in charmap while needed as default value" -msgstr "%s: 字元 `%s' 在字集對照表中沒有定義,但它是必需的預設值" +msgid "cannot create internal descriptors" +msgstr "無法建立內部敘述項" -#: locale/programs/ld-ctype.c:3041 locale/programs/ld-ctype.c:3125 -#: locale/programs/ld-ctype.c:3145 locale/programs/ld-ctype.c:3166 -#: locale/programs/ld-ctype.c:3187 locale/programs/ld-ctype.c:3208 -#: locale/programs/ld-ctype.c:3229 locale/programs/ld-ctype.c:3269 -#: locale/programs/ld-ctype.c:3290 locale/programs/ld-ctype.c:3357 +#: elf/sprof.c:559 #, c-format -msgid "%s: character `%s' in charmap not representable with one byte" -msgstr "%s: 字集對照表中的字元 `%s' 無法表示為單一位元組" +msgid "Reopening shared object `%s' failed" +msgstr "重新開啟共用目的檔 %s 失敗" -#: locale/programs/ld-ctype.c:3120 locale/programs/ld-ctype.c:3140 -#: locale/programs/ld-ctype.c:3182 locale/programs/ld-ctype.c:3203 -#: locale/programs/ld-ctype.c:3224 locale/programs/ld-ctype.c:3264 -#: locale/programs/ld-ctype.c:3285 locale/programs/ld-ctype.c:3352 -#: locale/programs/ld-ctype.c:3394 locale/programs/ld-ctype.c:3419 +#: elf/sprof.c:566 elf/sprof.c:660 #, c-format -msgid "%s: character `%s' not defined while needed as default value" -msgstr "%s: 字元 `%s' 沒有定義,但它是必需的預設值" +msgid "reading of section headers failed" +msgstr "讀取小節標頭時失敗" -#: locale/programs/ld-ctype.c:3161 +#: elf/sprof.c:574 elf/sprof.c:668 #, c-format -msgid "character `%s' not defined while needed as default value" -msgstr "必須用來作為預設值的字元 `%s' 沒有被定義到" +msgid "reading of section header string table failed" +msgstr "讀取小節標頭字串表格時失敗" -#: locale/programs/ld-ctype.c:3401 locale/programs/ld-ctype.c:3426 +#: elf/sprof.c:600 #, c-format -msgid "%s: character `%s' needed as default value not representable with one byte" -msgstr "%s: 做為預設值所需的字元 `%s' 無法表示為單一位元組" +msgid "*** Cannot read debuginfo file name: %m\n" +msgstr "*** 無法讀取除錯資訊檔案名稱:%m\n" -#: locale/programs/ld-ctype.c:3481 -msgid "no output digits defined and none of the standard names in the charmap" -msgstr "沒有定義輸出數字,在字集對照檔中也找不到相符的標準名稱" - -#: locale/programs/ld-ctype.c:3772 +#: elf/sprof.c:620 #, c-format -msgid "%s: transliteration data from locale `%s' not available" -msgstr "%s: 語區資料`%s' 的音譯資料不存在" +msgid "cannot determine file name" +msgstr "無法決定檔案名稱" -#: locale/programs/ld-ctype.c:3868 +#: elf/sprof.c:653 #, c-format -msgid "%s: table for class \"%s\": %lu bytes\n" -msgstr "%s: 類別 \"%s\" 表格: %lu 位元組\n" +msgid "reading of ELF header failed" +msgstr "讀取 ELF 標頭時失敗" -#: locale/programs/ld-ctype.c:3937 +#: elf/sprof.c:689 #, c-format -msgid "%s: table for map \"%s\": %lu bytes\n" -msgstr "%s: 對映表 \"%s\" 表格: %lu 位元組\n" +msgid "*** The file `%s' is stripped: no detailed analysis possible\n" +msgstr "*** 檔案 `%s' 被裁剪了: 無法做詳細的分析\n" -#: locale/programs/ld-ctype.c:4070 +#: elf/sprof.c:719 #, c-format -msgid "%s: table for width: %lu bytes\n" -msgstr "%s: 寬度表格: %lu 位元組\n" +msgid "failed to load symbol data" +msgstr "載入函式符號資料失敗" -#: locale/programs/ld-identification.c:171 +#: elf/sprof.c:784 #, c-format -msgid "%s: no identification for category `%s'" -msgstr "%s: 類別 `%s' 沒有認證" +msgid "cannot load profiling data" +msgstr "無法載入測試資料" -#: locale/programs/ld-identification.c:436 +#: elf/sprof.c:793 #, c-format -msgid "%s: duplicate category version definition" -msgstr "%s: 重複的類別版本定義" +msgid "while stat'ing profiling data file" +msgstr "在對測試資料檔案進行統計的時候" -#: locale/programs/ld-measurement.c:114 +#: elf/sprof.c:801 #, c-format -msgid "%s: invalid value for field `%s'" -msgstr "%s: 在欄位 `%s' 中的值不適用" +msgid "profiling data file `%s' does not match shared object `%s'" +msgstr "測試資料檔 `%s' 與共用目的檔 `%s' 不符合" -#: locale/programs/ld-messages.c:115 locale/programs/ld-messages.c:149 +#: elf/sprof.c:812 #, c-format -msgid "%s: field `%s' undefined" -msgstr "%s: 欄位 `%s' 沒有定義" +msgid "failed to mmap the profiling data file" +msgstr "測試資料檔案 mmap 失敗" -#: locale/programs/ld-messages.c:122 locale/programs/ld-messages.c:156 +#: elf/sprof.c:820 #, c-format -msgid "%s: value for field `%s' must not be an empty string" -msgstr "%s: 欄位 `%s' 值不可以是空字串" +msgid "error while closing the profiling data file" +msgstr "正在關閉測試資料檔案時發生錯誤" -#: locale/programs/ld-messages.c:138 locale/programs/ld-messages.c:172 +#: elf/sprof.c:829 elf/sprof.c:927 #, c-format -msgid "%s: no correct regular expression for field `%s': %s" -msgstr "%s: 沒有給欄位 `%s' 正確的常規表示式: %s" +msgid "cannot create internal descriptor" +msgstr "無法建立內部敘述項" -#: locale/programs/ld-monetary.c:224 +#: elf/sprof.c:903 #, c-format -msgid "%s: value of field `int_curr_symbol' has wrong length" -msgstr "%s: 欄位 `int_curr_symbol' 值的長度錯誤" +msgid "`%s' is no correct profile data file for `%s'" +msgstr "`%s' 不是 `%s' 中正確的測速評估資料檔" -#: locale/programs/ld-monetary.c:237 +#: elf/sprof.c:1084 elf/sprof.c:1142 #, c-format -msgid "%s: value of field `int_curr_symbol' does not correspond to a valid name in ISO 4217" -msgstr "%s: 欄位 `int_curr_symbol' 值並不是 ISO 4217 中合法的名稱" +msgid "cannot allocate symbol data" +msgstr "無法配置函式符號資料" -#: locale/programs/ld-monetary.c:256 locale/programs/ld-numeric.c:119 +#: iconv/iconv_charmap.c:142 iconv/iconv_prog.c:446 #, c-format -msgid "%s: value for field `%s' must not be the empty string" -msgstr "%s: 欄位 `%s' 值不可以是空字串" +msgid "cannot open output file" +msgstr "無法開啟輸出檔" -#: locale/programs/ld-monetary.c:284 locale/programs/ld-monetary.c:314 +#: iconv/iconv_charmap.c:188 iconv/iconv_prog.c:312 #, c-format -msgid "%s: value for field `%s' must be in range %d...%d" -msgstr "%s: 欄位 `%s' 的值必須在範圍 %d...%d" +msgid "error while closing input `%s'" +msgstr "正在關閉輸入 `%s' 的時候發生錯誤" -#: locale/programs/ld-monetary.c:746 locale/programs/ld-numeric.c:275 +#: iconv/iconv_charmap.c:462 #, c-format -msgid "%s: value for field `%s' must be a single character" -msgstr "%s: 欄位 `%s' 的值必須是個單一字元" +msgid "illegal input sequence at position %Zd" +msgstr "位置 %Zd 有不合法的輸入序列" -#: locale/programs/ld-monetary.c:843 locale/programs/ld-numeric.c:319 +#: iconv/iconv_charmap.c:481 iconv/iconv_prog.c:537 #, c-format -msgid "%s: `-1' must be last entry in `%s' field" -msgstr "%s: `-1' 在 `%s' 欄位中必須是最後一個項目" +msgid "incomplete character or shift sequence at end of buffer" +msgstr "緩衝區結尾有不完全的字元或 shift sequence" -#: locale/programs/ld-monetary.c:865 locale/programs/ld-numeric.c:340 +#: iconv/iconv_charmap.c:526 iconv/iconv_charmap.c:562 iconv/iconv_prog.c:580 +#: iconv/iconv_prog.c:616 #, c-format -msgid "%s: values for field `%s' must be smaller than 127" -msgstr "%s: 欄位 `%s' 的值必須小於 127" - -#: locale/programs/ld-monetary.c:908 -msgid "conversion rate value cannot be zero" -msgstr "轉換率的值不可以是零" +msgid "error while reading the input" +msgstr "正在讀入資料的時候發生錯誤" -#: locale/programs/ld-name.c:130 locale/programs/ld-telephone.c:127 -#: locale/programs/ld-telephone.c:150 +#: iconv/iconv_charmap.c:544 iconv/iconv_prog.c:598 #, c-format -msgid "%s: invalid escape sequence in field `%s'" -msgstr "%s: 在欄位 `%s' 中的跳脫序列不適用" +msgid "unable to allocate buffer for input" +msgstr "無法配置輸入用的緩衝區" -#: locale/programs/ld-time.c:248 -#, c-format -msgid "%s: direction flag in string %Zd in `era' field is not '+' nor '-'" -msgstr "%s: 在 `era' 欄位的字串 %Zd 中,方向旗標既不是 '+' 也不是 '-'" +#: iconv/iconv_prog.c:60 +msgid "Input/Output format specification:" +msgstr "輸入/輸出格式設定:" -#: locale/programs/ld-time.c:259 -#, c-format -msgid "%s: direction flag in string %Zd in `era' field is not a single character" -msgstr "%s: 在 `era' 欄位的字串 %Zd 中,方向旗標不是一個單一字元" +#: iconv/iconv_prog.c:61 +msgid "encoding of original text" +msgstr "原始文字的編碼" -#: locale/programs/ld-time.c:272 -#, c-format -msgid "%s: invalid number for offset in string %Zd in `era' field" -msgstr "%s: 在 `era' 欄位、字串 %Zd 中的位移數字不適用" +#: iconv/iconv_prog.c:62 +msgid "encoding for output" +msgstr "用來輸出的編碼" -#: locale/programs/ld-time.c:280 -#, c-format -msgid "%s: garbage at end of offset value in string %Zd in `era' field" -msgstr "%s: 無用的資料,在 `era' 欄位、字串 %Zd 中末尾的位移值" +#: iconv/iconv_prog.c:63 +msgid "Information:" +msgstr "資料:" -#: locale/programs/ld-time.c:331 -#, c-format -msgid "%s: invalid starting date in string %Zd in `era' field" -msgstr "%s: 在 `era' 欄位、字串 %Zd 中的起始日期不適用" +#: iconv/iconv_prog.c:64 +msgid "list all known coded character sets" +msgstr "列出所有已知的編碼字元集" -#: locale/programs/ld-time.c:340 -#, c-format -msgid "%s: garbage at end of starting date in string %Zd in `era' field " -msgstr "%s: 無用的資料,在 `era' 欄位、字串 %Zd 中末尾的起始日期" +#: iconv/iconv_prog.c:65 locale/programs/localedef.c:127 +msgid "Output control:" +msgstr "輸出控制:" -#: locale/programs/ld-time.c:359 -#, c-format -msgid "%s: starting date is invalid in string %Zd in `era' field" -msgstr "%s: 在 `era' 區域的字串 %Zd 中的啟始日期是不適用的" +#: iconv/iconv_prog.c:66 +msgid "omit invalid characters from output" +msgstr "省略無效字元的輸出" -#: locale/programs/ld-time.c:408 -#, c-format -msgid "%s: invalid stopping date in string %Zd in `era' field" -msgstr "%s: 在 `era' 欄位、字串 %Zd 中的結束日期不適用" +#: iconv/iconv_prog.c:67 +msgid "output file" +msgstr "輸出檔案" + +#: iconv/iconv_prog.c:68 +msgid "suppress warnings" +msgstr "停止輸出警告訊息" + +#: iconv/iconv_prog.c:69 +msgid "print progress information" +msgstr "印出程序相關資訊" -#: locale/programs/ld-time.c:417 +#: iconv/iconv_prog.c:74 +msgid "Convert encoding of given files from one encoding to another." +msgstr "從給定的檔案的字元編碼轉換到另一個" + +#: iconv/iconv_prog.c:78 +msgid "[FILE...]" +msgstr "[FILE...]" + +#: iconv/iconv_prog.c:234 #, c-format -msgid "%s: garbage at end of stopping date in string %Zd in `era' field" -msgstr "%s: 無用的資料,在 `era' 區域、字串 %Zd 中末尾的結束日期" +msgid "conversions from `%s' and to `%s' are not supported" +msgstr "不支援從 `%s' 以及到 `%s' 的轉換" -#: locale/programs/ld-time.c:436 +#: iconv/iconv_prog.c:239 #, c-format -msgid "%s: stopping date is invalid in string %Zd in `era' field" -msgstr "%s: 在 `era' 區域的字串 %Zd 中的結束日期是不適用的" +msgid "conversion from `%s' is not supported" +msgstr "不支援從 `%s' 的轉換" -#: locale/programs/ld-time.c:445 +#: iconv/iconv_prog.c:246 #, c-format -msgid "%s: missing era name in string %Zd in `era' field" -msgstr "%s: 缺少 era 名稱,在 `era' 欄位、字串 %Zd 中" +msgid "conversion to `%s' is not supported" +msgstr "不支援到 `%s' 的轉換" -#: locale/programs/ld-time.c:457 +#: iconv/iconv_prog.c:250 #, c-format -msgid "%s: missing era format in string %Zd in `era' field" -msgstr "%s: 缺少 era 格式,在 `era' 欄位、字串 %Zd 中" +msgid "conversion from `%s' to `%s' is not supported" +msgstr "不支援從 `%s' 到 `%s' 的轉換" -#: locale/programs/ld-time.c:486 +#: iconv/iconv_prog.c:260 #, c-format -msgid "%s: third operand for value of field `%s' must not be larger than %d" -msgstr "%s: 欄位 `%s' 值的第三個運算元不可以比 %d 大" +msgid "failed to start conversion processing" +msgstr "開始轉換程序失敗" -#: locale/programs/ld-time.c:494 locale/programs/ld-time.c:502 +#: iconv/iconv_prog.c:358 #, c-format -msgid "%s: values of field `%s' must not be larger than %d" -msgstr "%s: 欄位 `%s' 的值不可以大於 %d" +msgid "error while closing output file" +msgstr "正在關閉輸出檔案的時候發生錯誤" -#: locale/programs/ld-time.c:510 +#: iconv/iconv_prog.c:456 #, c-format -msgid "%s: values for field `%s' must not be larger than %d" -msgstr "%s: 欄位 `%s' 的值不可以大於 %d" +msgid "conversion stopped due to problem in writing the output" +msgstr "因寫入輸出時發生錯誤而導致轉換停止" -#: locale/programs/ld-time.c:986 +#: iconv/iconv_prog.c:533 #, c-format -msgid "%s: too few values for field `%s'" -msgstr "%s: 欄位 `%s' 中的值太少" +msgid "illegal input sequence at position %ld" +msgstr "位置 %ld 有不合法的輸入序列" -#: locale/programs/ld-time.c:1031 -msgid "extra trailing semicolon" -msgstr "多出的尾端分號" +#: iconv/iconv_prog.c:541 +#, c-format +msgid "internal error (illegal descriptor)" +msgstr "內部錯誤 (不合法的敘述項)" -#: locale/programs/ld-time.c:1034 +#: iconv/iconv_prog.c:544 #, c-format -msgid "%s: too many values for field `%s'" -msgstr "%s: 欄位 `%s' 中的值太多" +msgid "unknown iconv() error %d" +msgstr "不明的 iconv() 錯誤 %d" -#: locale/programs/linereader.c:130 -msgid "trailing garbage at end of line" -msgstr "行結尾的無用字元" +#: iconv/iconv_prog.c:790 +msgid "" +"The following list contain all the coded character sets known. This does\n" +"not necessarily mean that all combinations of these names can be used for\n" +"the FROM and TO command line parameters. One coded character set can be\n" +"listed with several different names (aliases).\n" +"\n" +" " +msgstr "" +"以下的列表包含所有已知的編碼字集,但這不代表所有的字集名稱組合皆可用於\n" +"命令列的 \"來源\" 以及 \"目的\" 引數。一個編碼字集可以用幾個不同的名稱\n" +"來表示 (即 \"匿名\")。\n" +"\n" +" " -#: locale/programs/linereader.c:304 -msgid "garbage at end of number" -msgstr "號碼結束位置的無用資料" +#: iconv/iconvconfig.c:110 +msgid "Create fastloading iconv module configuration file." +msgstr "建立快速載入 iconv 模組的設定檔案。" -#: locale/programs/linereader.c:416 -msgid "garbage at end of character code specification" -msgstr "字元編碼設定結束位置的無用資料" +#: iconv/iconvconfig.c:114 +msgid "[DIR...]" +msgstr "[目錄...]" -#: locale/programs/linereader.c:502 -msgid "unterminated symbolic name" -msgstr "沒有結尾的符號名稱" +#: iconv/iconvconfig.c:127 +msgid "Prefix used for all file accesses" +msgstr "使用於所有檔案存取時的前置文字" -#: locale/programs/linereader.c:566 catgets/gencat.c:1195 -msgid "invalid escape sequence" -msgstr "無效的跳脫序列" +#: iconv/iconvconfig.c:128 +msgid "Put output in FILE instead of installed location (--prefix does not apply to FILE)" +msgstr "在 FILE 中置放輸出以代替已安裝的位置 (--prefix 不套用到 FILE)" -#: locale/programs/linereader.c:629 -msgid "illegal escape sequence at end of string" -msgstr "字串結尾有不合法的跳脫序列" +#: iconv/iconvconfig.c:132 +msgid "Do not search standard directories, only those on the command line" +msgstr "不搜尋標準目錄,只有那些在之上命令列" -#: locale/programs/linereader.c:633 locale/programs/linereader.c:861 -msgid "unterminated string" -msgstr "沒有結尾的字串" +#: iconv/iconvconfig.c:301 +#, c-format +msgid "Directory arguments required when using --nostdlib" +msgstr "目錄引數必要項時正在使用 --nostdlib" -#: locale/programs/linereader.c:675 -msgid "non-symbolic character value should not be used" -msgstr "非符號性的字元值不應該被使用才對" +#: iconv/iconvconfig.c:343 locale/programs/localedef.c:291 +#, c-format +msgid "no output file produced because warnings were issued" +msgstr "因為發出過警告訊息,所以沒有製造任何輸出檔" -#: locale/programs/linereader.c:822 +#: iconv/iconvconfig.c:429 #, c-format -msgid "symbol `%.*s' not in charmap" -msgstr "符號 `%.*s' 並不在字集對照表中" +msgid "while inserting in search tree" +msgstr "當插入於搜尋樹之中" -#: locale/programs/linereader.c:843 +#: iconv/iconvconfig.c:1238 #, c-format -msgid "symbol `%.*s' not in repertoire map" -msgstr "符號 `%.*s' 並不在編碼對映檔中" +msgid "cannot generate output file" +msgstr "無法產生輸出檔" -#: locale/programs/locale.c:75 -msgid "System information:" -msgstr "系統相關資訊:" +#: inet/rcmd.c:163 +msgid "rcmd: Cannot allocate memory\n" +msgstr "rcmd: 無法配置記憶體\n" -#: locale/programs/locale.c:77 -msgid "Write names of available locales" -msgstr "寫出存在的語區資料名稱" +#: inet/rcmd.c:178 +msgid "rcmd: socket: All ports in use\n" +msgstr "rcmd: socket: 所有的埠都在使用中\n" -#: locale/programs/locale.c:79 -msgid "Write names of available charmaps" -msgstr "寫出存在的字集對照表名稱" +#: inet/rcmd.c:206 +#, c-format +msgid "connect to address %s: " +msgstr "連接到位址 %s: " -#: locale/programs/locale.c:80 -msgid "Modify output format:" -msgstr "修改輸出格式:" +#: inet/rcmd.c:219 +#, c-format +msgid "Trying %s...\n" +msgstr "嘗試 %s...\n" -#: locale/programs/locale.c:81 -msgid "Write names of selected categories" -msgstr "寫出選取的類別名稱" +#: inet/rcmd.c:255 +#, c-format +msgid "rcmd: write (setting up stderr): %m\n" +msgstr "rcmd: write (正在設定標準錯誤輸出): %m\n" -#: locale/programs/locale.c:82 -msgid "Write names of selected keywords" -msgstr "寫出選取的關鍵字名稱" +#: inet/rcmd.c:271 +#, c-format +msgid "rcmd: poll (setting up stderr): %m\n" +msgstr "rcmd: poll (正在設定標準錯誤輸出): %m\n" -#: locale/programs/locale.c:83 -msgid "Print more information" -msgstr "印出更多的資訊" +#: inet/rcmd.c:274 +msgid "poll: protocol failure in circuit setup\n" +msgstr "poll: 通訊協定在設定線路時失效\n" -#: locale/programs/locale.c:88 -msgid "Get locale-specific information." -msgstr "取得語區資料特定的資訊" +#: inet/rcmd.c:306 +msgid "socket: protocol failure in circuit setup\n" +msgstr "socket: 通訊協定在設定線路時失效\n" -#: locale/programs/locale.c:91 -msgid "" -"NAME\n" -"[-a|-m]" -msgstr "" -"名稱\n" -"[-a|-m]" +#: inet/rcmd.c:330 +#, c-format +msgid "rcmd: %s: short read" +msgstr "rcmd: %s: 讀入資料過短" -#: locale/programs/locale.c:195 -msgid "Cannot set LC_CTYPE to default locale" -msgstr "無法將 LC_CTYPE 設置為預設的語區" +#: inet/rcmd.c:486 +msgid "lstat failed" +msgstr "lstat 失敗" -#: locale/programs/locale.c:197 -msgid "Cannot set LC_MESSAGES to default locale" -msgstr "無法將 LC_MESSAGES 設置為預設的語區" +#: inet/rcmd.c:493 +msgid "cannot open" +msgstr "無法開啟" -#: locale/programs/locale.c:210 -msgid "Cannot set LC_COLLATE to default locale" -msgstr "無法將 LC_COLLATE 設置為預設的語區" +#: inet/rcmd.c:495 +msgid "fstat failed" +msgstr "fstat 失敗" -#: locale/programs/locale.c:226 -msgid "Cannot set LC_ALL to default locale" -msgstr "無法將 LC_ALL 設置為預設的語區" +#: inet/rcmd.c:497 +msgid "bad owner" +msgstr "錯誤的擁有者" -#: locale/programs/locale.c:517 -msgid "while preparing output" -msgstr "在準備輸出時" +#: inet/rcmd.c:499 +msgid "writeable by other than owner" +msgstr "使用者以外的人亦可寫入" -#: locale/programs/localedef.c:121 -msgid "Input Files:" -msgstr "輸入檔:" +#: inet/rcmd.c:501 +msgid "hard linked somewhere" +msgstr "被實體連結到某處" -#: locale/programs/localedef.c:123 -msgid "Symbolic character names defined in FILE" -msgstr "符號字元的名稱定義在檔案 FILE 中" +#: inet/ruserpass.c:170 inet/ruserpass.c:193 +msgid "out of memory" +msgstr "記憶體不足" -#: locale/programs/localedef.c:124 -msgid "Source definitions are found in FILE" -msgstr "原始資料定義在檔案 FILE 中" +#: inet/ruserpass.c:184 +msgid "Error: .netrc file is readable by others." +msgstr "錯誤: .netrc 檔可以被別人讀取" -#: locale/programs/localedef.c:126 -msgid "FILE contains mapping from symbolic names to UCS4 values" -msgstr "檔案 FILE 內含符號名與 UCS4 編碼之間的對映" +#: inet/ruserpass.c:185 +msgid "Remove password or make file unreadable by others." +msgstr "移除密碼或讓他人無法讀取檔案" -#: locale/programs/localedef.c:130 -msgid "Create output even if warning messages were issued" -msgstr "產生輸出即使是有警告訊息" +#: inet/ruserpass.c:277 +#, c-format +msgid "Unknown .netrc keyword %s" +msgstr "未知的 .netrc 關鍵字 %s" -#: locale/programs/localedef.c:131 -msgid "Create old-style tables" -msgstr "產生舊格式的表格" +#: libidn/nfkc.c:464 +msgid "Character out of range for UTF-8" +msgstr "字元超出 UTF-8 範圍" -#: locale/programs/localedef.c:132 -msgid "Optional output file prefix" -msgstr "可有可無的輸出檔路徑" - -#: locale/programs/localedef.c:133 -msgid "Be strictly POSIX conform" -msgstr "嚴格遵從 POSIX" - -#: locale/programs/localedef.c:135 -msgid "Suppress warnings and information messages" -msgstr "忽略警告與提示訊息" - -#: locale/programs/localedef.c:136 -msgid "Print more messages" -msgstr "印出更多的訊息" - -#: locale/programs/localedef.c:137 -msgid "Archive control:" -msgstr "保存檔控制:" - -#: locale/programs/localedef.c:139 -msgid "Don't add new data to archive" -msgstr "不要加入新資料到保存檔" - -#: locale/programs/localedef.c:141 -msgid "Add locales named by parameters to archive" -msgstr "藉由參數加入語區名稱到保存檔" - -#: locale/programs/localedef.c:142 -msgid "Replace existing archive content" -msgstr "替換已有的保存檔內容" +#: locale/programs/charmap-dir.c:59 +#, c-format +msgid "cannot read character map directory `%s'" +msgstr "無法讀取字集對照檔目錄 `%s'" -#: locale/programs/localedef.c:144 -msgid "Remove locales named by parameters from archive" -msgstr "藉由參數從保存檔中刪除語區名稱" +#: locale/programs/charmap.c:138 +#, c-format +msgid "character map file `%s' not found" +msgstr "找不到字集對照檔 `%s'" -#: locale/programs/localedef.c:145 -msgid "List content of archive" -msgstr "列出保存檔的內容" +#: locale/programs/charmap.c:195 +#, c-format +msgid "default character map file `%s' not found" +msgstr "找不到預設的字集對照檔 `%s'" -#: locale/programs/localedef.c:147 -msgid "locale.alias file to consult when making archive" -msgstr "製作保存檔時查閱 locale.alias 檔案" +#: locale/programs/charmap.c:258 +#, c-format +msgid "character map `%s' is not ASCII compatible, locale not ISO C compliant\n" +msgstr "字元對應 `%s' 不是 ASCII 相容碼,區域化資料庫不符合 ISO C\n" -#: locale/programs/localedef.c:152 -msgid "Compile locale specification" -msgstr "編譯語區資料規格" +#: locale/programs/charmap.c:337 +#, c-format +msgid "%s: must be greater than \n" +msgstr "%s: 必須大於 \n" -#: locale/programs/localedef.c:155 -msgid "" -"NAME\n" -"[--add-to-archive|--delete-from-archive] FILE...\n" -"--list-archive [FILE]" -msgstr "" -"NAME\n" -"[--add-to-archive|--delete-from-archive] 檔案...\n" -"--list-archive [檔案]" +#: locale/programs/charmap.c:357 locale/programs/charmap.c:374 +#: locale/programs/repertoire.c:174 +#, c-format +msgid "syntax error in prolog: %s" +msgstr "prolog 中有語法錯誤: %s" -#: locale/programs/localedef.c:233 -msgid "cannot create directory for output files" -msgstr "無法為輸出檔建立目錄" +#: locale/programs/charmap.c:358 +msgid "invalid definition" +msgstr "無效的定義" -#: locale/programs/localedef.c:244 -msgid "FATAL: system does not define `_POSIX2_LOCALEDEF'" -msgstr "嚴重錯誤: 系統沒有定義 `_POSIX2_LOCALEDEF'" +#: locale/programs/charmap.c:375 locale/programs/locfile.c:126 +#: locale/programs/locfile.c:153 locale/programs/repertoire.c:175 +msgid "bad argument" +msgstr "錯誤的引數" -#: locale/programs/localedef.c:258 locale/programs/localedef.c:274 -#: locale/programs/localedef.c:599 locale/programs/localedef.c:619 +#: locale/programs/charmap.c:403 #, c-format -msgid "cannot open locale definition file `%s'" -msgstr "無法開啟語區資料定義檔 `%s'" +msgid "duplicate definition of <%s>" +msgstr "<%s> 的定義重複了" -#: locale/programs/localedef.c:286 +#: locale/programs/charmap.c:410 #, c-format -msgid "cannot write output files to `%s'" -msgstr "無法將輸出檔案寫入 `%s'" +msgid "value for <%s> must be 1 or greater" +msgstr "<%s> 的值必須為 1 或者更大" -#: locale/programs/localedef.c:367 +#: locale/programs/charmap.c:422 #, c-format -msgid "" -"System's directory for character maps : %s\n" -" repertoire maps: %s\n" -" locale path : %s\n" -"%s" -msgstr "" -"系統的字集對照檔 (character maps) 目錄 : %s\n" -" 編碼對映檔 (repertoire maps) 目錄 : %s\n" -" 語區資料路徑 : %s\n" -"%s" - -#: locale/programs/localedef.c:567 -msgid "circular dependencies between locale definitions" -msgstr "有語區資料在定義時發生循環相關的情況" +msgid "value of <%s> must be greater or equal than the value of <%s>" +msgstr "<%s> 的值必須等於或大於 <%s> 的值" -#: locale/programs/localedef.c:573 +#: locale/programs/charmap.c:445 locale/programs/repertoire.c:183 #, c-format -msgid "cannot add already read locale `%s' a second time" -msgstr " `%s' 語區資料已經用過,不能重複加入" +msgid "argument to <%s> must be a single character" +msgstr "給 <%s> 的引數必須是一個單字元" -#: locale/programs/locarchive.c:89 locale/programs/locarchive.c:259 -msgid "cannot create temporary file" -msgstr "無法產生暫時檔" +#: locale/programs/charmap.c:471 +msgid "character sets with locking states are not supported" +msgstr "不支援使用 locking 狀態的字元集" -#: locale/programs/locarchive.c:118 locale/programs/locarchive.c:305 -msgid "cannot initialize archive file" -msgstr "無法起始保存檔" +#: locale/programs/charmap.c:498 locale/programs/charmap.c:552 +#: locale/programs/charmap.c:584 locale/programs/charmap.c:678 +#: locale/programs/charmap.c:733 locale/programs/charmap.c:774 +#: locale/programs/charmap.c:815 +#, c-format +msgid "syntax error in %s definition: %s" +msgstr "定義 %s 的語法錯誤: %s" -#: locale/programs/locarchive.c:125 locale/programs/locarchive.c:312 -msgid "cannot resize archive file" -msgstr "無法改變保存檔大小" +#: locale/programs/charmap.c:499 locale/programs/charmap.c:679 +#: locale/programs/charmap.c:775 locale/programs/repertoire.c:230 +msgid "no symbolic name given" +msgstr "沒有給予符號名稱" -#: locale/programs/locarchive.c:134 locale/programs/locarchive.c:321 -#: locale/programs/locarchive.c:511 -msgid "cannot map archive header" -msgstr "無法註記保存檔表頭" +#: locale/programs/charmap.c:553 +msgid "invalid encoding given" +msgstr "給予的編碼是無效的" -#: locale/programs/locarchive.c:156 -msgid "failed to create new locale archive" -msgstr "無法建立新的語區保存檔" +#: locale/programs/charmap.c:562 +msgid "too few bytes in character encoding" +msgstr "字元定義中的位元組太少了" -#: locale/programs/locarchive.c:168 -msgid "cannot change mode of new locale archive" -msgstr "無法改變新的語區資料保存檔狀態" +#: locale/programs/charmap.c:564 +msgid "too many bytes in character encoding" +msgstr "字元定義中的位元組太多了" -#: locale/programs/locarchive.c:253 -msgid "cannot map locale archive file" -msgstr "無法映射語區資料保存檔" +#: locale/programs/charmap.c:586 locale/programs/charmap.c:734 +#: locale/programs/charmap.c:817 locale/programs/repertoire.c:296 +msgid "no symbolic name given for end of range" +msgstr "沒有給此區的最後一個字元符號名稱" -#: locale/programs/locarchive.c:329 -msgid "cannot lock new archive" -msgstr "無法鎖定新的保存檔" +#: locale/programs/charmap.c:610 locale/programs/ld-address.c:602 +#: locale/programs/ld-collate.c:2769 locale/programs/ld-collate.c:3927 +#: locale/programs/ld-ctype.c:2257 locale/programs/ld-ctype.c:3009 +#: locale/programs/ld-identification.c:452 +#: locale/programs/ld-measurement.c:238 locale/programs/ld-messages.c:332 +#: locale/programs/ld-monetary.c:943 locale/programs/ld-name.c:307 +#: locale/programs/ld-numeric.c:368 locale/programs/ld-paper.c:241 +#: locale/programs/ld-telephone.c:313 locale/programs/ld-time.c:1221 +#: locale/programs/repertoire.c:313 +#, c-format +msgid "%1$s: definition does not end with `END %1$s'" +msgstr "%1$s: 定義並沒有以 `END %1$s' 做為結束" -#: locale/programs/locarchive.c:380 -msgid "cannot extend locale archive file" -msgstr "無法延展語區資料保存檔" +#: locale/programs/charmap.c:643 +msgid "only WIDTH definitions are allowed to follow the CHARMAP definition" +msgstr "只有 WIDTH 定義才能直接寫在 CHARMAP 定義之後" -#: locale/programs/locarchive.c:389 -msgid "cannot change mode of resized locale archive" -msgstr "無法改變已變更大小的語區資料保存檔狀態" +#: locale/programs/charmap.c:651 locale/programs/charmap.c:714 +#, c-format +msgid "value for %s must be an integer" +msgstr "%s 的值必須是整數才行" -#: locale/programs/locarchive.c:397 -msgid "cannot rename new archive" -msgstr "無法更改新保存檔名稱" +#: locale/programs/charmap.c:842 +#, c-format +msgid "%s: error in state machine" +msgstr "%s: 狀態機錯誤" -#: locale/programs/locarchive.c:450 +#: locale/programs/charmap.c:850 locale/programs/ld-address.c:618 +#: locale/programs/ld-collate.c:2766 locale/programs/ld-collate.c:4120 +#: locale/programs/ld-ctype.c:2254 locale/programs/ld-ctype.c:3026 +#: locale/programs/ld-identification.c:468 +#: locale/programs/ld-measurement.c:254 locale/programs/ld-messages.c:348 +#: locale/programs/ld-monetary.c:959 locale/programs/ld-name.c:323 +#: locale/programs/ld-numeric.c:384 locale/programs/ld-paper.c:257 +#: locale/programs/ld-telephone.c:329 locale/programs/ld-time.c:1237 +#: locale/programs/locfile.c:826 locale/programs/repertoire.c:324 #, c-format -msgid "cannot open locale archive \"%s\"" -msgstr "無法開啟語區資料保存檔 \"%s\"" +msgid "%s: premature end of file" +msgstr "%s: 未完成已達檔案的末尾" -#: locale/programs/locarchive.c:455 +#: locale/programs/charmap.c:869 locale/programs/charmap.c:880 #, c-format -msgid "cannot stat locale archive \"%s\"" -msgstr "無法統計語區資料保存檔 \"%s\"" +msgid "unknown character `%s'" +msgstr "不明的字元 `%s'" -#: locale/programs/locarchive.c:474 +#: locale/programs/charmap.c:888 #, c-format -msgid "cannot lock locale archive \"%s\"" -msgstr "無法鎖定語區資料保存檔 \"%s\"" +msgid "number of bytes for byte sequence of beginning and end of range not the same: %d vs %d" +msgstr "在範圍起始與結束的位元組序列中,位元組的數目並不一致: %d vs %d" -#: locale/programs/locarchive.c:497 -msgid "cannot read archive header" -msgstr "無法讀取保存檔表頭資料" +#: locale/programs/charmap.c:993 locale/programs/ld-collate.c:3046 +#: locale/programs/repertoire.c:419 +msgid "invalid names for character range" +msgstr "無效的字元範圍名稱" + +#: locale/programs/charmap.c:1005 locale/programs/repertoire.c:431 +msgid "hexadecimal range format should use only capital characters" +msgstr "在表示十六進位的範圍時只能用大寫的英文字母表示" -#: locale/programs/locarchive.c:557 +#: locale/programs/charmap.c:1023 locale/programs/repertoire.c:449 #, c-format -msgid "locale '%s' already exists" -msgstr "語區資料 `%s' 已經存在" +msgid "<%s> and <%s> are invalid names for range" +msgstr "<%s> 以及 <%s> 是不適用的範圍名稱" -#: locale/programs/locarchive.c:788 locale/programs/locarchive.c:803 -#: locale/programs/locarchive.c:815 locale/programs/locarchive.c:827 -#: locale/programs/locfile.c:343 -msgid "cannot add to locale archive" -msgstr "無法加入語區資料保存檔" +#: locale/programs/charmap.c:1029 locale/programs/repertoire.c:456 +msgid "upper limit in range is smaller than lower limit" +msgstr "範圍中上限小於下限" -#: locale/programs/locarchive.c:982 -#, c-format -msgid "locale alias file `%s' not found" -msgstr "找不到語區資料別名檔 `%s'" +#: locale/programs/charmap.c:1087 +msgid "resulting bytes for range not representable." +msgstr "用來定義範圍的位元組無法被表述出來" -#: locale/programs/locarchive.c:1126 +#: locale/programs/ld-address.c:135 locale/programs/ld-collate.c:1558 +#: locale/programs/ld-ctype.c:421 locale/programs/ld-identification.c:133 +#: locale/programs/ld-measurement.c:94 locale/programs/ld-messages.c:97 +#: locale/programs/ld-monetary.c:194 locale/programs/ld-name.c:94 +#: locale/programs/ld-numeric.c:98 locale/programs/ld-paper.c:91 +#: locale/programs/ld-telephone.c:94 locale/programs/ld-time.c:159 #, c-format -msgid "Adding %s\n" -msgstr "加入 %s 中\n" +msgid "No definition for %s category found" +msgstr "找不到 %s 類別的定義" -#: locale/programs/locarchive.c:1132 +#: locale/programs/ld-address.c:146 locale/programs/ld-address.c:184 +#: locale/programs/ld-address.c:202 locale/programs/ld-address.c:231 +#: locale/programs/ld-address.c:303 locale/programs/ld-address.c:322 +#: locale/programs/ld-address.c:335 locale/programs/ld-identification.c:146 +#: locale/programs/ld-measurement.c:105 locale/programs/ld-monetary.c:206 +#: locale/programs/ld-monetary.c:250 locale/programs/ld-monetary.c:266 +#: locale/programs/ld-monetary.c:278 locale/programs/ld-name.c:105 +#: locale/programs/ld-name.c:142 locale/programs/ld-numeric.c:112 +#: locale/programs/ld-numeric.c:126 locale/programs/ld-paper.c:102 +#: locale/programs/ld-paper.c:111 locale/programs/ld-telephone.c:105 +#: locale/programs/ld-telephone.c:162 locale/programs/ld-time.c:175 +#: locale/programs/ld-time.c:196 #, c-format -msgid "stat of \"%s\" failed: %s: ignored" -msgstr "取得 \"%s\" 的資訊時失敗: %s: 已忽略" +msgid "%s: field `%s' not defined" +msgstr "%s: 欄位 `%s' 沒有定義" -#: locale/programs/locarchive.c:1138 +#: locale/programs/ld-address.c:158 locale/programs/ld-address.c:210 +#: locale/programs/ld-address.c:240 locale/programs/ld-address.c:278 +#: locale/programs/ld-name.c:117 locale/programs/ld-telephone.c:117 #, c-format -msgid "\"%s\" is no directory; ignored" -msgstr "\"%s\" 並非目錄; 已忽略" +msgid "%s: field `%s' must not be empty" +msgstr "%s: 欄位 `%s' 不可以空白" -#: locale/programs/locarchive.c:1145 +#: locale/programs/ld-address.c:170 #, c-format -msgid "cannot open directory \"%s\": %s: ignored" -msgstr "無法開啟目錄 \"%s\": %s: 已忽略" +msgid "%s: invalid escape `%%%c' sequence in field `%s'" +msgstr "%s: 不適用的跳脫序列 `%%%c', 在欄位 `%s' 中" -#: locale/programs/locarchive.c:1217 +#: locale/programs/ld-address.c:221 #, c-format -msgid "incomplete set of locale files in \"%s\"" -msgstr "不完整的一組語區資料檔案存在於 \"%s\" 之中" +msgid "%s: terminology language code `%s' not defined" +msgstr "%s: 術語語言編碼 `%s' 未定義" -#: locale/programs/locarchive.c:1281 +#: locale/programs/ld-address.c:246 #, c-format -msgid "cannot read all files in \"%s\": ignored" -msgstr "無法讀取 \"%s\" 中的所有檔案: 已忽略" +msgid "%s: field `%s' must not be defined" +msgstr "%s: 欄位「%s」必須未被定義" -#: locale/programs/locarchive.c:1351 +#: locale/programs/ld-address.c:260 locale/programs/ld-address.c:289 #, c-format -msgid "locale \"%s\" not in archive" -msgstr "語區資料 \"%s\" 不在保存檔中" +msgid "%s: language abbreviation `%s' not defined" +msgstr "%s: 語言縮寫 `%s' 沒有定義" -#: locale/programs/locfile.c:132 +#: locale/programs/ld-address.c:267 locale/programs/ld-address.c:295 +#: locale/programs/ld-address.c:329 locale/programs/ld-address.c:341 #, c-format -msgid "argument to `%s' must be a single character" -msgstr "給 `%s' 的引數必須是一個單字元" +msgid "%s: `%s' value does not match `%s' value" +msgstr "%s: `%s' 值與 `%s' 值不符合" -#: locale/programs/locfile.c:251 -msgid "syntax error: not inside a locale definition section" -msgstr "語法錯誤: 不能在語區資料定義區塊裡面使用" +#: locale/programs/ld-address.c:314 +#, c-format +msgid "%s: numeric country code `%d' not valid" +msgstr "%s: 國家數字代碼 `%d' 錯誤" -#: locale/programs/locfile.c:625 +#: locale/programs/ld-address.c:510 locale/programs/ld-address.c:547 +#: locale/programs/ld-address.c:585 locale/programs/ld-ctype.c:2633 +#: locale/programs/ld-identification.c:364 +#: locale/programs/ld-measurement.c:221 locale/programs/ld-messages.c:301 +#: locale/programs/ld-monetary.c:701 locale/programs/ld-monetary.c:736 +#: locale/programs/ld-monetary.c:777 locale/programs/ld-name.c:280 +#: locale/programs/ld-numeric.c:263 locale/programs/ld-paper.c:224 +#: locale/programs/ld-telephone.c:288 locale/programs/ld-time.c:1126 +#: locale/programs/ld-time.c:1168 #, c-format -msgid "cannot open output file `%s' for category `%s'" -msgstr "無法開啟輸出檔 `%s' 供類別 `%s' 使用" +msgid "%s: field `%s' declared more than once" +msgstr "%s: `%s' 欄位不只一次地宣告" -#: locale/programs/locfile.c:649 +#: locale/programs/ld-address.c:514 locale/programs/ld-address.c:552 +#: locale/programs/ld-identification.c:368 locale/programs/ld-messages.c:311 +#: locale/programs/ld-monetary.c:705 locale/programs/ld-monetary.c:740 +#: locale/programs/ld-name.c:284 locale/programs/ld-numeric.c:267 +#: locale/programs/ld-telephone.c:292 locale/programs/ld-time.c:1020 +#: locale/programs/ld-time.c:1089 locale/programs/ld-time.c:1131 #, c-format -msgid "failure while writing data for category `%s'" -msgstr "正在為類別 `%s' 寫入資料時發生錯誤" +msgid "%s: unknown character in field `%s'" +msgstr "%s: 未知的字元在欄位 `%s' 中" -#: locale/programs/locfile.c:745 +#: locale/programs/ld-address.c:599 locale/programs/ld-collate.c:3925 +#: locale/programs/ld-ctype.c:3006 locale/programs/ld-identification.c:449 +#: locale/programs/ld-measurement.c:235 locale/programs/ld-messages.c:330 +#: locale/programs/ld-monetary.c:941 locale/programs/ld-name.c:305 +#: locale/programs/ld-numeric.c:366 locale/programs/ld-paper.c:239 +#: locale/programs/ld-telephone.c:311 locale/programs/ld-time.c:1219 #, c-format -msgid "cannot create output file `%s' for category `%s'" -msgstr "無法建立輸出檔 `%s' 供類別 `%s' 使用" +msgid "%s: incomplete `END' line" +msgstr "%s: 不完整的 `END' 列" + +#: locale/programs/ld-address.c:609 locale/programs/ld-collate.c:544 +#: locale/programs/ld-collate.c:596 locale/programs/ld-collate.c:892 +#: locale/programs/ld-collate.c:905 locale/programs/ld-collate.c:2735 +#: locale/programs/ld-collate.c:2756 locale/programs/ld-collate.c:4110 +#: locale/programs/ld-ctype.c:1985 locale/programs/ld-ctype.c:2244 +#: locale/programs/ld-ctype.c:2831 locale/programs/ld-ctype.c:3017 +#: locale/programs/ld-identification.c:459 +#: locale/programs/ld-measurement.c:245 locale/programs/ld-messages.c:339 +#: locale/programs/ld-monetary.c:950 locale/programs/ld-name.c:314 +#: locale/programs/ld-numeric.c:375 locale/programs/ld-paper.c:248 +#: locale/programs/ld-telephone.c:320 locale/programs/ld-time.c:1228 +#, c-format +msgid "%s: syntax error" +msgstr "%s: 語法錯誤" -#: locale/programs/locfile.c:781 -msgid "expect string argument for `copy'" -msgstr "`copy' 的參數應該是字串才對" +#: locale/programs/ld-collate.c:419 +#, c-format +msgid "`%.*s' already defined in charmap" +msgstr "`%.*s' 在字集對照表中已經定義過了" -#: locale/programs/locfile.c:785 -msgid "locale name should consist only of portable characters" -msgstr "語區資料的名稱應該用泛用字元 (portable characters) 組成" +#: locale/programs/ld-collate.c:428 +#, c-format +msgid "`%.*s' already defined in repertoire" +msgstr "`%.*s' 在編碼對映檔中已經被定義過了" -#: locale/programs/locfile.c:804 -msgid "no other keyword shall be specified when `copy' is used" -msgstr "使用 `copy' 的時候不應該再用到任何其他的關鍵字了" +#: locale/programs/ld-collate.c:435 +#, c-format +msgid "`%.*s' already defined as collating symbol" +msgstr "`%.*s' 已被定義為對照符號" -#: locale/programs/repertoire.c:230 locale/programs/repertoire.c:271 -#: locale/programs/repertoire.c:296 +#: locale/programs/ld-collate.c:442 #, c-format -msgid "syntax error in repertoire map definition: %s" -msgstr "編碼對映檔中的定義有語法錯誤: %s" +msgid "`%.*s' already defined as collating element" +msgstr "`%.*s' 已被定義為對照元素" -#: locale/programs/repertoire.c:272 -msgid "no or value given" -msgstr "沒有給定 的值" +#: locale/programs/ld-collate.c:473 locale/programs/ld-collate.c:499 +#, c-format +msgid "%s: `forward' and `backward' are mutually excluding each other" +msgstr "%s: `forward' 以及 `backward' 彼此互相排斥" -#: locale/programs/repertoire.c:332 -msgid "cannot save new repertoire map" -msgstr "無法儲存新的編碼對映檔" +#: locale/programs/ld-collate.c:483 locale/programs/ld-collate.c:509 +#: locale/programs/ld-collate.c:525 +#, c-format +msgid "%s: `%s' mentioned more than once in definition of weight %d" +msgstr "%s: `%s' 不只一次地在權重 %d 中被提到" -#: locale/programs/repertoire.c:343 +#: locale/programs/ld-collate.c:581 #, c-format -msgid "repertoire map file `%s' not found" -msgstr "找不到編碼對映檔 `%s'" +msgid "%s: too many rules; first entry only had %d" +msgstr "%s: 太多規則;第一個項目只包含 %d" -#: locale/programs/repertoire.c:450 +#: locale/programs/ld-collate.c:617 #, c-format -msgid "<%s> and <%s> are invalid names for range" -msgstr "<%s> 以及 <%s> 是不適用的範圍名稱" +msgid "%s: not enough sorting rules" +msgstr "%s: 排序規則不足" -#: locale/programs/repertoire.c:457 -msgid "upper limit in range is not smaller then lower limit" -msgstr "區域定義中的最大值沒有比最小值還要小" +#: locale/programs/ld-collate.c:782 +#, c-format +msgid "%s: empty weight string not allowed" +msgstr "%s: 空白的權重字串是不允許的" -#: locale/programs/xmalloc.c:70 malloc/obstack.c:505 malloc/obstack.c:508 -#: posix/getconf.c:1007 -msgid "memory exhausted" -msgstr "記憶體耗盡" +#: locale/programs/ld-collate.c:877 +#, c-format +msgid "%s: weights must use the same ellipsis symbol as the name" +msgstr "%s: 權重必須使用與名稱相同的省略符號" -#: assert/assert-perr.c:57 +#: locale/programs/ld-collate.c:933 #, c-format -msgid "%s%s%s:%u: %s%sUnexpected error: %s.\n" -msgstr "%s%s%s:%u: %s%s無法預料的錯誤: %s。\n" +msgid "%s: too many values" +msgstr "%s: 太多變數值" -#: assert/assert.c:56 +#: locale/programs/ld-collate.c:1053 locale/programs/ld-collate.c:1228 #, c-format -msgid "%s%s%s:%u: %s%sAssertion `%s' failed.\n" -msgstr "%s%s%s:%u: %s%sAssertion `%s' 失敗。\n" +msgid "order for `%.*s' already defined at %s:%Zu" +msgstr "`%.*s' 的順序已經在 %s:%Zu 裡面定義了" -#: intl/tst-codeset.c:40 intl/tst-codeset.c:50 -msgid "cheese" -msgstr "請微笑" +#: locale/programs/ld-collate.c:1103 +#, c-format +msgid "%s: the start and the end symbol of a range must stand for characters" +msgstr "%s: 啟始與結束符號範圍必須代表字元" -#: intl/tst-gettext2.c:37 -msgid "First string for testing." -msgstr "第一個字串接受測試。" +#: locale/programs/ld-collate.c:1130 +#, c-format +msgid "%s: byte sequences of first and last character must have the same length" +msgstr "%s: 第一個與最後一個字元的位元組序列必須有相同的長度" -#: intl/tst-gettext2.c:38 -msgid "Another string for testing." -msgstr "另一個受測試的字串。" +#: locale/programs/ld-collate.c:1172 +#, c-format +msgid "%s: byte sequence of first character of range is not lower than that of the last character" +msgstr "%s: 範圍首字元的位元組序列沒有低於末字元的位元組序列" -#: catgets/gencat.c:111 catgets/gencat.c:115 nscd/nscd.c:88 -msgid "NAME" -msgstr "名稱" +#: locale/programs/ld-collate.c:1297 +#, c-format +msgid "%s: symbolic range ellipsis must not directly follow `order_start'" +msgstr "%s: 符號範圍的省略不可以直接在 `order_start' 之後" -#: catgets/gencat.c:112 -msgid "Create C header file NAME containing symbol definitions" -msgstr "產生的 C 標頭檔名內含符號定義" +#: locale/programs/ld-collate.c:1301 +#, c-format +msgid "%s: symbolic range ellipsis must not be directly followed by `order_end'" +msgstr "%s: 符號範圍的省略不可以直接在 `order_end' 之前" -#: catgets/gencat.c:114 -msgid "Do not use existing catalog, force new output file" -msgstr "不使用現存的 catalog, 強制使用新的輸出檔" +#: locale/programs/ld-collate.c:1321 locale/programs/ld-ctype.c:1502 +#, c-format +msgid "`%s' and `%.*s' are not valid names for symbolic range" +msgstr "`%s' 和 `%.*s' 皆非符號範圍中適用的名稱" -#: catgets/gencat.c:115 -msgid "Write output to file NAME" -msgstr "將輸出寫到檔案 NAME 中" +#: locale/programs/ld-collate.c:1371 locale/programs/ld-collate.c:3861 +#, c-format +msgid "%s: order for `%.*s' already defined at %s:%Zu" +msgstr "%s: `%.*s' 的順序已在 %s:%Zu 中定義" -#: catgets/gencat.c:120 -msgid "" -"Generate message catalog. If INPUT-FILE is -, input is read from standard input. If OUTPUT-FILE\n" -"is -, output is written to standard output.\n" -msgstr "" -"產生訊息 catelog。\\v如果輸入檔名是 -, 將從標準輸入讀取輸入。\n" -"如果輸出檔名是 -, 則輸出將寫到標準輸出去。\n" +#: locale/programs/ld-collate.c:1380 +#, c-format +msgid "%s: `%s' must be a character" +msgstr "%s: `%s' 必須是一個字元" -#: catgets/gencat.c:125 -msgid "" -"-o OUTPUT-FILE [INPUT-FILE]...\n" -"[OUTPUT-FILE [INPUT-FILE]...]" -msgstr "" -"-o 輸出檔案名稱 [輸入檔案名稱]...\n" -"[輸出檔案名稱 [輸入檔案名稱]...]" +#: locale/programs/ld-collate.c:1575 +#, c-format +msgid "%s: `position' must be used for a specific level in all sections or none" +msgstr "%s: `position' 必須在所有區塊裡特定的等級中使用,否則不能使用" -#: catgets/gencat.c:282 -msgid "*standard input*" -msgstr "*標準輸入*" +#: locale/programs/ld-collate.c:1600 +#, c-format +msgid "symbol `%s' not defined" +msgstr "並未定義 `%s' 符號" -#: catgets/gencat.c:417 catgets/gencat.c:494 -msgid "illegal set number" -msgstr "不合法的集合編號" +#: locale/programs/ld-collate.c:1676 locale/programs/ld-collate.c:1782 +#, c-format +msgid "symbol `%s' has the same encoding as" +msgstr "跟符號 `%s' 有相同的編碼: " -#: catgets/gencat.c:444 -msgid "duplicate set definition" -msgstr "複製集合定義" +#: locale/programs/ld-collate.c:1680 locale/programs/ld-collate.c:1786 +#, c-format +msgid "symbol `%s'" +msgstr "符號 `%s'" -#: catgets/gencat.c:446 catgets/gencat.c:623 catgets/gencat.c:677 -msgid "this is the first definition" -msgstr "此為第一個定義" +#: locale/programs/ld-collate.c:1828 +#, c-format +msgid "no definition of `UNDEFINED'" +msgstr "沒有找到 `UNDEFINED' 的定義" -#: catgets/gencat.c:522 +#: locale/programs/ld-collate.c:1857 #, c-format -msgid "unknown set `%s'" -msgstr "不明的集合 `%s'" +msgid "too many errors; giving up" +msgstr "發生太多錯誤;放棄中" -#: catgets/gencat.c:563 -msgid "invalid quote character" -msgstr "不適用的引用字元" +#: locale/programs/ld-collate.c:2661 locale/programs/ld-collate.c:4049 +#, c-format +msgid "%s: nested conditionals not supported" +msgstr "%s: 不支援巢狀條件" -#: catgets/gencat.c:576 +#: locale/programs/ld-collate.c:2679 #, c-format -msgid "unknown directive `%s': line ignored" -msgstr "不明的指令 `%s': 此行忽略" +msgid "%s: more then one 'else'" +msgstr "%s: 使用多於一個「else」" -#: catgets/gencat.c:621 -msgid "duplicated message number" -msgstr "重複的訊息編號" +#: locale/programs/ld-collate.c:2854 +#, c-format +msgid "%s: duplicate definition of `%s'" +msgstr "%s: 重複的定義 `%s'" -#: catgets/gencat.c:674 -msgid "duplicated message identifier" -msgstr "重複的訊息識別符號" +#: locale/programs/ld-collate.c:2890 +#, c-format +msgid "%s: duplicate declaration of section `%s'" +msgstr "%s: 重複的 `%s' 區塊宣告" -#: catgets/gencat.c:731 -msgid "invalid character: message ignored" -msgstr "不適用的字元: 忽略此訊息" +#: locale/programs/ld-collate.c:3026 +#, c-format +msgid "%s: unknown character in collating symbol name" +msgstr "%s: 未知的字元在對照符號名稱中" -#: catgets/gencat.c:774 -msgid "invalid line" -msgstr "無效的輸入列" +#: locale/programs/ld-collate.c:3155 +#, c-format +msgid "%s: unknown character in equivalent definition name" +msgstr "%s: 未知的字元在同義定義名稱中" -#: catgets/gencat.c:828 -msgid "malformed line ignored" -msgstr "忽略奇怪的行" +#: locale/programs/ld-collate.c:3166 +#, c-format +msgid "%s: unknown character in equivalent definition value" +msgstr "%s: 未知的字元在同義定義值中" -#: catgets/gencat.c:992 catgets/gencat.c:1033 +#: locale/programs/ld-collate.c:3176 #, c-format -msgid "cannot open output file `%s'" -msgstr "無法開啟輸出檔 `%s'" +msgid "%s: unknown symbol `%s' in equivalent definition" +msgstr "%s: 未知的符號 `%s' 在同義定義中" -#: catgets/gencat.c:1217 -msgid "unterminated message" -msgstr "沒有結尾的訊息" +#: locale/programs/ld-collate.c:3185 +msgid "error while adding equivalent collating symbol" +msgstr "正在加入同義對照符號時發生錯誤" -#: catgets/gencat.c:1241 -msgid "while opening old catalog file" -msgstr "在開啟舊的類別檔案時" +#: locale/programs/ld-collate.c:3223 +#, c-format +msgid "duplicate definition of script `%s'" +msgstr "敘述 `%s' 的定義重複了" -#: catgets/gencat.c:1332 -msgid "conversion modules not available" -msgstr "轉換模組不存在" +#: locale/programs/ld-collate.c:3271 +#, c-format +msgid "%s: unknown section name `%.*s'" +msgstr "%s: 不明的節段名稱「%.*s」" -#: catgets/gencat.c:1358 -msgid "cannot determine escape character" -msgstr "無法決定跳脫 (escape) 字元" +#: locale/programs/ld-collate.c:3300 +#, c-format +msgid "%s: multiple order definitions for section `%s'" +msgstr "%s: `%s' 區塊中有多個順序定義" -#: stdlib/../sysdeps/unix/sysv/linux/ia64/makecontext.c:63 +#: locale/programs/ld-collate.c:3328 #, c-format -msgid "makecontext: does not know how to handle more than 8 arguments\n" -msgstr "makecontext: 不知要如何處理超過八個引數\n" +msgid "%s: invalid number of sorting rules" +msgstr "%s: 不適用的排序規則數目" -#: stdio-common/../sysdeps/gnu/errlist.c:12 posix/regcomp.c:147 -#: nis/nis_error.c:29 nis/ypclnt.c:778 nis/ypclnt.c:852 -msgid "Success" -msgstr "成功" +#: locale/programs/ld-collate.c:3355 +#, c-format +msgid "%s: multiple order definitions for unnamed section" +msgstr "%s: 未命名的區塊中有多個順序定義" -#. TRANS Operation not permitted; only the owner of the file (or other resource) -#. TRANS or processes with special privileges can perform the operation. -#: stdio-common/../sysdeps/gnu/errlist.c:17 -msgid "Operation not permitted" -msgstr "此項操作並不被允許" +#: locale/programs/ld-collate.c:3410 locale/programs/ld-collate.c:3540 +#: locale/programs/ld-collate.c:3903 +#, c-format +msgid "%s: missing `order_end' keyword" +msgstr "%s: 缺少 `order_end' 關鍵字" -#. TRANS No such file or directory. This is a ``file doesn't exist'' error -#. TRANS for ordinary files that are referenced in contexts where they are -#. TRANS expected to already exist. -#: stdio-common/../sysdeps/gnu/errlist.c:28 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:32 -msgid "No such file or directory" -msgstr "沒有此一檔案或目錄" +#: locale/programs/ld-collate.c:3473 +#, c-format +msgid "%s: order for collating symbol %.*s not yet defined" +msgstr "%s: 對照符號 %.*s 的順序尚未定義" -#. TRANS No process matches the specified process ID. -#: stdio-common/../sysdeps/gnu/errlist.c:37 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:33 -msgid "No such process" -msgstr "沒有此一程序" +#: locale/programs/ld-collate.c:3491 +#, c-format +msgid "%s: order for collating element %.*s not yet defined" +msgstr "%s: 對照元素 %.*s 的順序尚未定義" -#. TRANS Interrupted function call; an asynchronous signal occurred and prevented -#. TRANS completion of the call. When this happens, you should try the call -#. TRANS again. -#. TRANS -#. TRANS You can choose to have functions resume after a signal that is handled, -#. TRANS rather than failing with @code{EINTR}; see @ref{Interrupted -#. TRANS Primitives}. -#: stdio-common/../sysdeps/gnu/errlist.c:52 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:34 -msgid "Interrupted system call" -msgstr "中斷的系統呼叫" +#: locale/programs/ld-collate.c:3502 +#, c-format +msgid "%s: cannot reorder after %.*s: symbol not known" +msgstr "%s: 無法重新排列在 %.*s 之後: 未知的符號" -#. TRANS Input/output error; usually used for physical read or write errors. -#: stdio-common/../sysdeps/gnu/errlist.c:61 -msgid "Input/output error" -msgstr "輸入/輸出錯誤" +#: locale/programs/ld-collate.c:3554 locale/programs/ld-collate.c:3915 +#, c-format +msgid "%s: missing `reorder-end' keyword" +msgstr "%s: 缺少 `reorder-end' 關鍵字" -#. TRANS No such device or address. The system tried to use the device -#. TRANS represented by a file you specified, and it couldn't find the device. -#. TRANS This can mean that the device file was installed incorrectly, or that -#. TRANS the physical device is missing or not correctly attached to the -#. TRANS computer. -#: stdio-common/../sysdeps/gnu/errlist.c:74 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:36 -msgid "No such device or address" -msgstr "沒有此一裝置或位址" +#: locale/programs/ld-collate.c:3588 locale/programs/ld-collate.c:3786 +#, c-format +msgid "%s: section `%.*s' not known" +msgstr "%s: 未知的區塊 `%.*s'" -#. TRANS Argument list too long; used when the arguments passed to a new program -#. TRANS being executed with one of the @code{exec} functions (@pxref{Executing a -#. TRANS File}) occupy too much memory space. This condition never arises in the -#. TRANS GNU system. -#: stdio-common/../sysdeps/gnu/errlist.c:86 -msgid "Argument list too long" -msgstr "引數列項目過長" +#: locale/programs/ld-collate.c:3653 +#, c-format +msgid "%s: bad symbol <%.*s>" +msgstr "%s: 不當的符號 <%.*s>" -#. TRANS Invalid executable file format. This condition is detected by the -#. TRANS @code{exec} functions; see @ref{Executing a File}. -#: stdio-common/../sysdeps/gnu/errlist.c:96 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:38 -msgid "Exec format error" -msgstr "可執行檔格式錯誤" +#: locale/programs/ld-collate.c:3849 +#, c-format +msgid "%s: cannot have `%s' as end of ellipsis range" +msgstr "%s: 無法用 `%s' 做為省略區段的結尾" -#. TRANS Bad file descriptor; for example, I/O on a descriptor that has been -#. TRANS closed or reading from a descriptor open only for writing (or vice -#. TRANS versa). -#: stdio-common/../sysdeps/gnu/errlist.c:107 -msgid "Bad file descriptor" -msgstr "錯誤的檔案敘述項" +#: locale/programs/ld-collate.c:3899 +#, c-format +msgid "%s: empty category description not allowed" +msgstr "%s: 空白的類別描述是不允許的" -#. TRANS There are no child processes. This error happens on operations that are -#. TRANS supposed to manipulate child processes, when there aren't any processes -#. TRANS to manipulate. -#: stdio-common/../sysdeps/gnu/errlist.c:118 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:40 -msgid "No child processes" -msgstr "沒有子程序存在" +#: locale/programs/ld-collate.c:3918 +#, c-format +msgid "%s: missing `reorder-sections-end' keyword" +msgstr "%s: 缺少 `reorder-sections-end' 關鍵字" -#. TRANS Deadlock avoided; allocating a system resource would have resulted in a -#. TRANS deadlock situation. The system does not guarantee that it will notice -#. TRANS all such situations. This error means you got lucky and the system -#. TRANS noticed; it might just hang. @xref{File Locks}, for an example. -#: stdio-common/../sysdeps/gnu/errlist.c:130 -msgid "Resource deadlock avoided" -msgstr "避開資源鎖定" +#: locale/programs/ld-collate.c:4082 +#, c-format +msgid "%s: '%s' without matching 'ifdef' or 'ifndef'" +msgstr "%s:「%s」而不需吻合中「ifdef」或「ifndef」" -#. TRANS No memory available. The system cannot allocate more virtual memory -#. TRANS because its capacity is full. -#: stdio-common/../sysdeps/gnu/errlist.c:140 -msgid "Cannot allocate memory" -msgstr "無法配置記憶體" +#: locale/programs/ld-collate.c:4100 +#, c-format +msgid "%s: 'endif' without matching 'ifdef' or 'ifndef'" +msgstr "%s:「endif」而不需吻合中「ifdef」或「ifndef」" -#. TRANS Permission denied; the file permissions do not allow the attempted operation. -#: stdio-common/../sysdeps/gnu/errlist.c:149 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:43 -#: nis/nis_error.c:39 nis/ypclnt.c:808 -msgid "Permission denied" -msgstr "拒絕不符權限的操作" +#: locale/programs/ld-ctype.c:440 +#, c-format +msgid "No character set name specified in charmap" +msgstr "在字元對應 (charmap) 中沒有設定字集名稱" + +#: locale/programs/ld-ctype.c:469 +#, c-format +msgid "character L'\\u%0*x' in class `%s' must be in class `%s'" +msgstr "character L'\\u%0*x' (放在類別 `%s' 之中) 必須在類別 `%s' 裡面" + +#: locale/programs/ld-ctype.c:484 +#, c-format +msgid "character L'\\u%0*x' in class `%s' must not be in class `%s'" +msgstr "character L'\\u%0*x' (放在類別 `%s' 之中) 不能在類別 `%s' 裡面" + +#: locale/programs/ld-ctype.c:498 locale/programs/ld-ctype.c:556 +#, c-format +msgid "internal error in %s, line %u" +msgstr "%s 的第 %u 列發生內部錯誤" + +#: locale/programs/ld-ctype.c:527 +#, c-format +msgid "character '%s' in class `%s' must be in class `%s'" +msgstr "字元 '%s' (放在類別 `%s' 之中) 必須在類別 `%s' 裡面" + +#: locale/programs/ld-ctype.c:543 +#, c-format +msgid "character '%s' in class `%s' must not be in class `%s'" +msgstr "字元 '%s' (放在類別 `%s' 之中) 不能在類別 `%s' 裡面" + +#: locale/programs/ld-ctype.c:573 locale/programs/ld-ctype.c:611 +#, c-format +msgid " character not in class `%s'" +msgstr " 字元不在類別 `%s' 中" + +#: locale/programs/ld-ctype.c:585 locale/programs/ld-ctype.c:622 +#, c-format +msgid " character must not be in class `%s'" +msgstr " 字元不可以在類別 `%s' 中" + +#: locale/programs/ld-ctype.c:600 +#, c-format +msgid "character not defined in character map" +msgstr "字元 在字集對照檔中沒有定義" + +#: locale/programs/ld-ctype.c:736 +#, c-format +msgid "`digit' category has not entries in groups of ten" +msgstr "`digit' 類別在群組 \"十\" 中沒有項目" + +#: locale/programs/ld-ctype.c:785 +#, c-format +msgid "no input digits defined and none of the standard names in the charmap" +msgstr "沒有定義輸入數字,在字集對照檔中也找不到相符的標準名稱" + +#: locale/programs/ld-ctype.c:850 +#, c-format +msgid "not all characters used in `outdigit' are available in the charmap" +msgstr "在字集對照表中無法找到某些在 `outdigit' 中用到的字元" + +#: locale/programs/ld-ctype.c:867 +#, c-format +msgid "not all characters used in `outdigit' are available in the repertoire" +msgstr "在編碼對映檔中無法找到某些在 `outdigit' 中用到的字元" + +#: locale/programs/ld-ctype.c:1270 +#, c-format +msgid "character class `%s' already defined" +msgstr "字元類別 `%s' 已經定義過了" + +#: locale/programs/ld-ctype.c:1276 +#, c-format +msgid "implementation limit: no more than %Zd character classes allowed" +msgstr "程式實作的限制: 不能使用超過 %Zd 個字集類別" + +#: locale/programs/ld-ctype.c:1302 +#, c-format +msgid "character map `%s' already defined" +msgstr "字集對照檔 `%s' 已經定義過了" + +#: locale/programs/ld-ctype.c:1308 +#, c-format +msgid "implementation limit: no more than %d character maps allowed" +msgstr "程式實作的限制: 不能使用超過 %d 個字集對照檔" + +#: locale/programs/ld-ctype.c:1573 locale/programs/ld-ctype.c:1698 +#: locale/programs/ld-ctype.c:1804 locale/programs/ld-ctype.c:2496 +#: locale/programs/ld-ctype.c:3492 +#, c-format +msgid "%s: field `%s' does not contain exactly ten entries" +msgstr "%s: `%s' 欄位沒有精確包含十個項目" + +#: locale/programs/ld-ctype.c:1601 locale/programs/ld-ctype.c:2175 +#, c-format +msgid "to-value of range is smaller than from-value " +msgstr "區域定義的結尾值 比起始值 還要小" + +#: locale/programs/ld-ctype.c:1728 +msgid "start and end character sequence of range must have the same length" +msgstr "從起始到結束之間的字元序列長度跟編碼範圍必須相同" + +#: locale/programs/ld-ctype.c:1735 +msgid "to-value character sequence is smaller than from-value sequence" +msgstr "字元序列定義的結尾值比起始值還要小" + +#: locale/programs/ld-ctype.c:2095 locale/programs/ld-ctype.c:2146 +msgid "premature end of `translit_ignore' definition" +msgstr "`translit_ignore' 定義沒有按時結束" + +#: locale/programs/ld-ctype.c:2101 locale/programs/ld-ctype.c:2152 +#: locale/programs/ld-ctype.c:2194 +msgid "syntax error" +msgstr "語法錯誤" + +#: locale/programs/ld-ctype.c:2328 +#, c-format +msgid "%s: syntax error in definition of new character class" +msgstr "%s: 在定義新字元類別時語法錯誤" + +#: locale/programs/ld-ctype.c:2343 +#, c-format +msgid "%s: syntax error in definition of new character map" +msgstr "%s: 在定義新字元對應時語法錯誤" + +#: locale/programs/ld-ctype.c:2518 +msgid "ellipsis range must be marked by two operands of same type" +msgstr "省略區域必須用兩個型別相同的運算元標示出來" + +#: locale/programs/ld-ctype.c:2527 +msgid "with symbolic name range values the absolute ellipsis `...' must not be used" +msgstr "用符號名稱來指定字元編碼範圍時不可以用絕對位置的省略符號 `...'" + +#: locale/programs/ld-ctype.c:2542 +msgid "with UCS range values one must use the hexadecimal symbolic ellipsis `..'" +msgstr "用來指定 UCS 值的範圍時得用十六進位表示的省略符號 `..'" + +#: locale/programs/ld-ctype.c:2556 +msgid "with character code range values one must use the absolute ellipsis `...'" +msgstr "用來指定字元編碼值的範圍時得用絕對位置的省略符號 `...'" + +#: locale/programs/ld-ctype.c:2707 +#, c-format +msgid "duplicated definition for mapping `%s'" +msgstr "對映 `%s' 的定義重複了" + +#: locale/programs/ld-ctype.c:2793 locale/programs/ld-ctype.c:2937 +#, c-format +msgid "%s: `translit_start' section does not end with `translit_end'" +msgstr "%s: `translit_start' 小節並沒有以 `translit_end' 做為結束" + +#: locale/programs/ld-ctype.c:2888 +#, c-format +msgid "%s: duplicate `default_missing' definition" +msgstr "%s: 重複的 `default_missing' 定義" + +#: locale/programs/ld-ctype.c:2893 +msgid "previous definition was here" +msgstr "先前的設定在此" + +#: locale/programs/ld-ctype.c:2915 +#, c-format +msgid "%s: no representable `default_missing' definition found" +msgstr "%s: 找不到可表示為 `default_missing' 的定義" + +#: locale/programs/ld-ctype.c:3068 locale/programs/ld-ctype.c:3152 +#: locale/programs/ld-ctype.c:3172 locale/programs/ld-ctype.c:3193 +#: locale/programs/ld-ctype.c:3214 locale/programs/ld-ctype.c:3235 +#: locale/programs/ld-ctype.c:3256 locale/programs/ld-ctype.c:3296 +#: locale/programs/ld-ctype.c:3317 locale/programs/ld-ctype.c:3384 +#: locale/programs/ld-ctype.c:3426 locale/programs/ld-ctype.c:3451 +#, c-format +msgid "%s: character `%s' not defined while needed as default value" +msgstr "%s: 字元 `%s' 沒有定義,但它是必需的預設值" + +#: locale/programs/ld-ctype.c:3073 locale/programs/ld-ctype.c:3157 +#: locale/programs/ld-ctype.c:3177 locale/programs/ld-ctype.c:3198 +#: locale/programs/ld-ctype.c:3219 locale/programs/ld-ctype.c:3240 +#: locale/programs/ld-ctype.c:3261 locale/programs/ld-ctype.c:3301 +#: locale/programs/ld-ctype.c:3322 locale/programs/ld-ctype.c:3389 +#, c-format +msgid "%s: character `%s' in charmap not representable with one byte" +msgstr "%s: 字集對照表中的字元 `%s' 無法表示為單一位元組" + +#: locale/programs/ld-ctype.c:3433 locale/programs/ld-ctype.c:3458 +#, c-format +msgid "%s: character `%s' needed as default value not representable with one byte" +msgstr "%s: 做為預設值所需的字元 `%s' 無法表示為單一位元組" + +#: locale/programs/ld-ctype.c:3514 +#, c-format +msgid "no output digits defined and none of the standard names in the charmap" +msgstr "沒有定義輸出數字,在字集對照檔中也找不到相符的標準名稱" + +#: locale/programs/ld-ctype.c:3805 +#, c-format +msgid "%s: transliteration data from locale `%s' not available" +msgstr "%s: 語區資料`%s' 的音譯資料不存在" + +#: locale/programs/ld-ctype.c:3906 +#, c-format +msgid "%s: table for class \"%s\": %lu bytes\n" +msgstr "%s: 類別 \"%s\" 表格: %lu 位元組\n" + +#: locale/programs/ld-ctype.c:3975 +#, c-format +msgid "%s: table for map \"%s\": %lu bytes\n" +msgstr "%s: 對映表 \"%s\" 表格: %lu 位元組\n" + +#: locale/programs/ld-ctype.c:4108 +#, c-format +msgid "%s: table for width: %lu bytes\n" +msgstr "%s: 寬度表格: %lu 位元組\n" + +#: locale/programs/ld-identification.c:170 +#, c-format +msgid "%s: no identification for category `%s'" +msgstr "%s: 類別 `%s' 沒有認證" + +#: locale/programs/ld-identification.c:435 +#, c-format +msgid "%s: duplicate category version definition" +msgstr "%s: 重複的類別版本定義" + +#: locale/programs/ld-measurement.c:113 +#, c-format +msgid "%s: invalid value for field `%s'" +msgstr "%s: 在欄位 `%s' 中的值不適用" + +#: locale/programs/ld-messages.c:114 locale/programs/ld-messages.c:148 +#, c-format +msgid "%s: field `%s' undefined" +msgstr "%s: 欄位 `%s' 沒有定義" + +#: locale/programs/ld-messages.c:121 locale/programs/ld-messages.c:155 +#: locale/programs/ld-monetary.c:256 locale/programs/ld-numeric.c:118 +#, c-format +msgid "%s: value for field `%s' must not be an empty string" +msgstr "%s: 欄位 `%s' 值不可以是空字串" + +#: locale/programs/ld-messages.c:137 locale/programs/ld-messages.c:171 +#, c-format +msgid "%s: no correct regular expression for field `%s': %s" +msgstr "%s: 沒有給欄位 `%s' 正確的常規表示式: %s" + +#: locale/programs/ld-monetary.c:224 +#, c-format +msgid "%s: value of field `int_curr_symbol' has wrong length" +msgstr "%s: 欄位 `int_curr_symbol' 值的長度錯誤" + +#: locale/programs/ld-monetary.c:237 +#, c-format +msgid "%s: value of field `int_curr_symbol' does not correspond to a valid name in ISO 4217" +msgstr "%s: 欄位 `int_curr_symbol' 值並不是 ISO 4217 中合法的名稱" + +#: locale/programs/ld-monetary.c:285 locale/programs/ld-monetary.c:315 +#, c-format +msgid "%s: value for field `%s' must be in range %d...%d" +msgstr "%s: 欄位 `%s' 的值必須在範圍 %d...%d" + +#: locale/programs/ld-monetary.c:747 locale/programs/ld-numeric.c:274 +#, c-format +msgid "%s: value for field `%s' must be a single character" +msgstr "%s: 欄位 `%s' 的值必須是個單一字元" + +#: locale/programs/ld-monetary.c:844 locale/programs/ld-numeric.c:318 +#, c-format +msgid "%s: `-1' must be last entry in `%s' field" +msgstr "%s: `-1' 在 `%s' 欄位中必須是最後一個項目" + +#: locale/programs/ld-monetary.c:866 locale/programs/ld-numeric.c:335 +#, c-format +msgid "%s: values for field `%s' must be smaller than 127" +msgstr "%s: 欄位 `%s' 的值必須小於 127" + +#: locale/programs/ld-monetary.c:909 +msgid "conversion rate value cannot be zero" +msgstr "轉換率的值不可以是零" + +#: locale/programs/ld-name.c:129 locale/programs/ld-telephone.c:126 +#: locale/programs/ld-telephone.c:149 +#, c-format +msgid "%s: invalid escape sequence in field `%s'" +msgstr "%s: 在欄位 `%s' 中的跳脫序列不適用" + +#: locale/programs/ld-time.c:247 +#, c-format +msgid "%s: direction flag in string %Zd in `era' field is not '+' nor '-'" +msgstr "%s: 在 `era' 欄位的字串 %Zd 中,方向旗標既不是 '+' 也不是 '-'" + +#: locale/programs/ld-time.c:258 +#, c-format +msgid "%s: direction flag in string %Zd in `era' field is not a single character" +msgstr "%s: 在 `era' 欄位的字串 %Zd 中,方向旗標不是一個單一字元" + +#: locale/programs/ld-time.c:271 +#, c-format +msgid "%s: invalid number for offset in string %Zd in `era' field" +msgstr "%s: 在 `era' 欄位、字串 %Zd 中的位移數字不適用" + +#: locale/programs/ld-time.c:279 +#, c-format +msgid "%s: garbage at end of offset value in string %Zd in `era' field" +msgstr "%s: 無用的資料,在 `era' 欄位、字串 %Zd 中末尾的位移值" + +#: locale/programs/ld-time.c:330 +#, c-format +msgid "%s: invalid starting date in string %Zd in `era' field" +msgstr "%s: 在 `era' 欄位、字串 %Zd 中的起始日期不適用" + +#: locale/programs/ld-time.c:339 +#, c-format +msgid "%s: garbage at end of starting date in string %Zd in `era' field " +msgstr "%s: 無用的資料,在 `era' 欄位、字串 %Zd 中末尾的起始日期" + +#: locale/programs/ld-time.c:358 +#, c-format +msgid "%s: starting date is invalid in string %Zd in `era' field" +msgstr "%s: 在 `era' 區域的字串 %Zd 中的啟始日期是不適用的" + +#: locale/programs/ld-time.c:407 locale/programs/ld-time.c:435 +#, c-format +msgid "%s: invalid stopping date in string %Zd in `era' field" +msgstr "%s: 在 `era' 欄位、字串 %Zd 中的結束日期不適用" + +#: locale/programs/ld-time.c:416 +#, c-format +msgid "%s: garbage at end of stopping date in string %Zd in `era' field" +msgstr "%s: 無用的資料,在 `era' 區域、字串 %Zd 中末尾的結束日期" + +#: locale/programs/ld-time.c:444 +#, c-format +msgid "%s: missing era name in string %Zd in `era' field" +msgstr "%s: 缺少 era 名稱,在 `era' 欄位、字串 %Zd 中" + +#: locale/programs/ld-time.c:456 +#, c-format +msgid "%s: missing era format in string %Zd in `era' field" +msgstr "%s: 缺少 era 格式,在 `era' 欄位、字串 %Zd 中" + +#: locale/programs/ld-time.c:497 +#, c-format +msgid "%s: third operand for value of field `%s' must not be larger than %d" +msgstr "%s: 欄位 `%s' 值的第三個運算元不可以比 %d 大" + +#: locale/programs/ld-time.c:505 locale/programs/ld-time.c:513 +#: locale/programs/ld-time.c:521 +#, c-format +msgid "%s: values for field `%s' must not be larger than %d" +msgstr "%s: 欄位 `%s' 的值不可以大於 %d" + +#: locale/programs/ld-time.c:1004 +#, c-format +msgid "%s: too few values for field `%s'" +msgstr "%s: 欄位 `%s' 中的值太少" + +#: locale/programs/ld-time.c:1049 +msgid "extra trailing semicolon" +msgstr "多出的尾端分號" + +#: locale/programs/ld-time.c:1052 +#, c-format +msgid "%s: too many values for field `%s'" +msgstr "%s: 欄位 `%s' 中的值太多" + +#: locale/programs/linereader.c:130 +msgid "trailing garbage at end of line" +msgstr "列結尾的無用字元" + +#: locale/programs/linereader.c:298 +msgid "garbage at end of number" +msgstr "號碼結束位置的無用資料" + +#: locale/programs/linereader.c:410 +msgid "garbage at end of character code specification" +msgstr "字元編碼設定結束位置的無用資料" + +#: locale/programs/linereader.c:496 +msgid "unterminated symbolic name" +msgstr "沒有結尾的符號名稱" + +#: locale/programs/linereader.c:623 +msgid "illegal escape sequence at end of string" +msgstr "字串結尾有不合法的跳脫序列" + +#: locale/programs/linereader.c:627 locale/programs/linereader.c:855 +msgid "unterminated string" +msgstr "沒有結尾的字串" + +#: locale/programs/linereader.c:669 +msgid "non-symbolic character value should not be used" +msgstr "非符號性的字元值不應該被使用才對" + +#: locale/programs/linereader.c:816 +#, c-format +msgid "symbol `%.*s' not in charmap" +msgstr "符號 `%.*s' 並不在字集對照表中" + +#: locale/programs/linereader.c:837 +#, c-format +msgid "symbol `%.*s' not in repertoire map" +msgstr "符號 `%.*s' 並不在編碼對映檔中" + +#: locale/programs/locale-spec.c:131 +#, c-format +msgid "unknown name \"%s\"" +msgstr "不明名稱「%s」" + +#: locale/programs/locale.c:74 +msgid "System information:" +msgstr "系統相關資訊:" + +#: locale/programs/locale.c:76 +msgid "Write names of available locales" +msgstr "寫出存在的語區資料名稱" + +#: locale/programs/locale.c:78 +msgid "Write names of available charmaps" +msgstr "寫出存在的字集對照表名稱" + +#: locale/programs/locale.c:79 +msgid "Modify output format:" +msgstr "修改輸出格式:" + +#: locale/programs/locale.c:80 +msgid "Write names of selected categories" +msgstr "寫出選取的類別名稱" + +#: locale/programs/locale.c:81 +msgid "Write names of selected keywords" +msgstr "寫出選取的關鍵字名稱" + +#: locale/programs/locale.c:82 +msgid "Print more information" +msgstr "印出更多的資訊" + +#: locale/programs/locale.c:87 +msgid "Get locale-specific information." +msgstr "取得語區資料特定的資訊" + +#: locale/programs/locale.c:90 +msgid "" +"NAME\n" +"[-a|-m]" +msgstr "" +"名稱\n" +"[-a|-m]" + +#: locale/programs/locale.c:194 +#, c-format +msgid "Cannot set LC_CTYPE to default locale" +msgstr "無法將 LC_CTYPE 設置為預設的語區" + +#: locale/programs/locale.c:196 +#, c-format +msgid "Cannot set LC_MESSAGES to default locale" +msgstr "無法將 LC_MESSAGES 設置為預設的語區" + +#: locale/programs/locale.c:209 +#, c-format +msgid "Cannot set LC_COLLATE to default locale" +msgstr "無法將 LC_COLLATE 設置為預設的語區" + +#: locale/programs/locale.c:225 +#, c-format +msgid "Cannot set LC_ALL to default locale" +msgstr "無法將 LC_ALL 設置為預設的語區" + +#: locale/programs/locale.c:518 +#, c-format +msgid "while preparing output" +msgstr "在準備輸出時" + +#: locale/programs/localedef.c:120 +msgid "Input Files:" +msgstr "輸入檔:" + +#: locale/programs/localedef.c:122 +msgid "Symbolic character names defined in FILE" +msgstr "符號字元的名稱定義在檔案 FILE 中" + +#: locale/programs/localedef.c:123 +msgid "Source definitions are found in FILE" +msgstr "原始資料定義在檔案 FILE 中" + +#: locale/programs/localedef.c:125 +msgid "FILE contains mapping from symbolic names to UCS4 values" +msgstr "檔案 FILE 內含符號名與 UCS4 編碼之間的對映" + +#: locale/programs/localedef.c:129 +msgid "Create output even if warning messages were issued" +msgstr "產生輸出即使是有警告訊息" + +#: locale/programs/localedef.c:130 +msgid "Create old-style tables" +msgstr "產生舊格式的表格" + +#: locale/programs/localedef.c:131 +msgid "Optional output file prefix" +msgstr "可有可無的輸出檔路徑" + +#: locale/programs/localedef.c:132 +msgid "Be strictly POSIX conform" +msgstr "嚴格遵從 POSIX" + +#: locale/programs/localedef.c:134 +msgid "Suppress warnings and information messages" +msgstr "忽略警告與提示訊息" + +#: locale/programs/localedef.c:135 +msgid "Print more messages" +msgstr "印出更多的訊息" + +#: locale/programs/localedef.c:136 +msgid "Archive control:" +msgstr "保存檔控制:" + +#: locale/programs/localedef.c:138 +msgid "Don't add new data to archive" +msgstr "不要加入新資料到保存檔" + +#: locale/programs/localedef.c:140 +msgid "Add locales named by parameters to archive" +msgstr "藉由參數加入語區名稱到保存檔" + +#: locale/programs/localedef.c:141 +msgid "Replace existing archive content" +msgstr "替換已有的保存檔內容" + +#: locale/programs/localedef.c:143 +msgid "Remove locales named by parameters from archive" +msgstr "藉由參數從保存檔中刪除語區名稱" + +#: locale/programs/localedef.c:144 +msgid "List content of archive" +msgstr "列出保存檔的內容" + +#: locale/programs/localedef.c:146 +msgid "locale.alias file to consult when making archive" +msgstr "製作保存檔時查閱 locale.alias 檔案" + +#: locale/programs/localedef.c:151 +msgid "Compile locale specification" +msgstr "編譯語區資料規格" + +#: locale/programs/localedef.c:154 +msgid "" +"NAME\n" +"[--add-to-archive|--delete-from-archive] FILE...\n" +"--list-archive [FILE]" +msgstr "" +"NAME\n" +"[--add-to-archive|--delete-from-archive] 檔案...\n" +"--list-archive [檔案]" + +#: locale/programs/localedef.c:232 +#, c-format +msgid "cannot create directory for output files" +msgstr "無法為輸出檔建立目錄" + +#: locale/programs/localedef.c:243 +#, c-format +msgid "FATAL: system does not define `_POSIX2_LOCALEDEF'" +msgstr "嚴重錯誤: 系統沒有定義 `_POSIX2_LOCALEDEF'" + +#: locale/programs/localedef.c:257 locale/programs/localedef.c:273 +#: locale/programs/localedef.c:599 locale/programs/localedef.c:619 +#, c-format +msgid "cannot open locale definition file `%s'" +msgstr "無法開啟語區資料定義檔 `%s'" + +#: locale/programs/localedef.c:285 +#, c-format +msgid "cannot write output files to `%s'" +msgstr "無法將輸出檔案寫入 `%s'" + +#: locale/programs/localedef.c:366 +#, c-format +msgid "" +"System's directory for character maps : %s\n" +"\t\t repertoire maps: %s\n" +"\t\t locale path : %s\n" +"%s" +msgstr "" +"系統的字元對應目錄:%s\n" +"\t\t 編碼對應:%s\n" +"\t\t 語區路徑 :%s\n" +"%s" + +#: locale/programs/localedef.c:567 +#, c-format +msgid "circular dependencies between locale definitions" +msgstr "有語區資料在定義時發生循環相關的情況" + +#: locale/programs/localedef.c:573 +#, c-format +msgid "cannot add already read locale `%s' a second time" +msgstr " `%s' 語區資料已經用過,不能重複加入" + +#: locale/programs/locarchive.c:92 locale/programs/locarchive.c:338 +#, c-format +msgid "cannot create temporary file" +msgstr "無法產生暫時檔" + +#: locale/programs/locarchive.c:122 locale/programs/locarchive.c:384 +#, c-format +msgid "cannot initialize archive file" +msgstr "無法起始保存檔" + +#: locale/programs/locarchive.c:129 locale/programs/locarchive.c:391 +#, c-format +msgid "cannot resize archive file" +msgstr "無法改變保存檔大小" + +#: locale/programs/locarchive.c:152 locale/programs/locarchive.c:414 +#: locale/programs/locarchive.c:633 +#, c-format +msgid "cannot map archive header" +msgstr "無法註記保存檔表頭" + +#: locale/programs/locarchive.c:174 +#, c-format +msgid "failed to create new locale archive" +msgstr "無法建立新的語區保存檔" + +#: locale/programs/locarchive.c:186 +#, c-format +msgid "cannot change mode of new locale archive" +msgstr "無法改變新的語區資料保存檔狀態" + +#: locale/programs/locarchive.c:285 +#, c-format +msgid "cannot read data from locale archive" +msgstr "無法從語區歸檔讀取資料" + +#: locale/programs/locarchive.c:318 +#, c-format +msgid "cannot map locale archive file" +msgstr "無法映射語區資料保存檔" + +#: locale/programs/locarchive.c:422 +#, c-format +msgid "cannot lock new archive" +msgstr "無法鎖定新的保存檔" + +#: locale/programs/locarchive.c:488 +#, c-format +msgid "cannot extend locale archive file" +msgstr "無法延展語區資料保存檔" + +#: locale/programs/locarchive.c:497 +#, c-format +msgid "cannot change mode of resized locale archive" +msgstr "無法改變已變更大小的語區資料保存檔狀態" + +#: locale/programs/locarchive.c:505 +#, c-format +msgid "cannot rename new archive" +msgstr "無法更改新保存檔名稱" + +#: locale/programs/locarchive.c:558 +#, c-format +msgid "cannot open locale archive \"%s\"" +msgstr "無法開啟語區資料保存檔 \"%s\"" + +#: locale/programs/locarchive.c:563 +#, c-format +msgid "cannot stat locale archive \"%s\"" +msgstr "無法統計語區資料保存檔 \"%s\"" + +#: locale/programs/locarchive.c:582 +#, c-format +msgid "cannot lock locale archive \"%s\"" +msgstr "無法鎖定語區資料保存檔 \"%s\"" + +#: locale/programs/locarchive.c:605 +#, c-format +msgid "cannot read archive header" +msgstr "無法讀取保存檔表頭資料" + +#: locale/programs/locarchive.c:680 +#, c-format +msgid "locale '%s' already exists" +msgstr "語區資料 `%s' 已經存在" + +#: locale/programs/locarchive.c:942 locale/programs/locarchive.c:957 +#: locale/programs/locarchive.c:969 locale/programs/locarchive.c:981 +#: locale/programs/locfile.c:344 +#, c-format +msgid "cannot add to locale archive" +msgstr "無法加入語區資料保存檔" + +#: locale/programs/locarchive.c:1139 +#, c-format +msgid "locale alias file `%s' not found" +msgstr "找不到語區資料別名檔 `%s'" + +#: locale/programs/locarchive.c:1289 +#, c-format +msgid "Adding %s\n" +msgstr "加入 %s 中\n" + +#: locale/programs/locarchive.c:1295 +#, c-format +msgid "stat of \"%s\" failed: %s: ignored" +msgstr "取得 \"%s\" 的資訊時失敗: %s: 已忽略" + +#: locale/programs/locarchive.c:1301 +#, c-format +msgid "\"%s\" is no directory; ignored" +msgstr "\"%s\" 並非目錄; 已忽略" + +#: locale/programs/locarchive.c:1308 +#, c-format +msgid "cannot open directory \"%s\": %s: ignored" +msgstr "無法開啟目錄 \"%s\": %s: 已忽略" + +#: locale/programs/locarchive.c:1380 +#, c-format +msgid "incomplete set of locale files in \"%s\"" +msgstr "不完整的一組語區資料檔案存在於 \"%s\" 之中" + +#: locale/programs/locarchive.c:1444 +#, c-format +msgid "cannot read all files in \"%s\": ignored" +msgstr "無法讀取 \"%s\" 中的所有檔案: 已忽略" + +#: locale/programs/locarchive.c:1514 +#, c-format +msgid "locale \"%s\" not in archive" +msgstr "語區資料 \"%s\" 不在保存檔中" + +#: locale/programs/locfile.c:132 +#, c-format +msgid "argument to `%s' must be a single character" +msgstr "給 `%s' 的引數必須是一個單字元" + +#: locale/programs/locfile.c:252 +msgid "syntax error: not inside a locale definition section" +msgstr "語法錯誤: 不能在語區資料定義區塊裡面使用" + +#: locale/programs/locfile.c:626 +#, c-format +msgid "cannot open output file `%s' for category `%s'" +msgstr "無法開啟輸出檔 `%s' 供類別 `%s' 使用" -#. TRANS Bad address; an invalid pointer was detected. -#. TRANS In the GNU system, this error never happens; you get a signal instead. -#: stdio-common/../sysdeps/gnu/errlist.c:159 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:44 -msgid "Bad address" -msgstr "錯誤的位址" +#: locale/programs/locfile.c:650 +#, c-format +msgid "failure while writing data for category `%s'" +msgstr "正在為類別 `%s' 寫入資料時發生錯誤" -#. TRANS A file that isn't a block special file was given in a situation that -#. TRANS requires one. For example, trying to mount an ordinary file as a file -#. TRANS system in Unix gives this error. -#: stdio-common/../sysdeps/gnu/errlist.c:170 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:45 -msgid "Block device required" -msgstr "必須是區塊裝置 (Block device)" +#: locale/programs/locfile.c:746 +#, c-format +msgid "cannot create output file `%s' for category `%s'" +msgstr "無法建立輸出檔 `%s' 供類別 `%s' 使用" -#. TRANS Resource busy; a system resource that can't be shared is already in use. -#. TRANS For example, if you try to delete a file that is the root of a currently -#. TRANS mounted filesystem, you get this error. -#: stdio-common/../sysdeps/gnu/errlist.c:181 -msgid "Device or resource busy" -msgstr "裝置或系統資源忙碌中" +#: locale/programs/locfile.c:782 +msgid "expecting string argument for `copy'" +msgstr "`copy' 的引數應該是字串才對" -#. TRANS File exists; an existing file was specified in a context where it only -#. TRANS makes sense to specify a new file. -#: stdio-common/../sysdeps/gnu/errlist.c:191 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:47 -msgid "File exists" -msgstr "檔案已存在" +#: locale/programs/locfile.c:786 +msgid "locale name should consist only of portable characters" +msgstr "語區資料的名稱應該以常用字元組成" -#. TRANS An attempt to make an improper link across file systems was detected. -#. TRANS This happens not only when you use @code{link} (@pxref{Hard Links}) but -#. TRANS also when you rename a file with @code{rename} (@pxref{Renaming Files}). -#: stdio-common/../sysdeps/gnu/errlist.c:202 -msgid "Invalid cross-device link" -msgstr "不適用的裝置間連結" +#: locale/programs/locfile.c:805 +msgid "no other keyword shall be specified when `copy' is used" +msgstr "使用 `copy' 的時候不應該再用到任何其他的關鍵字了" -#. TRANS The wrong type of device was given to a function that expects a -#. TRANS particular sort of device. -#: stdio-common/../sysdeps/gnu/errlist.c:212 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:49 -msgid "No such device" -msgstr "沒有此一裝置" +#: locale/programs/locfile.c:819 +#, c-format +msgid "`%1$s' definition does not end with `END %1$s'" +msgstr "`%1$s' 定義沒有以 `END %1$s' 結束" -#. TRANS A file that isn't a directory was specified when a directory is required. -#: stdio-common/../sysdeps/gnu/errlist.c:221 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:50 -msgid "Not a directory" -msgstr "並不是一個目錄" +#: locale/programs/repertoire.c:229 locale/programs/repertoire.c:270 +#: locale/programs/repertoire.c:295 +#, c-format +msgid "syntax error in repertoire map definition: %s" +msgstr "編碼對映檔中的定義有語法錯誤: %s" -#. TRANS File is a directory; you cannot open a directory for writing, -#. TRANS or create or remove hard links to it. -#: stdio-common/../sysdeps/gnu/errlist.c:231 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:51 -msgid "Is a directory" -msgstr "是個目錄" +#: locale/programs/repertoire.c:271 +msgid "no or value given" +msgstr "沒有給定 的值" -#. TRANS Invalid argument. This is used to indicate various kinds of problems -#. TRANS with passing the wrong argument to a library function. -#: stdio-common/../sysdeps/gnu/errlist.c:241 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:52 -msgid "Invalid argument" -msgstr "不適用的引數" +#: locale/programs/repertoire.c:331 +#, c-format +msgid "cannot save new repertoire map" +msgstr "無法儲存新的編碼對映檔" -#. TRANS The current process has too many files open and can't open any more. -#. TRANS Duplicate descriptors do count toward this limit. -#. TRANS -#. TRANS In BSD and GNU, the number of open files is controlled by a resource -#. TRANS limit that can usually be increased. If you get this error, you might -#. TRANS want to increase the @code{RLIMIT_NOFILE} limit or make it unlimited; -#. TRANS @pxref{Limits on Resources}. -#: stdio-common/../sysdeps/gnu/errlist.c:256 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:54 -msgid "Too many open files" -msgstr "開啟太多檔案" +#: locale/programs/repertoire.c:342 +#, c-format +msgid "repertoire map file `%s' not found" +msgstr "找不到編碼對映檔 `%s'" -#. TRANS There are too many distinct file openings in the entire system. Note -#. TRANS that any number of linked channels count as just one file opening; see -#. TRANS @ref{Linked Channels}. This error never occurs in the GNU system. -#: stdio-common/../sysdeps/gnu/errlist.c:267 -msgid "Too many open files in system" -msgstr "系統中太多的開啟檔案" +#: login/programs/pt_chown.c:78 +#, c-format +msgid "Set the owner, group and access permission of the slave pseudo terminal corresponding to the master pseudo terminal passed on file descriptor `%d'. This is the helper program for the `grantpt' function. It is not intended to be run directly from the command line.\n" +msgstr "設定擁有者、群組和存取許可的從屬 pseudo 終端機相應到主 pseudo 終端機傳遞於檔案描述符號「%d」。 這是輔助程式程式用於「grantpt」函式。 它並未預想的為運行直接的地從命令列。\n" -#. TRANS Inappropriate I/O control operation, such as trying to set terminal -#. TRANS modes on an ordinary file. -#: stdio-common/../sysdeps/gnu/errlist.c:277 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:55 -msgid "Inappropriate ioctl for device" -msgstr "不希望的裝置輸出入控制 (ioctl)" +#: login/programs/pt_chown.c:88 +#, c-format +msgid "" +"The owner is set to the current user, the group is set to `%s', and the access permission is set to `%o'.\n" +"\n" +"%s" +msgstr "" +"擁有者為設定到目前使用者,群組為設定到「%s」,而存取許可為設定到「%o」。\n" +"\n" +"%s" -#. TRANS An attempt to execute a file that is currently open for writing, or -#. TRANS write to a file that is currently being executed. Often using a -#. TRANS debugger to run a program is considered having it open for writing and -#. TRANS will cause this error. (The name stands for ``text file busy''.) This -#. TRANS is not an error in the GNU system; the text is copied as necessary. -#: stdio-common/../sysdeps/gnu/errlist.c:290 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:56 -msgid "Text file busy" -msgstr "文字檔忙錄中" +#: login/programs/pt_chown.c:192 +#, c-format +msgid "too many arguments" +msgstr "太多引數" -#. TRANS File too big; the size of a file would be larger than allowed by the system. -#: stdio-common/../sysdeps/gnu/errlist.c:299 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:57 -msgid "File too large" -msgstr "檔案太大" +#: login/programs/pt_chown.c:200 +#, c-format +msgid "needs to be installed setuid `root'" +msgstr "需要是已安裝的 setuid「根」" -#. TRANS No space left on device; write operation on a file failed because the -#. TRANS disk is full. -#: stdio-common/../sysdeps/gnu/errlist.c:309 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:58 -msgid "No space left on device" -msgstr "裝置上已無多餘空間" +#: malloc/mcheck.c:350 +msgid "memory is consistent, library is buggy\n" +msgstr "記憶體內容一致,函式庫有問題\n" -#. TRANS Invalid seek operation (such as on a pipe). -#: stdio-common/../sysdeps/gnu/errlist.c:318 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:59 -msgid "Illegal seek" -msgstr "不合法的搜尋" +#: malloc/mcheck.c:353 +msgid "memory clobbered before allocated block\n" +msgstr "記憶體在配置區塊之前就 clobbered 了\n" -#. TRANS An attempt was made to modify something on a read-only file system. -#: stdio-common/../sysdeps/gnu/errlist.c:327 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:60 -msgid "Read-only file system" -msgstr "唯讀的檔案系統" +#: malloc/mcheck.c:356 +msgid "memory clobbered past end of allocated block\n" +msgstr "記憶體在經過配置的區塊尾部時 clobbered 了\n" -#. TRANS Too many links; the link count of a single file would become too large. -#. TRANS @code{rename} can cause this error if the file being renamed already has -#. TRANS as many links as it can take (@pxref{Renaming Files}). -#: stdio-common/../sysdeps/gnu/errlist.c:338 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:61 -msgid "Too many links" -msgstr "太多連結" +#: malloc/mcheck.c:359 +msgid "block freed twice\n" +msgstr "此區塊被用 free 指令釋放了兩次\n" -#. TRANS Domain error; used by mathematical functions when an argument value does -#. TRANS not fall into the domain over which the function is defined. -#: stdio-common/../sysdeps/gnu/errlist.c:361 -msgid "Numerical argument out of domain" -msgstr "數值參數的值超出範圍" +#: malloc/mcheck.c:362 +msgid "bogus mcheck_status, library is buggy\n" +msgstr "記憶體檢查狀態 (mcheck_ststus) 有誤,您所用的函式庫有問題\n" -#. TRANS Range error; used by mathematical functions when the result value is -#. TRANS not representable because of overflow or underflow. -#: stdio-common/../sysdeps/gnu/errlist.c:371 -msgid "Numerical result out of range" -msgstr "數值運算結果超出範圍" +#: malloc/memusage.sh:33 +msgid "%s: option '%s' requires an argument\\n" +msgstr "%s:選項『%s』需要一個引數\\n" -#. TRANS Resource temporarily unavailable; the call might work if you try again -#. TRANS later. The macro @code{EWOULDBLOCK} is another name for @code{EAGAIN}; -#. TRANS they are always the same in the GNU C library. -#. TRANS -#. TRANS This error can happen in a few different situations: -#. TRANS -#. TRANS @itemize @bullet -#. TRANS @item -#. TRANS An operation that would block was attempted on an object that has -#. TRANS non-blocking mode selected. Trying the same operation again will block -#. TRANS until some external condition makes it possible to read, write, or -#. TRANS connect (whatever the operation). You can use @code{select} to find out -#. TRANS when the operation will be possible; @pxref{Waiting for I/O}. -#. TRANS -#. TRANS @strong{Portability Note:} In many older Unix systems, this condition -#. TRANS was indicated by @code{EWOULDBLOCK}, which was a distinct error code -#. TRANS different from @code{EAGAIN}. To make your program portable, you should -#. TRANS check for both codes and treat them the same. -#. TRANS -#. TRANS @item -#. TRANS A temporary resource shortage made an operation impossible. @code{fork} -#. TRANS can return this error. It indicates that the shortage is expected to -#. TRANS pass, so your program can try the call again later and it may succeed. -#. TRANS It is probably a good idea to delay for a few seconds before trying it -#. TRANS again, to allow time for other processes to release scarce resources. -#. TRANS Such shortages are usually fairly serious and affect the whole system, -#. TRANS so usually an interactive program should report the error to the user -#. TRANS and return to its command loop. -#. TRANS @end itemize -#: stdio-common/../sysdeps/gnu/errlist.c:408 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:41 -msgid "Resource temporarily unavailable" -msgstr "資源暫時無法取得" +#: malloc/memusage.sh:39 +msgid "" +"Usage: memusage [OPTION]... PROGRAM [PROGRAMOPTION]...\n" +"Profile memory usage of PROGRAM.\n" +"\n" +" -n,--progname=NAME Name of the program file to profile\n" +" -p,--png=FILE Generate PNG graphic and store it in FILE\n" +" -d,--data=FILE Generate binary data file and store it in FILE\n" +" -u,--unbuffered Don't buffer output\n" +" -b,--buffer=SIZE Collect SIZE entries before writing them out\n" +" --no-timer Don't collect additional information through timer\n" +" -m,--mmap Also trace mmap & friends\n" +"\n" +" -?,--help Print this help and exit\n" +" --usage Give a short usage message\n" +" -V,--version Print version information and exit\n" +"\n" +" The following options only apply when generating graphical output:\n" +" -t,--time-based Make graph linear in time\n" +" -T,--total Also draw graph of total memory use\n" +" --title=STRING Use STRING as title of the graph\n" +" -x,--x-size=SIZE Make graphic SIZE pixels wide\n" +" -y,--y-size=SIZE Make graphic SIZE pixels high\n" +"\n" +"Mandatory arguments to long options are also mandatory for any corresponding\n" +"short options.\n" +"\n" +msgstr "" +"用法:memusage [選項]… 程式 [PROGRAMOPTION]…\n" +"側寫檔記憶體用法的程式。\n" +"\n" +" -n,--progname=名稱 做為側寫的程式檔案名稱\n" +" -p,--png=檔案 產生 PNG 圖形並儲存它於檔案\n" +" -d,--data=檔案 產生二進位資料檔案並儲存它於檔案\n" +" -u,--unbuffered 不要將輸出緩衝\n" +" -b,--buffer=大小 於寫出它們之前收集大小項目\n" +" --no-timer 不透過計時器收集附加資訊\n" +" -m,--mmap 同時追蹤 mmap 和相關者\n" +"\n" +" -?,--help 印出這個說明然後離開\n" +" --usage 給出短用法訊息\n" +" -V,--version 印出版本資訊然後離開\n" +"\n" +"下列的選項只有套用時產生圖形輸出:\n" +" -t,--time-based 及時定製圖形線性\n" +" -T,--total 同時繪製記憶體使用總計圖形\n" +" --title=字串 使用字串做為圖形的標題\n" +" -x,--x-size=大小 定製圖形大小像素寬度\n" +" -y,--y-size=大小 定製圖形大小像素高度\n" +"\n" +"長選項的必要引數同樣也是相對應短選項的必要引數。\n" +"\n" -#. TRANS In the GNU C library, this is another name for @code{EAGAIN} (above). -#. TRANS The values are always the same, on every operating system. -#. TRANS -#. TRANS C libraries in many older Unix systems have @code{EWOULDBLOCK} as a -#. TRANS separate error code. -#: stdio-common/../sysdeps/gnu/errlist.c:421 -msgid "Operation would block" -msgstr "操作將會暫停" +#: malloc/memusage.sh:101 +msgid "" +"Syntax: memusage [--data=FILE] [--progname=NAME] [--png=FILE] [--unbuffered]\n" +"\t [--buffer=SIZE] [--no-timer] [--time-based] [--total]\n" +"\t [--title=STRING] [--x-size=SIZE] [--y-size=SIZE]\n" +"\t PROGRAM [PROGRAMOPTION]..." +msgstr "" +"語法:memusage [--data=檔案] [--progname=名稱] [--png=檔案] [--unbuffered]\n" +"\t [--buffer=大小] [--no-timer] [--time-based] [--total]\n" +"\t [--title=字串] [--x-size=大小] [--y-size=大小]\n" +"\t 程式 [PROGRAMOPTION]…" -#. TRANS An operation that cannot complete immediately was initiated on an object -#. TRANS that has non-blocking mode selected. Some functions that must always -#. TRANS block (such as @code{connect}; @pxref{Connecting}) never return -#. TRANS @code{EAGAIN}. Instead, they return @code{EINPROGRESS} to indicate that -#. TRANS the operation has begun and will take some time. Attempts to manipulate -#. TRANS the object before the call completes return @code{EALREADY}. You can -#. TRANS use the @code{select} function to find out when the pending operation -#. TRANS has completed; @pxref{Waiting for I/O}. -#: stdio-common/../sysdeps/gnu/errlist.c:437 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:180 -msgid "Operation now in progress" -msgstr "操作正在處理中" +#: malloc/memusage.sh:193 +msgid "memusage: option \\`${1##*=}' is ambiguous" +msgstr "memusage:選項 \\「${1##*=}」為模稜兩可的" -#. TRANS An operation is already in progress on an object that has non-blocking -#. TRANS mode selected. -#: stdio-common/../sysdeps/gnu/errlist.c:447 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:179 -msgid "Operation already in progress" -msgstr "此項操作已經在處理當中" +#: malloc/memusage.sh:202 +msgid "memusage: unrecognized option \\`$1'" +msgstr "memusage:無法辨識的選項「$1」" -#. TRANS A file that isn't a socket was specified when a socket is required. -#: stdio-common/../sysdeps/gnu/errlist.c:456 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:125 -msgid "Socket operation on non-socket" -msgstr "Socket 在非 socket 上運作" +#: malloc/memusage.sh:215 +msgid "No program name given" +msgstr "未給定程式名稱" -#. TRANS The size of a message sent on a socket was larger than the supported -#. TRANS maximum size. -#: stdio-common/../sysdeps/gnu/errlist.c:466 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:127 -msgid "Message too long" -msgstr "訊息太長" +#: malloc/memusagestat.c:57 +msgid "Name output file" +msgstr "名稱輸出檔" -#. TRANS The socket type does not support the requested communications protocol. -#: stdio-common/../sysdeps/gnu/errlist.c:475 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:128 -msgid "Protocol wrong type for socket" -msgstr "socket 的協定錯誤型態" +#: malloc/memusagestat.c:58 +msgid "Title string used in output graphic" +msgstr "在輸出的圖像中使用有標頭的字串" -#. TRANS You specified a socket option that doesn't make sense for the -#. TRANS particular protocol being used by the socket. @xref{Socket Options}. -#: stdio-common/../sysdeps/gnu/errlist.c:485 -msgid "Protocol not available" -msgstr "協定不存在" +#: malloc/memusagestat.c:59 +msgid "Generate output linear to time (default is linear to number of function calls)" +msgstr "產生輸出與時間呈線性關係 (預設是與函式呼叫數目呈線性關係)" -#. TRANS The socket domain does not support the requested communications protocol -#. TRANS (perhaps because the requested protocol is completely invalid). -#. TRANS @xref{Creating a Socket}. -#: stdio-common/../sysdeps/gnu/errlist.c:496 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:150 -msgid "Protocol not supported" -msgstr "協定不支援" +#: malloc/memusagestat.c:61 +msgid "Also draw graph for total memory consumption" +msgstr "同時對總記憶體用量作圖" -#. TRANS The socket type is not supported. -#: stdio-common/../sysdeps/gnu/errlist.c:505 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:151 -msgid "Socket type not supported" -msgstr "Socket 型別不支援" +#: malloc/memusagestat.c:62 +msgid "Make output graphic VALUE pixels wide" +msgstr "定製輸出圖形的寬度像素 VALUE" -#. TRANS The operation you requested is not supported. Some socket functions -#. TRANS don't make sense for all types of sockets, and others may not be -#. TRANS implemented for all communications protocols. In the GNU system, this -#. TRANS error can happen for many calls when the object does not support the -#. TRANS particular operation; it is a generic indication that the server knows -#. TRANS nothing to do for that call. -#: stdio-common/../sysdeps/gnu/errlist.c:519 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:78 -msgid "Operation not supported" -msgstr "此項操作並不被支援" +#: malloc/memusagestat.c:63 +msgid "Make output graphic VALUE pixels high" +msgstr "定製輸出圖形的高度像素 VALUE" + +#: malloc/memusagestat.c:68 +msgid "Generate graphic from memory profiling data" +msgstr "從記憶體性能測試資料產生圖像" + +#: malloc/memusagestat.c:71 +msgid "DATAFILE [OUTFILE]" +msgstr "資料檔 [輸出檔]" + +#: misc/error.c:118 +msgid "Unknown system error" +msgstr "未知的系統錯誤" + +#: nis/nis_callback.c:189 +msgid "unable to free arguments" +msgstr "無法釋放參數" + +#: nis/nis_error.h:1 nis/ypclnt.c:833 nis/ypclnt.c:921 posix/regcomp.c:132 +#: sysdeps/gnu/errlist.c:20 +msgid "Success" +msgstr "成功" + +#: nis/nis_error.h:2 +msgid "Probable success" +msgstr "可能成功" -#. TRANS The socket communications protocol family you requested is not supported. -#: stdio-common/../sysdeps/gnu/errlist.c:528 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:153 -msgid "Protocol family not supported" -msgstr "協定群組不支援" +#: nis/nis_error.h:3 +msgid "Not found" +msgstr "找不到" -#. TRANS The address family specified for a socket is not supported; it is -#. TRANS inconsistent with the protocol being used on the socket. @xref{Sockets}. -#: stdio-common/../sysdeps/gnu/errlist.c:538 -msgid "Address family not supported by protocol" -msgstr "位址族群不被協定所支援" +#: nis/nis_error.h:4 +msgid "Probably not found" +msgstr "可能找不到" -#. TRANS The requested socket address is already in use. @xref{Socket Addresses}. -#: stdio-common/../sysdeps/gnu/errlist.c:547 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:155 -msgid "Address already in use" -msgstr "位址已經有在使用" +#: nis/nis_error.h:5 +msgid "Cache expired" +msgstr "快取過時取消了" -#. TRANS The requested socket address is not available; for example, you tried -#. TRANS to give a socket a name that doesn't match the local host name. -#. TRANS @xref{Socket Addresses}. -#: stdio-common/../sysdeps/gnu/errlist.c:558 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:156 -msgid "Cannot assign requested address" -msgstr "無法指定所需的位址" +#: nis/nis_error.h:6 +msgid "NIS+ servers unreachable" +msgstr "NIS+ 伺服器無法連線" -#. TRANS A socket operation failed because the network was down. -#: stdio-common/../sysdeps/gnu/errlist.c:567 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:157 -msgid "Network is down" -msgstr "網路停擺" +#: nis/nis_error.h:7 +msgid "Unknown object" +msgstr "未知的目的檔" -#. TRANS A socket operation failed because the subnet containing the remote host -#. TRANS was unreachable. -#: stdio-common/../sysdeps/gnu/errlist.c:577 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:158 -msgid "Network is unreachable" -msgstr "無法接觸網路" +#: nis/nis_error.h:8 +msgid "Server busy, try again" +msgstr "伺服器忙碌中,請再試一次" -#. TRANS A network connection was reset because the remote host crashed. -#: stdio-common/../sysdeps/gnu/errlist.c:586 -msgid "Network dropped connection on reset" -msgstr "在重設時網路連線漏失" +#: nis/nis_error.h:9 +msgid "Generic system error" +msgstr "一般系統錯誤" -#. TRANS A network connection was aborted locally. -#: stdio-common/../sysdeps/gnu/errlist.c:595 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:160 -msgid "Software caused connection abort" -msgstr "軟體造成連線中斷" +#: nis/nis_error.h:10 +msgid "First/next chain broken" +msgstr "第一個/下一個序列壞掉了" -#. TRANS A network connection was closed for reasons outside the control of the -#. TRANS local host, such as by the remote machine rebooting or an unrecoverable -#. TRANS protocol violation. -#: stdio-common/../sysdeps/gnu/errlist.c:606 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:161 -msgid "Connection reset by peer" -msgstr "連線被對方重設" +#. TRANS Permission denied; the file permissions do not allow the attempted operation. +#: nis/nis_error.h:11 nis/ypclnt.c:878 sysdeps/gnu/errlist.c:157 +msgid "Permission denied" +msgstr "拒絕不符權限的操作" -#. TRANS The kernel's buffers for I/O operations are all in use. In GNU, this -#. TRANS error is always synonymous with @code{ENOMEM}; you may get one or the -#. TRANS other from network operations. -#: stdio-common/../sysdeps/gnu/errlist.c:617 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:162 -msgid "No buffer space available" -msgstr "沒有可用的緩衝空間了" +#: nis/nis_error.h:12 +msgid "Not owner" +msgstr "並非擁有者" -#. TRANS You tried to connect a socket that is already connected. -#. TRANS @xref{Connecting}. -#: stdio-common/../sysdeps/gnu/errlist.c:627 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:163 -msgid "Transport endpoint is already connected" -msgstr "傳輸的兩端已經完成連線了" +#: nis/nis_error.h:13 +msgid "Name not served by this server" +msgstr "網域名稱服務不是由此伺服器提供" -#. TRANS The socket is not connected to anything. You get this error when you -#. TRANS try to transmit data over a socket, without first specifying a -#. TRANS destination for the data. For a connectionless socket (for datagram -#. TRANS protocols, such as UDP), you get @code{EDESTADDRREQ} instead. -#: stdio-common/../sysdeps/gnu/errlist.c:639 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:164 -msgid "Transport endpoint is not connected" -msgstr "傳輸的兩端尚未連線" +#: nis/nis_error.h:14 +msgid "Server out of memory" +msgstr "伺服器記憶體已用完" -#. TRANS No default destination address was set for the socket. You get this -#. TRANS error when you try to transmit data over a connectionless socket, -#. TRANS without first specifying a destination for the data with @code{connect}. -#: stdio-common/../sysdeps/gnu/errlist.c:650 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:126 -msgid "Destination address required" -msgstr "需要目標位址" +#: nis/nis_error.h:15 +msgid "Object with same name exists" +msgstr "同名的目標已經存在" -#. TRANS The socket has already been shut down. -#: stdio-common/../sysdeps/gnu/errlist.c:659 -msgid "Cannot send after transport endpoint shutdown" -msgstr "無法在輸送端點關閉後傳送" +#: nis/nis_error.h:16 +msgid "Not master server for this domain" +msgstr "並非此一領域的主伺服器" -#. TRANS ??? -#: stdio-common/../sysdeps/gnu/errlist.c:668 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:174 -msgid "Too many references: cannot splice" -msgstr "太多的參考指標: 無法連接" +#: nis/nis_error.h:17 +msgid "Invalid object for operation" +msgstr "不適用的運作物件" -#. TRANS A socket operation with a specified timeout received no response during -#. TRANS the timeout period. -#: stdio-common/../sysdeps/gnu/errlist.c:678 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:175 -msgid "Connection timed out" -msgstr "連線超過時間" +#: nis/nis_error.h:18 +msgid "Malformed name, or illegal name" +msgstr "奇怪的名字,或不合法的名字" -#. TRANS A remote host refused to allow the network connection (typically because -#. TRANS it is not running the requested service). -#: stdio-common/../sysdeps/gnu/errlist.c:688 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:176 -msgid "Connection refused" -msgstr "連線被拒絕" +#: nis/nis_error.h:19 +msgid "Unable to create callback" +msgstr "無法建立回叫資料 (callback)" -#. TRANS Too many levels of symbolic links were encountered in looking up a file name. -#. TRANS This often indicates a cycle of symbolic links. -#: stdio-common/../sysdeps/gnu/errlist.c:698 -msgid "Too many levels of symbolic links" -msgstr "太多層級的符號連結檔" +#: nis/nis_error.h:20 +msgid "Results sent to callback proc" +msgstr "結果傳送給回傳程序" -#. TRANS Filename too long (longer than @code{PATH_MAX}; @pxref{Limits for -#. TRANS Files}) or host name too long (in @code{gethostname} or -#. TRANS @code{sethostname}; @pxref{Host Identification}). -#: stdio-common/../sysdeps/gnu/errlist.c:709 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:108 -msgid "File name too long" -msgstr "檔名太長" +#: nis/nis_error.h:21 +msgid "Not found, no such name" +msgstr "找不到,沒有此一名稱" -#. TRANS The remote host for a requested network connection is down. -#: stdio-common/../sysdeps/gnu/errlist.c:718 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:177 -msgid "Host is down" -msgstr "遠端系統已停機了" +#: nis/nis_error.h:22 +msgid "Name/entry isn't unique" +msgstr "名稱/項目不是唯一的" -#. TRANS The remote host for a requested network connection is not reachable. -#: stdio-common/../sysdeps/gnu/errlist.c:727 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:178 -msgid "No route to host" -msgstr "找不到通往該主機的路由路徑" +#: nis/nis_error.h:23 +msgid "Modification failed" +msgstr "修改失敗" -#. TRANS Directory not empty, where an empty directory was expected. Typically, -#. TRANS this error occurs when you are trying to delete a directory. -#: stdio-common/../sysdeps/gnu/errlist.c:737 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:123 -msgid "Directory not empty" -msgstr "目錄不是空的" +#: nis/nis_error.h:24 +msgid "Database for table does not exist" +msgstr "表格的資料庫不存在" -#. TRANS This means that the per-user limit on new process would be exceeded by -#. TRANS an attempted @code{fork}. @xref{Limits on Resources}, for details on -#. TRANS the @code{RLIMIT_NPROC} limit. -#: stdio-common/../sysdeps/gnu/errlist.c:748 -msgid "Too many processes" -msgstr "太多的行程" +#: nis/nis_error.h:25 +msgid "Entry/table type mismatch" +msgstr "項目/表格型態不符" -#. TRANS The file quota system is confused because there are too many users. -#. TRANS @c This can probably happen in a GNU system when using NFS. -#: stdio-common/../sysdeps/gnu/errlist.c:758 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:124 -msgid "Too many users" -msgstr "太多使用者" +#: nis/nis_error.h:26 +msgid "Link points to illegal name" +msgstr "連結指向不合法的名稱" -#. TRANS The user's disk quota was exceeded. -#: stdio-common/../sysdeps/gnu/errlist.c:767 -msgid "Disk quota exceeded" -msgstr "硬碟 quota 滿了" +#: nis/nis_error.h:27 +msgid "Partial success" +msgstr "部分成功" -#. TRANS Stale NFS file handle. This indicates an internal confusion in the NFS -#. TRANS system which is due to file system rearrangements on the server host. -#. TRANS Repairing this condition usually requires unmounting and remounting -#. TRANS the NFS file system on the local host. -#: stdio-common/../sysdeps/gnu/errlist.c:779 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:181 -msgid "Stale NFS file handle" -msgstr "過舊的 NFS 檔案控制碼" +#: nis/nis_error.h:28 +msgid "Too many attributes" +msgstr "太多的屬性" -#. TRANS An attempt was made to NFS-mount a remote file system with a file name that -#. TRANS already specifies an NFS-mounted file. -#. TRANS (This is an error on some operating systems, but we expect it to work -#. TRANS properly on the GNU system, making this error code impossible.) -#: stdio-common/../sysdeps/gnu/errlist.c:791 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:96 -msgid "Object is remote" -msgstr "目標檔案位於遠端" +#: nis/nis_error.h:29 +msgid "Error in RPC subsystem" +msgstr "RPC 子系統錯誤" -#. TRANS ??? -#: stdio-common/../sysdeps/gnu/errlist.c:800 -msgid "RPC struct is bad" -msgstr "RPC 結構是壞的" +#: nis/nis_error.h:30 +msgid "Missing or malformed attribute" +msgstr "缺少或奇怪的屬性" -#. TRANS ??? -#: stdio-common/../sysdeps/gnu/errlist.c:809 -msgid "RPC version wrong" -msgstr "RPC 版本錯誤" +#: nis/nis_error.h:31 +msgid "Named object is not searchable" +msgstr "有名稱的物件無法搜尋" -#. TRANS ??? -#: stdio-common/../sysdeps/gnu/errlist.c:818 -msgid "RPC program not available" -msgstr "RPC 程式不存在" +#: nis/nis_error.h:32 +msgid "Error while talking to callback proc" +msgstr "在與 callback proc 通訊時錯誤" -#. TRANS ??? -#: stdio-common/../sysdeps/gnu/errlist.c:827 -msgid "RPC program version wrong" -msgstr "RPC 程式版本錯誤" +#: nis/nis_error.h:33 +msgid "Non NIS+ namespace encountered" +msgstr "遭遇違反 NIS+ 命名規則的名稱" -#. TRANS ??? -#: stdio-common/../sysdeps/gnu/errlist.c:836 -msgid "RPC bad procedure for program" -msgstr "程式的 RPC 程序錯誤" +#: nis/nis_error.h:34 +msgid "Illegal object type for operation" +msgstr "不合法的運作物件型態" -#. TRANS No locks available. This is used by the file locking facilities; see -#. TRANS @ref{File Locks}. This error is never generated by the GNU system, but -#. TRANS it can result from an operation to an NFS server running another -#. TRANS operating system. -#: stdio-common/../sysdeps/gnu/errlist.c:848 -msgid "No locks available" -msgstr "無法鎖定資料" +#: nis/nis_error.h:35 +msgid "Passed object is not the same object on server" +msgstr "經過的物件與伺服器上的並不相同" -#. TRANS Inappropriate file type or format. The file was the wrong type for the -#. TRANS operation, or a data file had the wrong format. -#. TRANS -#. TRANS On some systems @code{chmod} returns this error if you try to set the -#. TRANS sticky bit on a non-directory file; @pxref{Setting Permissions}. -#: stdio-common/../sysdeps/gnu/errlist.c:861 -msgid "Inappropriate file type or format" -msgstr "不希望的檔案形態或格式" +#: nis/nis_error.h:36 +msgid "Modify operation failed" +msgstr "修改運作方式失敗" -#. TRANS ??? -#: stdio-common/../sysdeps/gnu/errlist.c:870 -msgid "Authentication error" -msgstr "鑑定錯誤" +#: nis/nis_error.h:37 +msgid "Query illegal for named table" +msgstr "對記名表格的查詢並不合法" -#. TRANS ??? -#: stdio-common/../sysdeps/gnu/errlist.c:879 -msgid "Need authenticator" -msgstr "需要認證" +#: nis/nis_error.h:38 +msgid "Attempt to remove a non-empty table" +msgstr "嘗試刪除一個有內容的表格" -#. TRANS Function not implemented. This indicates that the function called is -#. TRANS not implemented at all, either in the C library itself or in the -#. TRANS operating system. When you get this error, you can be sure that this -#. TRANS particular function will always fail with @code{ENOSYS} unless you -#. TRANS install a new version of the C library or the operating system. -#: stdio-common/../sysdeps/gnu/errlist.c:892 -msgid "Function not implemented" -msgstr "功能沒有實作" +#: nis/nis_error.h:39 +msgid "Error in accessing NIS+ cold start file. Is NIS+ installed?" +msgstr "存取 NIS+ 原始啟動檔錯誤。有安裝 NIS+ 嗎?" -#. TRANS Not supported. A function returns this error when certain parameter -#. TRANS values are valid, but the functionality they request is not available. -#. TRANS This can mean that the function does not implement a particular command -#. TRANS or option value or flag bit at all. For functions that operate on some -#. TRANS object given in a parameter, such as a file descriptor or a port, it -#. TRANS might instead mean that only @emph{that specific object} (file -#. TRANS descriptor, port, etc.) is unable to support the other parameters given; -#. TRANS different file descriptors might support different ranges of parameter -#. TRANS values. -#. TRANS -#. TRANS If the entire function is not available at all in the implementation, -#. TRANS it returns @code{ENOSYS} instead. -#: stdio-common/../sysdeps/gnu/errlist.c:912 -msgid "Not supported" -msgstr "並未支援" +#: nis/nis_error.h:40 +msgid "Full resync required for directory" +msgstr "目錄的 resync 請求已滿" -#. TRANS While decoding a multibyte character the function came along an invalid -#. TRANS or an incomplete sequence of bytes or the given wide character is invalid. -#: stdio-common/../sysdeps/gnu/errlist.c:922 -msgid "Invalid or incomplete multibyte or wide character" -msgstr "不適用或不完整的多位元組字元或寬字元" +#: nis/nis_error.h:41 +msgid "NIS+ operation failed" +msgstr "NIS+ 運作失敗" -#. TRANS In the GNU system, servers supporting the @code{term} protocol return -#. TRANS this error for certain operations when the caller is not in the -#. TRANS foreground process group of the terminal. Users do not usually see this -#. TRANS error because functions such as @code{read} and @code{write} translate -#. TRANS it into a @code{SIGTTIN} or @code{SIGTTOU} signal. @xref{Job Control}, -#. TRANS for information on process groups and these signals. -#: stdio-common/../sysdeps/gnu/errlist.c:936 -msgid "Inappropriate operation for background process" -msgstr "不希望的背景行程運作" +#: nis/nis_error.h:42 +msgid "NIS+ service is unavailable or not installed" +msgstr "NIS+ 服務無法取得或者尚未安裝" + +#: nis/nis_error.h:43 +msgid "Yes, 42 is the meaning of life" +msgstr "是的,42 就是存在的意義" -#. TRANS In the GNU system, opening a file returns this error when the file is -#. TRANS translated by a program and the translator program dies while starting -#. TRANS up, before it has connected to the file. -#: stdio-common/../sysdeps/gnu/errlist.c:947 -msgid "Translator died" -msgstr "中介程式已經結束" +#: nis/nis_error.h:44 +msgid "Unable to authenticate NIS+ server" +msgstr "無法對 NIS+ 的伺服端進行認證" -#. TRANS The experienced user will know what is wrong. -#. TRANS @c This error code is a joke. Its perror text is part of the joke. -#. TRANS @c Don't change it. -#: stdio-common/../sysdeps/gnu/errlist.c:958 -msgid "?" -msgstr "?" +#: nis/nis_error.h:45 +msgid "Unable to authenticate NIS+ client" +msgstr "無法對 NIS+ 的請求端進行認證" -#. TRANS You did @strong{what}? -#: stdio-common/../sysdeps/gnu/errlist.c:967 -msgid "You really blew it this time" -msgstr "這次真的被您打敗了" +#: nis/nis_error.h:46 +msgid "No file space on server" +msgstr "伺服器上沒有檔案空間" -# This is error EIEIO, errno 104 -# -# - Macro: int EIEIO -# Go home and have a glass of warm, dairy-fresh milk. -# -# The following messages were copied & pasted -# from es.po by Santiago Vila Doncel . -# -# -# 穌u diablos es esto?, esperemos a tener las fuentes -# estupendo, este error parece mostrarse en dos ocasiones -# - Macro: int EIEIO -# Go home and have a glass of warm, dairy-fresh milk. -# Jochen tambien lo traduce as. em -# -# Okay. Since you are dying to know, I'll tell you. -# This is a joke, obviously. There is a children's song which begins, -# "Old McDonald had a farm, e-i-e-i-o." Every time I see the (real) -# errno macro EIO, I think about that song. Probably most of my -# compatriots who program on Unix do, too. One of them must have stayed -# up a little too late one night and decided to add it to Hurd or Glibc. -# Whoever did it should be castigated, but it made me laugh. -# --jtobey@channel1.com -# -# "bought the farm" means "died". -jtobey -# -# Bueno, pues despu廥 de pensarlo mucho, he seguido el ejemplo de la -# traducci鏮 francesa (traducci鏮 libre). sv -# -# -# 簡單的說,兒歌 "唐老先生有塊地...",然後呢?? ;-p -# -#. TRANS Go home and have a glass of warm, dairy-fresh milk. -#: stdio-common/../sysdeps/gnu/errlist.c:976 -msgid "Computer bought the farm" -msgstr "這台電腦買了一塊地囉" +#: nis/nis_error.h:47 +msgid "Unable to create process on server" +msgstr "無法在伺服器上建立執行程序" -#. TRANS This error code has no purpose. -#: stdio-common/../sysdeps/gnu/errlist.c:985 -msgid "Gratuitous error" -msgstr "無故的錯誤" +#: nis/nis_error.h:48 +msgid "Master server busy, full dump rescheduled." +msgstr "主要伺服器忙碌中,重新進行完整資料傾卸排程。" -#: stdio-common/../sysdeps/gnu/errlist.c:993 -msgid "Bad message" -msgstr "錯誤的訊息" +#: nis/nis_local_names.c:122 +#, c-format +msgid "LOCAL entry for UID %d in directory %s not unique\n" +msgstr "UID 為 %d 的項目在本地端中並不是唯一的 (在 %s 目錄裡面)\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1001 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:66 -msgid "Identifier removed" -msgstr "識別符號移除" +#: nis/nis_print.c:51 +msgid "UNKNOWN" +msgstr "不明" -#: stdio-common/../sysdeps/gnu/errlist.c:1009 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:104 -msgid "Multihop attempted" -msgstr "嘗試 Multihop" +#: nis/nis_print.c:109 +msgid "BOGUS OBJECT\n" +msgstr "假的物件\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1017 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:91 -msgid "No data available" -msgstr "沒有可用的資料" +#: nis/nis_print.c:112 +msgid "NO OBJECT\n" +msgstr "沒有物件\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1025 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:97 -msgid "Link has been severed" -msgstr "連結已有服務" +#: nis/nis_print.c:115 +msgid "DIRECTORY\n" +msgstr "目錄\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1033 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:65 -msgid "No message of desired type" -msgstr "沒有符合需求格式的訊息" +#: nis/nis_print.c:118 +msgid "GROUP\n" +msgstr "群組\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1041 -msgid "Out of streams resources" -msgstr "所有資料流的資源都已用盡" +#: nis/nis_print.c:121 +msgid "TABLE\n" +msgstr "表格\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1049 -msgid "Device not a stream" -msgstr "裝置不是資料流" +#: nis/nis_print.c:124 +msgid "ENTRY\n" +msgstr "項目\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1057 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:109 -msgid "Value too large for defined data type" -msgstr "有定義的資料型別值太大" +#: nis/nis_print.c:127 +msgid "LINK\n" +msgstr "連結\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1065 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:101 -msgid "Protocol error" -msgstr "協定錯誤" +#: nis/nis_print.c:130 +msgid "PRIVATE\n" +msgstr "私有的\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1073 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:92 -msgid "Timer expired" -msgstr "計時器已過時取消了" +#: nis/nis_print.c:133 +msgid "(Unknown object)\n" +msgstr "(未知的物件)\n" -#. TRANS Operation canceled; an asynchronous operation was canceled before it -#. TRANS completed. @xref{Asynchronous I/O}. When you call @code{aio_cancel}, -#. TRANS the normal result is for the operations affected to complete with this -#. TRANS error; @pxref{Cancel AIO Operations}. -#: stdio-common/../sysdeps/gnu/errlist.c:1085 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:77 -msgid "Operation canceled" -msgstr "操作已被取消" +#: nis/nis_print.c:167 +#, c-format +msgid "Name : `%s'\n" +msgstr "名稱 : `%s'\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1093 -msgid "Interrupted system call should be restarted" -msgstr "中斷的系統呼叫必須重新啟動" +#: nis/nis_print.c:168 +#, c-format +msgid "Type : %s\n" +msgstr "格式 : %s\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1101 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:67 -msgid "Channel number out of range" -msgstr "通道號碼超出範圍" +#: nis/nis_print.c:173 +msgid "Master Server :\n" +msgstr "主要伺服器 :\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1109 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:68 -msgid "Level 2 not synchronized" -msgstr "層級 2 沒有同步" +#: nis/nis_print.c:175 +msgid "Replicate :\n" +msgstr "複製 :\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1117 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:69 -msgid "Level 3 halted" -msgstr "層級 3 停止" +#: nis/nis_print.c:176 +#, c-format +msgid "\tName : %s\n" +msgstr "\t名稱 : %s\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1125 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:70 -msgid "Level 3 reset" -msgstr "層級 3 重設" +#: nis/nis_print.c:177 +msgid "\tPublic Key : " +msgstr "\t公共鑰匙 : " -#: stdio-common/../sysdeps/gnu/errlist.c:1133 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:71 -msgid "Link number out of range" -msgstr "連結數目超過範圍" +#: nis/nis_print.c:181 +msgid "None.\n" +msgstr "無\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1141 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:72 -msgid "Protocol driver not attached" -msgstr "協定的驅動程式未連接" +#: nis/nis_print.c:184 +#, c-format +msgid "Diffie-Hellmann (%d bits)\n" +msgstr "Diffie-Hellmann (%d 位元)\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1149 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:73 -msgid "No CSI structure available" -msgstr "沒有可用的 CSI 結構了" +#: nis/nis_print.c:189 +#, c-format +msgid "RSA (%d bits)\n" +msgstr "RSA (%d 位元)\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1157 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:74 -msgid "Level 2 halted" -msgstr "層級 2 停止" +#: nis/nis_print.c:192 +msgid "Kerberos.\n" +msgstr "Kerberos.\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1165 -msgid "Invalid exchange" -msgstr "不適用的交換" +#: nis/nis_print.c:195 +#, c-format +msgid "Unknown (type = %d, bits = %d)\n" +msgstr "未知的 (型態 = %d,位元 = %d)\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1173 -msgid "Invalid request descriptor" -msgstr "不適用的請求敘述項" +#: nis/nis_print.c:206 +#, c-format +msgid "\tUniversal addresses (%u)\n" +msgstr "\t絕對位址 (%u)\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1181 -msgid "Exchange full" -msgstr "交換已充足" +#: nis/nis_print.c:228 +msgid "Time to live : " +msgstr "存在時間 : " -#: stdio-common/../sysdeps/gnu/errlist.c:1189 -msgid "No anode" -msgstr "沒有陽極" +#: nis/nis_print.c:230 +msgid "Default Access rights :\n" +msgstr "預設的存取權限 :\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1197 -msgid "Invalid request code" -msgstr "不適用的請求碼" +#: nis/nis_print.c:239 +#, c-format +msgid "\tType : %s\n" +msgstr "\t型別 : %s\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1205 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:85 -msgid "Invalid slot" -msgstr "不適用的 slot" +#: nis/nis_print.c:240 +msgid "\tAccess rights: " +msgstr "\t存取權限: " -#: stdio-common/../sysdeps/gnu/errlist.c:1213 -msgid "File locking deadlock error" -msgstr "檔案鎖定停頓錯誤" +#: nis/nis_print.c:254 +msgid "Group Flags :" +msgstr "群組旗標 :" -#: stdio-common/../sysdeps/gnu/errlist.c:1221 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:87 -msgid "Bad font file format" -msgstr "錯誤的字型檔格式" +#: nis/nis_print.c:257 +msgid "" +"\n" +"Group Members :\n" +msgstr "" +"\n" +"群組的成員 :\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1229 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:94 -msgid "Machine is not on the network" -msgstr "機器不在網路中" +#: nis/nis_print.c:269 +#, c-format +msgid "Table Type : %s\n" +msgstr "表格形式 : %s\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1237 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:95 -msgid "Package not installed" -msgstr "套件並未安裝" +#: nis/nis_print.c:270 +#, c-format +msgid "Number of Columns : %d\n" +msgstr "欄位的數目 : %d\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1245 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:98 -msgid "Advertise error" -msgstr "通知錯誤" +#: nis/nis_print.c:271 +#, c-format +msgid "Character Separator : %c\n" +msgstr "字元分隔號 : %c\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1253 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:99 -msgid "Srmount error" -msgstr "Srmount 錯誤" +#: nis/nis_print.c:272 +#, c-format +msgid "Search Path : %s\n" +msgstr "搜尋路徑 : %s\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1261 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:100 -msgid "Communication error on send" -msgstr "在傳送時通訊錯誤" +#: nis/nis_print.c:273 +msgid "Columns :\n" +msgstr "行 :\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1269 -msgid "RFS specific error" -msgstr "RFS 特定錯誤" +#: nis/nis_print.c:276 +#, c-format +msgid "\t[%d]\tName : %s\n" +msgstr "\t[%d]\t名稱 : %s\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1277 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:110 -msgid "Name not unique on network" -msgstr "網路上的名稱不是唯一的" +#: nis/nis_print.c:278 +msgid "\t\tAttributes : " +msgstr "\t\t屬性 : " -#: stdio-common/../sysdeps/gnu/errlist.c:1285 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:111 -msgid "File descriptor in bad state" -msgstr "檔案敘述項處於錯誤狀態" +#: nis/nis_print.c:280 +msgid "\t\tAccess Rights : " +msgstr "\t\t存取權限 : " -#: stdio-common/../sysdeps/gnu/errlist.c:1293 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:112 -msgid "Remote address changed" -msgstr "遠端位址改變了" +#: nis/nis_print.c:290 +msgid "Linked Object Type : " +msgstr "連結的物件型態 : " + +#: nis/nis_print.c:292 +#, c-format +msgid "Linked to : %s\n" +msgstr "連結到 : %s\n" + +#: nis/nis_print.c:302 +#, c-format +msgid "\tEntry data of type %s\n" +msgstr "\t型別為 %s 的項目資料\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1301 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:113 -msgid "Can not access a needed shared library" -msgstr "無法存取所需的分享函式庫" +#: nis/nis_print.c:305 +#, c-format +msgid "\t[%u] - [%u bytes] " +msgstr "\t[%u] - [%u 位元組] " -#: stdio-common/../sysdeps/gnu/errlist.c:1309 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:114 -msgid "Accessing a corrupted shared library" -msgstr "存取一個毀掉的分享函式庫" +#: nis/nis_print.c:308 +msgid "Encrypted data\n" +msgstr "編碼資料\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1317 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:115 -msgid ".lib section in a.out corrupted" -msgstr "a.out 中 .lib 節區毀掉了" +#: nis/nis_print.c:310 +msgid "Binary data\n" +msgstr "二進位資料\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1325 -msgid "Attempting to link in too many shared libraries" -msgstr "嘗試去連結太多的分享資料庫" +#: nis/nis_print.c:326 +#, c-format +msgid "Object Name : %s\n" +msgstr "物件名稱 : %s\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1333 -msgid "Cannot exec a shared library directly" -msgstr "不能直接執行一個分享函式庫" +#: nis/nis_print.c:327 +#, c-format +msgid "Directory : %s\n" +msgstr "目錄 : %s\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1341 -msgid "Streams pipe error" -msgstr "資料流管線錯誤" +#: nis/nis_print.c:328 +#, c-format +msgid "Owner : %s\n" +msgstr "擁有者 : %s\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1349 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:165 -msgid "Structure needs cleaning" -msgstr "結構需要清理" +#: nis/nis_print.c:329 +#, c-format +msgid "Group : %s\n" +msgstr "群組 : %s\n" -#: stdio-common/../sysdeps/gnu/errlist.c:1357 -msgid "Not a XENIX named type file" -msgstr "並非 XENIX 命名格式的檔案" +#: nis/nis_print.c:330 +msgid "Access Rights : " +msgstr "存取權限 : " -#: stdio-common/../sysdeps/gnu/errlist.c:1365 -msgid "No XENIX semaphores available" -msgstr "沒有可用的 XENIX 信號標誌了" +#: nis/nis_print.c:332 +#, c-format +msgid "" +"\n" +"Time to Live : " +msgstr "" +"\n" +"存在的時間 : " -#: stdio-common/../sysdeps/gnu/errlist.c:1373 -msgid "Is a named type file" -msgstr "是個有名字形態的檔案" +#: nis/nis_print.c:335 +#, c-format +msgid "Creation Time : %s" +msgstr "產生時間 : %s" -#: stdio-common/../sysdeps/gnu/errlist.c:1381 -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:170 -msgid "Remote I/O error" -msgstr "遠端輸出入錯誤" +#: nis/nis_print.c:337 +#, c-format +msgid "Mod. Time : %s" +msgstr "修改時間 : %s" -#: stdio-common/../sysdeps/gnu/errlist.c:1389 -msgid "No medium found" -msgstr "找不到媒體" +#: nis/nis_print.c:338 +msgid "Object Type : " +msgstr "物件型別 : " -#: stdio-common/../sysdeps/gnu/errlist.c:1397 -msgid "Wrong medium type" -msgstr "錯誤的媒介形態" +#: nis/nis_print.c:358 +#, c-format +msgid " Data Length = %u\n" +msgstr " 資料長度 = %u\n" -#: stdio-common/../sysdeps/unix/siglist.c:26 -msgid "Signal 0" -msgstr "訊號 0" +#: nis/nis_print.c:372 +#, c-format +msgid "Status : %s\n" +msgstr "狀態 : %s\n" -#: stdio-common/../sysdeps/unix/siglist.c:32 -msgid "IOT trap" -msgstr "IOT 陷阱" +#: nis/nis_print.c:373 +#, c-format +msgid "Number of objects : %u\n" +msgstr "物件的數目 : %u\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:30 -msgid "Error 0" -msgstr "第 0 號錯誤" +#: nis/nis_print.c:377 +#, c-format +msgid "Object #%d:\n" +msgstr "目的檔 #%d:\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:31 -#: nis/nis_error.c:40 -msgid "Not owner" -msgstr "並非擁有者" +#: nis/nis_print_group_entry.c:117 +#, c-format +msgid "Group entry for \"%s.%s\" group:\n" +msgstr "群組 \"%s.%s\" 群組項目:\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:35 -msgid "I/O error" -msgstr "I/O 錯誤" +#: nis/nis_print_group_entry.c:125 +msgid " Explicit members:\n" +msgstr " 明確的成員:\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:37 -msgid "Arg list too long" -msgstr "Arg 串列太長" +#: nis/nis_print_group_entry.c:130 +msgid " No explicit members\n" +msgstr " 沒有明確的成員\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:39 -msgid "Bad file number" -msgstr "錯誤的檔案號碼" +#: nis/nis_print_group_entry.c:133 +msgid " Implicit members:\n" +msgstr " 不明確的成員:\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:42 -msgid "Not enough space" -msgstr "空間不足" +#: nis/nis_print_group_entry.c:138 +msgid " No implicit members\n" +msgstr " 沒有不明確的成員\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:46 -msgid "Device busy" -msgstr "裝置忙碌中" +#: nis/nis_print_group_entry.c:141 +msgid " Recursive members:\n" +msgstr " 遞迴的成員:\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:48 -msgid "Cross-device link" -msgstr "裝置之間的連接" +#: nis/nis_print_group_entry.c:146 +msgid " No recursive members\n" +msgstr " 沒有遞迴的成員\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:53 -msgid "File table overflow" -msgstr "檔案表已滿" +#: nis/nis_print_group_entry.c:149 +msgid " Explicit nonmembers:\n" +msgstr " 明確的非成員:\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:63 -msgid "Argument out of domain" -msgstr "引數超過範圍" +#: nis/nis_print_group_entry.c:154 +msgid " No explicit nonmembers\n" +msgstr " 沒有明確的非成員\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:64 -msgid "Result too large" -msgstr "結果太大了" +#: nis/nis_print_group_entry.c:157 +msgid " Implicit nonmembers:\n" +msgstr " 不明確的非成員:\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:75 -msgid "Deadlock situation detected/avoided" -msgstr "偵測/避免停頓狀態" +#: nis/nis_print_group_entry.c:162 +msgid " No implicit nonmembers\n" +msgstr " 沒有不明確的非成員\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:76 -msgid "No record locks available" -msgstr "沒有可用的紀錄鎖了" +#: nis/nis_print_group_entry.c:165 +msgid " Recursive nonmembers:\n" +msgstr " 遞迴的非成員:\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:79 -msgid "Disc quota exceeded" -msgstr "Disc quota 滿了" +#: nis/nis_print_group_entry.c:170 +msgid " No recursive nonmembers\n" +msgstr " 沒有遞迴的非成員\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:80 -msgid "Bad exchange descriptor" -msgstr "錯誤的交換敘述項" +#: nis/nss_nisplus/nisplus-publickey.c:101 +#: nis/nss_nisplus/nisplus-publickey.c:183 +#, c-format +msgid "DES entry for netname %s not unique\n" +msgstr "netname %s 的 DES 項目並不唯一\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:81 -msgid "Bad request descriptor" -msgstr "錯誤的請求敘述項" +#: nis/nss_nisplus/nisplus-publickey.c:220 +#, c-format +msgid "netname2user: missing group id list in `%s'" +msgstr "netname2user:在「%s」中缺少群組識別號清單" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:82 -msgid "Message tables full" -msgstr "訊息表格已滿" +#: nis/nss_nisplus/nisplus-publickey.c:302 +#: nis/nss_nisplus/nisplus-publickey.c:308 +#: nis/nss_nisplus/nisplus-publickey.c:373 +#: nis/nss_nisplus/nisplus-publickey.c:382 +#, c-format +msgid "netname2user: (nis+ lookup): %s\n" +msgstr "netname2user: (nis+ 搜尋): %s\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:83 -msgid "Anode table overflow" -msgstr "Anode 表格溢出" +#: nis/nss_nisplus/nisplus-publickey.c:321 +#, c-format +msgid "netname2user: DES entry for %s in directory %s not unique" +msgstr "netname2user: %s 的 DES 項目在 %s 目錄下並不是唯一的" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:84 -msgid "Bad request code" -msgstr "錯誤的請求訊號編碼" +#: nis/nss_nisplus/nisplus-publickey.c:339 +#, c-format +msgid "netname2user: principal name `%s' too long" +msgstr "netname2user: 主要名稱 `%s' 太長了" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:86 -msgid "File locking deadlock" -msgstr "檔案鎖定停頓" +#: nis/nss_nisplus/nisplus-publickey.c:395 +#, c-format +msgid "netname2user: LOCAL entry for %s in directory %s not unique" +msgstr "netname2user: %s 的本地端項目在 %s 目錄下並不是唯一的" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:88 -msgid "Error 58" -msgstr "第 58 號錯誤" +#: nis/nss_nisplus/nisplus-publickey.c:402 +msgid "netname2user: should not have uid 0" +msgstr "netname2user: 不能有使用者 id 為 0 的情況" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:89 -msgid "Error 59" -msgstr "第 59 號錯誤" +#: nis/ypclnt.c:836 +msgid "Request arguments bad" +msgstr "必須引數有錯誤" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:90 -msgid "Not a stream device" -msgstr "並非資料流裝置" +#: nis/ypclnt.c:839 +msgid "RPC failure on NIS operation" +msgstr "NIS 運作 RPC 失敗" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:93 -msgid "Out of stream resources" -msgstr "資料流資源用盡" +#: nis/ypclnt.c:842 +msgid "Can't bind to server which serves this domain" +msgstr "無法與服務於此網域的伺服器聯繫" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:102 -msgid "Error 72" -msgstr "第 72 號錯誤" +#: nis/ypclnt.c:845 +msgid "No such map in server's domain" +msgstr "在伺服器的領域資料中找不到此一對映表" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:103 -msgid "Error 73" -msgstr "第 73 號錯誤" +#: nis/ypclnt.c:848 +msgid "No such key in map" +msgstr "在對映表中沒有此一鍵值" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:105 -msgid "Error 75" -msgstr "第 75 號錯誤" +#: nis/ypclnt.c:851 +msgid "Internal NIS error" +msgstr "內部 NIS 錯誤" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:106 -msgid "Error 76" -msgstr "第 76 號錯誤" +#: nis/ypclnt.c:854 +msgid "Local resource allocation failure" +msgstr "區域資源配置失敗" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:107 -msgid "Not a data message" -msgstr "並不是一個資料訊息" +#: nis/ypclnt.c:857 +msgid "No more records in map database" +msgstr "在對映表資料庫中沒有其他紀錄了" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:116 -msgid "Attempting to link in more shared libraries than system limit" -msgstr "嘗試去連結超過系統上限的分享資料庫" +#: nis/ypclnt.c:860 +msgid "Can't communicate with portmapper" +msgstr "無法與 portmapper 通訊" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:117 -msgid "Can not exec a shared library directly" -msgstr "無法直接執行分享函式庫" +#: nis/ypclnt.c:863 +msgid "Can't communicate with ypbind" +msgstr "無法與 ypbind 通訊" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:118 -msgid "Illegal byte sequence" -msgstr "不合法的位元組序列" +#: nis/ypclnt.c:866 +msgid "Can't communicate with ypserv" +msgstr "無法與 ypserv 通訊" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:119 -msgid "Operation not applicable" -msgstr "此項操作並不適當" +#: nis/ypclnt.c:869 +msgid "Local domain name not set" +msgstr "區域網域名稱沒有設定" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:120 -msgid "Number of symbolic links encountered during path name traversal exceeds MAXSYMLINKS" -msgstr "尋找路徑名稱時遭遇的符號連結數目超過 MAXSYMLINKS 裡面定義的最大值" +#: nis/ypclnt.c:872 +msgid "NIS map database is bad" +msgstr "NIS 對映資料庫是壞的" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:121 -msgid "Error 91" -msgstr "第 91 號錯誤" +#: nis/ypclnt.c:875 +msgid "NIS client/server version mismatch - can't supply service" +msgstr "NIS 請求端/伺服端版本不符合 - 無法提供服務" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:122 -msgid "Error 92" -msgstr "第 92 號錯誤" +#: nis/ypclnt.c:881 +msgid "Database is busy" +msgstr "資料庫正在忙碌" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:129 -msgid "Option not supported by protocol" -msgstr "通訊協定並不支援此參數" +#: nis/ypclnt.c:884 +msgid "Unknown NIS error code" +msgstr "未知的 NIS 錯誤碼" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:130 -msgid "Error 100" -msgstr "第 100 號錯誤" +#: nis/ypclnt.c:924 +msgid "Internal ypbind error" +msgstr "內部 ypbind 錯誤" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:131 -msgid "Error 101" -msgstr "第 101 號錯誤" +#: nis/ypclnt.c:927 +msgid "Domain not bound" +msgstr "網域找不到" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:132 -msgid "Error 102" -msgstr "第 102 號錯誤" +#: nis/ypclnt.c:930 +msgid "System resource allocation failure" +msgstr "系統資源配置失敗" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:133 -msgid "Error 103" -msgstr "第 103 號錯誤" +#: nis/ypclnt.c:933 +msgid "Unknown ypbind error" +msgstr "未知的 ypbind 錯誤" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:134 -msgid "Error 104" -msgstr "第 104 號錯誤" +#: nis/ypclnt.c:974 +msgid "yp_update: cannot convert host to netname\n" +msgstr "yp_update: 無法轉換主機的網路名稱\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:135 -msgid "Error 105" -msgstr "第 105 號錯誤" +#: nis/ypclnt.c:992 +msgid "yp_update: cannot get server address\n" +msgstr "yp_update: 無法取得伺服器位址\n" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:136 -msgid "Error 106" -msgstr "第 106 號錯誤" +#: nscd/aicache.c:83 nscd/hstcache.c:492 +#, c-format +msgid "Haven't found \"%s\" in hosts cache!" +msgstr "尚未在 hosts 快取中找到 \"%s\"!" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:137 -msgid "Error 107" -msgstr "第 107 號錯誤" +#: nscd/aicache.c:85 nscd/hstcache.c:494 +#, c-format +msgid "Reloading \"%s\" in hosts cache!" +msgstr "重新載入「%s」於主機快取!" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:138 -msgid "Error 108" -msgstr "第 108 號錯誤" +#: nscd/cache.c:150 +#, c-format +msgid "add new entry \"%s\" of type %s for %s to cache%s" +msgstr "加入新的項目「%s」的型態 %s 用於 %s 到 cache%s" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:139 -msgid "Error 109" -msgstr "第 109 號錯誤" +#: nscd/cache.c:152 +msgid " (first)" +msgstr " (先)" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:140 -msgid "Error 110" -msgstr "第 110 號錯誤" +#: nscd/cache.c:276 nscd/connections.c:861 +#, c-format +msgid "cannot stat() file `%s': %s" +msgstr "無法 stat() 檔案 `%s': %s" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:141 -msgid "Error 111" -msgstr "第 111 號錯誤" +#: nscd/cache.c:318 +#, c-format +msgid "pruning %s cache; time %ld" +msgstr "pruning %s 快取;時間 %ld" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:142 -msgid "Error 112" -msgstr "第 112 號錯誤" +#: nscd/cache.c:347 +#, c-format +msgid "considering %s entry \"%s\", timeout %" +msgstr "認為中 %s 項目「%s」,逾時 %" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:143 -msgid "Error 113" -msgstr "第 113 號錯誤" +#: nscd/connections.c:565 +#, c-format +msgid "invalid persistent database file \"%s\": %s" +msgstr "無效的永久性的資料庫檔案「%s」:%s" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:144 -msgid "Error 114" -msgstr "第 114 號錯誤" +#: nscd/connections.c:573 +msgid "uninitialized header" +msgstr "未起始的標頭" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:145 -msgid "Error 115" -msgstr "第 115 號錯誤" +#: nscd/connections.c:578 +msgid "header size does not match" +msgstr "頁首大小不吻合" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:146 -msgid "Error 116" -msgstr "第 116 號錯誤" +#: nscd/connections.c:588 +msgid "file size does not match" +msgstr "檔案大小不吻合" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:147 -msgid "Error 117" -msgstr "第 117 號錯誤" +#: nscd/connections.c:605 +msgid "verification failed" +msgstr "查核失敗" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:148 -msgid "Error 118" -msgstr "第 118 號錯誤" +#: nscd/connections.c:619 +#, c-format +msgid "suggested size of table for database %s larger than the persistent database's table" +msgstr "用於資料庫 %s 的建議表格大小大於永久性的資料庫表格" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:149 -msgid "Error 119" -msgstr "第 119 號錯誤" +#: nscd/connections.c:630 nscd/connections.c:715 +#, c-format +msgid "cannot create read-only descriptor for \"%s\"; no mmap" +msgstr "無法建立用於「%s」的唯讀描述元;無 mmap" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:152 -msgid "Operation not supported on transport endpoint" -msgstr "此項操作在傳輸終點時並不被支援" +#: nscd/connections.c:646 +#, c-format +msgid "cannot access '%s'" +msgstr "無法存取『%s』" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:154 -msgid "Address family not supported by protocol family" -msgstr "位址族群不被協定族群所支援" +#: nscd/connections.c:694 +#, c-format +msgid "database for %s corrupted or simultaneously used; remove %s manually if necessary and restart" +msgstr "資料庫用於 %s 已損壞或同步地使用;移除 %s 手動地如果必要的話和重新啟動" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:159 -msgid "Network dropped connection because of reset" -msgstr "網路連線漏失,因為重設" +#: nscd/connections.c:701 +#, c-format +msgid "cannot create %s; no persistent database used" +msgstr "無法建立 %s; 未使用永久性的資料庫" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:166 -msgid "Error 136" -msgstr "第 136 號錯誤" +#: nscd/connections.c:704 +#, c-format +msgid "cannot create %s; no sharing possible" +msgstr "無法建立 %s; 不可能共享" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:167 -msgid "Not a name file" -msgstr "並不是一個命名檔案" +#: nscd/connections.c:775 +#, c-format +msgid "cannot write to database file %s: %s" +msgstr "無法寫入資料庫檔案 %s: %s" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:168 -msgid "Not available" -msgstr "不存在" +#: nscd/connections.c:814 +#, c-format +msgid "cannot set socket to close on exec: %s; disabling paranoia mode" +msgstr "無法設定通訊端到關閉於 exec:%s; 停用 paranoia 模式" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:169 -msgid "Is a name file" -msgstr "是個有名字的檔案" +#: nscd/connections.c:897 +#, c-format +msgid "cannot open socket: %s" +msgstr "無法開啟 socket: %s" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:171 -msgid "Reserved for future use" -msgstr "保留給將來使用" +#: nscd/connections.c:917 +#, c-format +msgid "cannot change socket to nonblocking mode: %s" +msgstr "無法變更通訊端為非區塊模式:%s" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:172 -msgid "Error 142" -msgstr "第 142 號錯誤" +#: nscd/connections.c:925 +#, c-format +msgid "cannot set socket to close on exec: %s" +msgstr "無法設定通訊端於 exec:%s 時關閉" -#: stdio-common/../sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c:173 -msgid "Cannot send after socket shutdown" -msgstr "無法在 socket 關閉後傳送" +#: nscd/connections.c:938 +#, c-format +msgid "cannot enable socket to accept connections: %s" +msgstr "無法開啟 socket 來接受連線: %s" -#: stdio-common/psignal.c:63 +#: nscd/connections.c:1039 #, c-format -msgid "%s%sUnknown signal %d\n" -msgstr "%s%s未知的訊號 %d\n" +msgid "provide access to FD %d, for %s" +msgstr "提供存取到 FD %d, 用於 %s" -#: dlfcn/dlinfo.c:51 -msgid "RTLD_SELF used in code not dynamically loaded" -msgstr "程式碼所使用的 RTLD_SELF 沒有動態載入" +#: nscd/connections.c:1051 +#, c-format +msgid "cannot handle old request version %d; current version is %d" +msgstr "不能處理舊 %d 版的請求;目前使用的版本是 %d" -#: dlfcn/dlinfo.c:61 -msgid "unsupported dlinfo request" -msgstr "未支援的 dlinfo 請求" +#: nscd/connections.c:1073 +#, c-format +msgid "request from %ld not handled due to missing permission" +msgstr "由於缺少權限而無法處理來自 %ld 的要求" -#: malloc/mcheck.c:346 -msgid "memory is consistent, library is buggy\n" -msgstr "記憶體內容一致,函式庫有問題\n" +#: nscd/connections.c:1078 +#, c-format +msgid "request from '%s' [%ld] not handled due to missing permission" +msgstr "由於缺少權限而無法處理來自 '%s' [%ld] 的要求" -#: malloc/mcheck.c:349 -msgid "memory clobbered before allocated block\n" -msgstr "記憶體在配置區塊之前就 clobbered 了\n" +#: nscd/connections.c:1083 +msgid "request not handled due to missing permission" +msgstr "要求無法控柄的由於缺少權限" -#: malloc/mcheck.c:352 -msgid "memory clobbered past end of allocated block\n" -msgstr "記憶體在經過配置的區塊尾部時 clobbered 了\n" +#: nscd/connections.c:1121 nscd/connections.c:1174 +#, c-format +msgid "cannot write result: %s" +msgstr "無法寫入結果: %s" -#: malloc/mcheck.c:355 -msgid "block freed twice\n" -msgstr "此區塊被用 free 指令釋放了兩次\n" +#: nscd/connections.c:1257 +#, c-format +msgid "error getting caller's id: %s" +msgstr "取得呼叫程式識別碼時發生錯誤: %s" -#: malloc/mcheck.c:358 -msgid "bogus mcheck_status, library is buggy\n" -msgstr "記憶體檢查狀態 (mcheck_ststus) 有誤,您所用的函式庫有問題\n" +#: nscd/connections.c:1316 +#, c-format +msgid "cannot open /proc/self/cmdline: %s; disabling paranoia mode" +msgstr "無法開啟/proc/self/cmdline:%s; 停用 paranoia 模式" -#: malloc/memusagestat.c:53 -msgid "Name output file" -msgstr "名稱輸出檔" +#: nscd/connections.c:1330 +#, c-format +msgid "cannot read /proc/self/cmdline: %s; disabling paranoia mode" +msgstr "無法讀取/proc/self/cmdline:%s; 停用 paranoia 模式" -#: malloc/memusagestat.c:54 -msgid "Title string used in output graphic" -msgstr "在輸出的圖像中使用有標頭的字串" +#: nscd/connections.c:1370 +#, c-format +msgid "cannot change to old UID: %s; disabling paranoia mode" +msgstr "無法變更為舊的 UID:%s; 停用 paranoia 模式" -#: malloc/memusagestat.c:55 -msgid "Generate output linear to time (default is linear to number of function calls)" -msgstr "產生輸出與時間呈線性關係 (預設是與函式呼叫數目呈線性關係)" +#: nscd/connections.c:1380 +#, c-format +msgid "cannot change to old GID: %s; disabling paranoia mode" +msgstr "無法變更為舊的 GID:%s; 停用 paranoia 模式" -#: malloc/memusagestat.c:57 -msgid "Also draw graph for total memory consumption" -msgstr "同時對總記憶體時用量作圖" +#: nscd/connections.c:1393 +#, c-format +msgid "cannot change to old working directory: %s; disabling paranoia mode" +msgstr "無法變更為舊的工作目錄:%s; 停用 paranoia 模式" -#: malloc/memusagestat.c:58 -msgid "make output graphic VALUE pixel wide" -msgstr "設定輸出的圖形寬度為 VALUE 個像素" +#: nscd/connections.c:1439 +#, c-format +msgid "re-exec failed: %s; disabling paranoia mode" +msgstr "re-exec 失敗:%s; 停用 paranoia 模式" -#: malloc/memusagestat.c:59 -msgid "make output graphic VALUE pixel high" -msgstr "設定輸出的圖形高度為 VALUE 個像素" +#: nscd/connections.c:1448 +#, c-format +msgid "cannot change current working directory to \"/\": %s" +msgstr "無法變更目前的工作目錄到「/」:%s" -#: malloc/memusagestat.c:64 -msgid "Generate graphic from memory profiling data" -msgstr "從記憶體性能測試資料產生圖像" +#: nscd/connections.c:1641 +#, c-format +msgid "short read while reading request: %s" +msgstr "讀取請求時發現輸入值過短: %s" -#: malloc/memusagestat.c:67 -msgid "DATAFILE [OUTFILE]" -msgstr "資料檔 [輸出檔]" +#: nscd/connections.c:1674 +#, c-format +msgid "key length in request too long: %d" +msgstr "在此請求中使用的鍵值太長了: %d" -#: string/strerror.c:43 posix/../sysdeps/posix/gai_strerror.c:57 -msgid "Unknown error" -msgstr "未知的錯誤" +#: nscd/connections.c:1687 +#, c-format +msgid "short read while reading request key: %s" +msgstr "讀取請求的鍵值時發現輸入值過短: %s" -#: string/strsignal.c:69 +#: nscd/connections.c:1696 #, c-format -msgid "Real-time signal %d" -msgstr "即時的訊號 %d" +msgid "handle_request: request received (Version = %d) from PID %ld" +msgstr "handle_request: 請求已被接受 (版本為 %d) 來自於 PID %ld" -#: string/strsignal.c:73 +#: nscd/connections.c:1701 #, c-format -msgid "Unknown signal %d" -msgstr "未知的訊號 %d" +msgid "handle_request: request received (Version = %d)" +msgstr "handle_request: 請求已被接受 (版本為 %d)" -#: timezone/zdump.c:176 +#: nscd/connections.c:1901 nscd/connections.c:2099 #, c-format -msgid "%s: usage is %s [ --version ] [ -v ] [ -c cutoff ] zonename ...\n" -msgstr "%s: 用法是 %s [ --version ] [ -v ] [ -c 切斷 ] 地區名稱 ...\n" +msgid "disabled inotify after read error %d" +msgstr "讀取 %d 錯誤之後已停用 inotify" -#: timezone/zdump.c:269 -msgid "Error writing to standard output" -msgstr "寫入標準輸出時錯誤" +#: nscd/connections.c:2228 +msgid "could not initialize conditional variable" +msgstr "無法初始化條件變數" -#: timezone/zic.c:361 -#, c-format -msgid "%s: Memory exhausted: %s\n" -msgstr "%s: 記憶體已用完: %s\n" +#: nscd/connections.c:2236 +msgid "could not start clean-up thread; terminating" +msgstr "無法開始清理執行緒;終止中" -#: timezone/zic.c:386 misc/error.c:129 misc/error.c:157 -msgid "Unknown system error" -msgstr "未知的系統錯誤" +#: nscd/connections.c:2250 +msgid "could not start any worker thread; terminating" +msgstr "無法開始任何背景工作執行緒;終止中" -#: timezone/zic.c:420 +#: nscd/connections.c:2301 nscd/connections.c:2302 nscd/connections.c:2319 +#: nscd/connections.c:2328 nscd/connections.c:2346 nscd/connections.c:2357 +#: nscd/connections.c:2368 #, c-format -msgid "\"%s\", line %d: %s" -msgstr "\"%s\", 第 %d 行: %s" +msgid "Failed to run nscd as user '%s'" +msgstr "以使用者 '%s' 的身分執行 nscd 失敗" -#: timezone/zic.c:423 +#: nscd/connections.c:2320 #, c-format -msgid " (rule from \"%s\", line %d)" -msgstr " (規則來自 \"%s\", 第 %d 行)" +msgid "initial getgrouplist failed" +msgstr "初始 getgrouplist 失敗" -#: timezone/zic.c:435 -msgid "warning: " -msgstr "警告: " +#: nscd/connections.c:2329 +#, c-format +msgid "getgrouplist failed" +msgstr "getgrouplist 失敗" -#: timezone/zic.c:445 +#: nscd/connections.c:2347 #, c-format -msgid "" -"%s: usage is %s [ --version ] [ -s ] [ -v ] [ -l localtime ] [ -p posixrules ] \\\n" -"\t[ -d directory ] [ -L leapseconds ] [ -y yearistype ] [ filename ... ]\n" -msgstr "" -"%s: 用法是 %s [ --version ] [ -s ] [ -v ] [ -l 當地時間 ] [ -p posix規則 ] \\\n" -"\t[ -d 目錄 ] [ -L 閏秒 ] [ -y 年份型態 ] [ 檔案名稱 ... ]\n" +msgid "setgroups failed" +msgstr "setgroups 失敗" -#: timezone/zic.c:492 +#: nscd/grpcache.c:383 nscd/hstcache.c:439 nscd/initgrcache.c:406 +#: nscd/pwdcache.c:378 nscd/servicescache.c:332 #, c-format -msgid "%s: More than one -d option specified\n" -msgstr "%s: 您使用了超過一個 -d 選項\n" +msgid "short write in %s: %s" +msgstr "寫入 %s 的資料過短: %s" -#: timezone/zic.c:502 +#: nscd/grpcache.c:428 nscd/initgrcache.c:78 #, c-format -msgid "%s: More than one -l option specified\n" -msgstr "%s: 您使用了超過一個 -l 選項\n" +msgid "Haven't found \"%s\" in group cache!" +msgstr "尚未在群組快取中找到 \"%s\"!" -#: timezone/zic.c:512 +#: nscd/grpcache.c:430 nscd/initgrcache.c:80 #, c-format -msgid "%s: More than one -p option specified\n" -msgstr "%s: 您使用了超過一個 -p 選項\n" +msgid "Reloading \"%s\" in group cache!" +msgstr "重新載入「%s」於群組快取!" -#: timezone/zic.c:522 +#: nscd/grpcache.c:509 #, c-format -msgid "%s: More than one -y option specified\n" -msgstr "%s: 您使用了超過一個 -y 選項\n" +msgid "Invalid numeric gid \"%s\"!" +msgstr "無效的 gid 數值 \"%s\"!" -#: timezone/zic.c:532 +#: nscd/mem.c:431 #, c-format -msgid "%s: More than one -L option specified\n" -msgstr "%s: 您使用了超過一個 -L 選項\n" +msgid "freed %zu bytes in %s cache" +msgstr "在 %2$s 快取中 %1$zu 位元組可用" -#: timezone/zic.c:639 +#: nscd/mem.c:574 #, c-format -msgid "%s: Can't unlink %s: %s\n" -msgstr "%s: 無法取消連結 %s: %s\n" +msgid "no more memory for database '%s'" +msgstr "無記憶體可用於資料庫「%s」" -#: timezone/zic.c:646 -msgid "hard link failed, symbolic link used" -msgstr "實體連結失敗,使用符號連結代替" +#: nscd/nscd.c:101 +msgid "Read configuration data from NAME" +msgstr "自名稱中讀取設定資料" -#: timezone/zic.c:654 -#, c-format -msgid "%s: Can't link from %s to %s: %s\n" -msgstr "%s: 無法從 %s 連結到 %s: %s\n" +#: nscd/nscd.c:103 +msgid "Do not fork and display messages on the current tty" +msgstr "不在目前的 tty 產生子行程 (fork) 以及顯示訊息" -#: timezone/zic.c:752 timezone/zic.c:754 -msgid "same rule name in multiple files" -msgstr "在多個檔案裡面有相同的規則名稱" +#: nscd/nscd.c:104 +msgid "NUMBER" +msgstr "號碼" -#: timezone/zic.c:795 -msgid "unruly zone" -msgstr "沒有規則的時區" +#: nscd/nscd.c:104 +msgid "Start NUMBER threads" +msgstr "啟動執行緒" -#: timezone/zic.c:802 -#, c-format -msgid "%s in ruleless zone" -msgstr "%s 在沒有規則的區段" +#: nscd/nscd.c:105 +msgid "Shut the server down" +msgstr "將伺服器關閉" -#: timezone/zic.c:823 -msgid "standard input" -msgstr "標準輸入" +#: nscd/nscd.c:106 +msgid "Print current configuration statistics" +msgstr "印出目前組態統計" -#: timezone/zic.c:828 -#, c-format -msgid "%s: Can't open %s: %s\n" -msgstr "%s: 無法開啟 %s: %s\n" +#: nscd/nscd.c:107 +msgid "TABLE" +msgstr "表格" -#: timezone/zic.c:839 -msgid "line too long" -msgstr "行的長度過長" +#: nscd/nscd.c:108 +msgid "Invalidate the specified cache" +msgstr "使選定的快取無效" -#: timezone/zic.c:859 -msgid "input line of unknown type" -msgstr "不明型別的輸入行" +#: nscd/nscd.c:109 +msgid "TABLE,yes" +msgstr "要製作表格" + +#: nscd/nscd.c:110 +msgid "Use separate cache for each user" +msgstr "對不同使用者使用不同的快取檔案" + +#: nscd/nscd.c:115 +msgid "Name Service Cache Daemon." +msgstr "網域名稱快取精靈" -#: timezone/zic.c:875 +#: nscd/nscd.c:147 nss/getent.c:952 nss/makedb.c:123 #, c-format -msgid "%s: Leap line in non leap seconds file %s\n" -msgstr "%s: 閏時設定行 (leap line) 出現在不含閏秒的設定檔 %s 中\n" +msgid "wrong number of arguments" +msgstr "參數數目不對" -#: timezone/zic.c:882 timezone/zic.c:1297 timezone/zic.c:1322 +#: nscd/nscd.c:157 #, c-format -msgid "%s: panic: Invalid l_value %d\n" -msgstr "%s: 嚴重錯誤: 錯誤的左值 (l_value) %d\n" +msgid "failure while reading configuration file; this is fatal" +msgstr "讀取組態檔案時失敗;這是一個嚴重錯誤" -#: timezone/zic.c:890 +#: nscd/nscd.c:166 #, c-format -msgid "%s: Error reading %s\n" -msgstr "%s: 讀取錯誤 %s\n" +msgid "already running" +msgstr "已在執行" -#: timezone/zic.c:897 +#: nscd/nscd.c:181 nscd/nscd.c:236 #, c-format -msgid "%s: Error closing %s: %s\n" -msgstr "%s: 關閉錯誤 %s: %s\n" +msgid "cannot fork" +msgstr "無法衍生" -#: timezone/zic.c:902 -msgid "expected continuation line not found" -msgstr "找不到預期的接續行" +#: nscd/nscd.c:244 +#, c-format +msgid "cannot change current working directory to \"/\"" +msgstr "無法變更目前的工作目錄到「/」" -#: timezone/zic.c:958 -msgid "wrong number of fields on Rule line" -msgstr "規則設定行的欄位數目錯誤" +#: nscd/nscd.c:252 +msgid "Could not create log file" +msgstr "無法建立記錄檔" -#: timezone/zic.c:962 -msgid "nameless rule" -msgstr "規則沒有名稱" +#: nscd/nscd.c:305 nscd/nscd.c:330 nscd/nscd_stat.c:174 +#, c-format +msgid "Only root is allowed to use this option!" +msgstr "只有 root 才可以使用此一選項!" -#: timezone/zic.c:967 -msgid "invalid saved time" -msgstr "無效的節約時間" +#: nscd/nscd.c:345 +#, c-format +msgid "'%s' is not a known database" +msgstr "『%s』並非一已知資料庫" -#: timezone/zic.c:986 -msgid "wrong number of fields on Zone line" -msgstr "時區設定行的欄位數目錯誤" +#: nscd/nscd.c:370 nscd/nscd_stat.c:193 +#, c-format +msgid "write incomplete" +msgstr "寫入不完全" -#: timezone/zic.c:992 +#: nscd/nscd.c:381 #, c-format -msgid "\"Zone %s\" line and -l option are mutually exclusive" -msgstr "\"區段 %s\" 行和 -l 選項是互斥的" +msgid "cannot read invalidate ACK" +msgstr "無法讀取設為無效的 ACK" -#: timezone/zic.c:1000 +#: nscd/nscd.c:387 #, c-format -msgid "\"Zone %s\" line and -p option are mutually exclusive" -msgstr "\"區段 %s\" 行和 -p 選項是互斥的" +msgid "invalidation failed" +msgstr "無效化失敗" -#: timezone/zic.c:1012 +#: nscd/nscd.c:397 #, c-format -msgid "duplicate zone name %s (file \"%s\", line %d)" -msgstr "複製時區名稱 %s (檔案 \"%s\", 第 %d 行)" +msgid "secure services not implemented anymore" +msgstr "安全服務不再實作" -#: timezone/zic.c:1028 -msgid "wrong number of fields on Zone continuation line" -msgstr "時區接續行的欄位數目不對" +#: nscd/nscd_conf.c:57 +#, c-format +msgid "database %s is not supported" +msgstr "資料庫 %s 並未支援" -#: timezone/zic.c:1068 -msgid "invalid UTC offset" -msgstr "無效的 UTC 位移值" +#: nscd/nscd_conf.c:108 +#, c-format +msgid "Parse error: %s" +msgstr "解析錯誤: %s" -#: timezone/zic.c:1071 -msgid "invalid abbreviation format" -msgstr "無效的縮寫格式" +#: nscd/nscd_conf.c:194 +#, c-format +msgid "Must specify user name for server-user option" +msgstr "必須為伺服器使用者選項指定使用者名稱" -#: timezone/zic.c:1097 -msgid "Zone continuation line end time is not after end time of previous line" -msgstr "時區接續行的結束時間不在上一行的結束時間之後" +#: nscd/nscd_conf.c:201 +#, c-format +msgid "Must specify user name for stat-user option" +msgstr "必須為 stat 使用者選項指定使用者名稱" -#: timezone/zic.c:1124 -msgid "wrong number of fields on Leap line" -msgstr "閏時設定行的欄位數目錯誤" +#: nscd/nscd_conf.c:245 +#, c-format +msgid "invalid value for 'reload-count': %u" +msgstr "用於「reload-count」的無效值:%u" -#: timezone/zic.c:1133 -msgid "invalid leaping year" -msgstr "無效的閏年" +#: nscd/nscd_conf.c:260 +#, c-format +msgid "Must specify value for restart-interval option" +msgstr "必須指定用於 restart-interval 選項的值" -#: timezone/zic.c:1148 timezone/zic.c:1252 -msgid "invalid month name" -msgstr "無效的月份名稱" +#: nscd/nscd_conf.c:274 +#, c-format +msgid "Unknown option: %s %s %s" +msgstr "未知的選項: %s %s %s" -#: timezone/zic.c:1161 timezone/zic.c:1374 timezone/zic.c:1388 -msgid "invalid day of month" -msgstr "無效的日期數字" +#: nscd/nscd_conf.c:287 +#, c-format +msgid "cannot get current working directory: %s; disabling paranoia mode" +msgstr "無法取得目前的工作目錄:%s; 停用 paranoia 模式" -#: timezone/zic.c:1166 -msgid "time before zero" -msgstr "在零之前的時間" +#: nscd/nscd_conf.c:307 +#, c-format +msgid "maximum file size for %s database too small" +msgstr "最大值檔案大小用於 %s 資料庫太小" -#: timezone/zic.c:1170 -msgid "time too small" -msgstr "時間太小" +#: nscd/nscd_stat.c:143 +#, c-format +msgid "cannot write statistics: %s" +msgstr "無法寫入統計資料: %s" -#: timezone/zic.c:1174 -msgid "time too large" -msgstr "時間太大" +#: nscd/nscd_stat.c:158 +msgid "yes" +msgstr "是" -#: timezone/zic.c:1178 timezone/zic.c:1281 -msgid "invalid time of day" -msgstr "無效的時間數字" +#: nscd/nscd_stat.c:159 +msgid "no" +msgstr "無" -#: timezone/zic.c:1197 -msgid "illegal CORRECTION field on Leap line" -msgstr "在閏時設定行中有不合法的 CORRECTION 欄位" +#: nscd/nscd_stat.c:170 +#, c-format +msgid "Only root or %s is allowed to use this option!" +msgstr "只有 root 或 %s 才允許使用此一選項!" -#: timezone/zic.c:1201 -msgid "illegal Rolling/Stationary field on Leap line" -msgstr "在閏時設定行中有不合法的 Rolling/Stationary 欄位" +#: nscd/nscd_stat.c:181 +#, c-format +msgid "nscd not running!\n" +msgstr "nscd 並沒有在執行!\n" -#: timezone/zic.c:1216 -msgid "wrong number of fields on Link line" -msgstr "連結設定行的欄位數目錯誤" +#: nscd/nscd_stat.c:205 +#, c-format +msgid "cannot read statistics data" +msgstr "無法讀取統計資料" -#: timezone/zic.c:1220 -msgid "blank FROM field on Link line" -msgstr "Link 行中空白的 FROM 欄位" +#: nscd/nscd_stat.c:208 +#, c-format +msgid "" +"nscd configuration:\n" +"\n" +"%15d server debug level\n" +msgstr "" +"nscd 設定:\n" +"\n" +"%15d 伺服程式錯誤訊息報告等級\n" -#: timezone/zic.c:1224 -msgid "blank TO field on Link line" -msgstr "Link 行中空白的 TO 欄位" +#: nscd/nscd_stat.c:232 +#, c-format +msgid "%3ud %2uh %2um %2lus server runtime\n" +msgstr "%3ud %2uh %2um %2lus 伺服器 執行時期\n" -#: timezone/zic.c:1301 -msgid "invalid starting year" -msgstr "無效的起始年份" +#: nscd/nscd_stat.c:235 +#, c-format +msgid " %2uh %2um %2lus server runtime\n" +msgstr " %2uh %2um %2lus 伺服器 執行時期\n" + +#: nscd/nscd_stat.c:237 +#, c-format +msgid " %2um %2lus server runtime\n" +msgstr " %2um %2lus 伺服器 執行時期\n" -#: timezone/zic.c:1305 -msgid "starting year too low to be represented" -msgstr "起始年份太低,無法表示" +#: nscd/nscd_stat.c:239 +#, c-format +msgid " %2lus server runtime\n" +msgstr " %2lus 伺服器 執行時期\n" -#: timezone/zic.c:1307 -msgid "starting year too high to be represented" -msgstr "起始年份太高,無法表示" +#: nscd/nscd_stat.c:241 +#, c-format +msgid "" +"%15d current number of threads\n" +"%15d maximum number of threads\n" +"%15lu number of times clients had to wait\n" +"%15s paranoia mode enabled\n" +"%15lu restart internal\n" +"%15u reload count\n" +msgstr "" +"%15d 目前執行緒數量\n" +"%15d 最大執行緒數量\n" +"%15lu 客戶端必須等待的次數\n" +"%15s paranoia 模式已啟用\n" +"%15lu 內部重新啟動\n" +"%15u 重新載入計數\n" -#: timezone/zic.c:1326 -msgid "invalid ending year" -msgstr "無效的結束年份" +#: nscd/nscd_stat.c:276 +#, c-format +msgid "" +"\n" +"%s cache:\n" +"\n" +"%15s cache is enabled\n" +"%15s cache is persistent\n" +"%15s cache is shared\n" +"%15zu suggested size\n" +"%15zu total data pool size\n" +"%15zu used data pool size\n" +"%15lu seconds time to live for positive entries\n" +"%15lu seconds time to live for negative entries\n" +"%15 cache hits on positive entries\n" +"%15 cache hits on negative entries\n" +"%15 cache misses on positive entries\n" +"%15 cache misses on negative entries\n" +"%15lu%% cache hit rate\n" +"%15zu current number of cached values\n" +"%15zu maximum number of cached values\n" +"%15zu maximum chain length searched\n" +"%15 number of delays on rdlock\n" +"%15 number of delays on wrlock\n" +"%15 memory allocations failed\n" +"%15s check /etc/%s for changes\n" +msgstr "" +"\n" +"%s 快取:\n" +"\n" +"%15s 快取已啟用\n" +"%15s 快取為持續的\n" +"%15s 快取為共享\n" +"%15zu 建議的大小\n" +"%15zu 總計資料儲存池大小\n" +"%15zu 使用的資料儲存池大小\n" +"%15lu 正項目的存在時間(秒)\n" +"%15lu 負項目的存在時間(秒)\n" +"%15 正項目中找到快取數\n" +"%15 負項目中找到快取數\n" +"%15 正項目中遺漏的快取數\n" +"%15 負項目中遺漏的快取數\n" +"%15lu%% 快取找到的比例\n" +"%15zu 目前快取的數量值\n" +"%15zu 最大值快取數量值\n" +"%15zu 已搜尋最大值鏈接長度\n" +"%15 rdlock 延遲數量\n" +"%15 wrlock 延遲數量\n" +"%15 記憶體配置失敗\n" +"%15s 檢查 /etc/%s 的變更\n" -#: timezone/zic.c:1330 -msgid "ending year too low to be represented" -msgstr "結束年份太低,無法表示" +#: nscd/pwdcache.c:423 +#, c-format +msgid "Haven't found \"%s\" in password cache!" +msgstr "尚未在密碼快取中找到 \"%s\"!" -#: timezone/zic.c:1332 -msgid "ending year too high to be represented" -msgstr "結束年份太高,無法表示" +#: nscd/pwdcache.c:425 +#, c-format +msgid "Reloading \"%s\" in password cache!" +msgstr "重新載入「%s」於密碼快取!" -#: timezone/zic.c:1335 -msgid "starting year greater than ending year" -msgstr "起始年份比結束年份還要大" +#: nscd/pwdcache.c:506 +#, c-format +msgid "Invalid numeric uid \"%s\"!" +msgstr "無效的 uid 數值 \"%s\"!" -#: timezone/zic.c:1342 -msgid "typed single year" -msgstr "輸入的年份是同一年" +#: nscd/selinux.c:156 +#, c-format +msgid "Failed opening connection to the audit subsystem: %m" +msgstr "失敗的開啟連線到稽核子系統:%m" -#: timezone/zic.c:1379 -msgid "invalid weekday name" -msgstr "無效的工作日 (weekday) 名稱" +#: nscd/selinux.c:177 +msgid "Failed to set keep-capabilities" +msgstr "設定功能保持時失敗" -#: timezone/zic.c:1494 +#: nscd/selinux.c:178 nscd/selinux.c:241 #, c-format -msgid "%s: Can't remove %s: %s\n" -msgstr "%s: 無法移除 %s: %s\n" +msgid "prctl(KEEPCAPS) failed" +msgstr "prctl(KEEPCAPS) 失敗" -#: timezone/zic.c:1504 +#: nscd/selinux.c:192 +msgid "Failed to initialize drop of capabilities" +msgstr "初始化功能放棄時失敗" + +#: nscd/selinux.c:193 #, c-format -msgid "%s: Can't create %s: %s\n" -msgstr "%s: 無法產生 %s: %s\n" +msgid "cap_init failed" +msgstr "cap_init 失敗" + +#: nscd/selinux.c:214 nscd/selinux.c:231 +msgid "Failed to drop capabilities" +msgstr "放棄功能時失敗" -#: timezone/zic.c:1570 +#: nscd/selinux.c:215 nscd/selinux.c:232 #, c-format -msgid "%s: Error writing %s\n" -msgstr "%s: 寫入錯誤 %s\n" +msgid "cap_set_proc failed" +msgstr "cap_set_proc 失敗" -#: timezone/zic.c:1760 -msgid "can't determine time zone abbreviation to use just after until time" -msgstr "無法決定在結束時間 (untiltime) 以後該使用的時區簡寫" +#: nscd/selinux.c:240 +msgid "Failed to unset keep-capabilities" +msgstr "解除設定功能保持時失敗" -#: timezone/zic.c:1803 -msgid "too many transitions?!" -msgstr "太多時間轉換了?!" +#: nscd/selinux.c:256 +msgid "Failed to determine if kernel supports SELinux" +msgstr "決定如果內核支援 SELinux 時失敗" -#: timezone/zic.c:1822 -msgid "internal error - addtype called with bad isdst" -msgstr "內部錯誤 - 用錯誤的 isdst 呼叫 addtype 函式" +#: nscd/selinux.c:271 +#, c-format +msgid "Failed to start AVC thread" +msgstr "開始 AVC 執行緒時失敗" -#: timezone/zic.c:1826 -msgid "internal error - addtype called with bad ttisstd" -msgstr "內部錯誤 - 用錯誤的 ttisstd 呼叫 addtype 函式" +#: nscd/selinux.c:293 +#, c-format +msgid "Failed to create AVC lock" +msgstr "建立 AVC 鎖定時失敗" -#: timezone/zic.c:1830 -msgid "internal error - addtype called with bad ttisgmt" -msgstr "內部錯誤 - 用錯誤的 ttisgmt 呼叫 addtype 函式" +#: nscd/selinux.c:333 +#, c-format +msgid "Failed to start AVC" +msgstr "啟始 AVC 時失敗" -#: timezone/zic.c:1849 -msgid "too many local time types" -msgstr "太多本地時間格式了" +#: nscd/selinux.c:335 +msgid "Access Vector Cache (AVC) started" +msgstr "存取向量快取 (AVC) 開始" -#: timezone/zic.c:1877 -msgid "too many leap seconds" -msgstr "太多閏秒了" +#: nscd/selinux.c:356 +msgid "Error getting context of socket peer" +msgstr "取得對等通訊端的狀態組合時發生錯誤" -#: timezone/zic.c:1883 -msgid "repeated leap second moment" -msgstr "重複的閏秒設定" +#: nscd/selinux.c:361 +msgid "Error getting context of nscd" +msgstr "取得 nscd 的狀態組合時發生錯誤" -#: timezone/zic.c:1935 -msgid "Wild result from command execution" -msgstr "命令執行導至奇怪的結果" +#: nscd/selinux.c:367 +msgid "Error getting sid from context" +msgstr "從狀態組合取得 sid 時發生錯誤" + +#: nscd/selinux.c:374 +msgid "compile-time support for database policy missing" +msgstr "compile-time 支援用於資料庫策略缺少" + +#: nscd/selinux.c:407 +#, c-format +msgid "" +"\n" +"SELinux AVC Statistics:\n" +"\n" +"%15u entry lookups\n" +"%15u entry hits\n" +"%15u entry misses\n" +"%15u entry discards\n" +"%15u CAV lookups\n" +"%15u CAV hits\n" +"%15u CAV probes\n" +"%15u CAV misses\n" +msgstr "" +"\n" +"SELinux AVC 統計:\n" +"\n" +"%15u 項目查找\n" +"%15u 項目符合項目\n" +"%15u 項目缺少\n" +"%15u 項目捨棄\n" +"%15u CAV 查找\n" +"%15u CAV 符合項目\n" +"%15u CAV 探查\n" +"%15u CAV 缺少\n" -#: timezone/zic.c:1936 +#: nscd/servicescache.c:381 #, c-format -msgid "%s: command was '%s', result was %d\n" -msgstr "%s: 輸入命令為 '%s', 結果為 %d\n" +msgid "Haven't found \"%s\" in services cache!" +msgstr "尚未在服務快取中找到「%s」!" -#: timezone/zic.c:2031 -msgid "Odd number of quotation marks" -msgstr "引號數目為奇數" +#: nscd/servicescache.c:383 +#, c-format +msgid "Reloading \"%s\" in services cache!" +msgstr "重新載入「%s」於服務快取!" -#: timezone/zic.c:2051 timezone/zic.c:2070 -msgid "time overflow" -msgstr "時間溢位" +#: nss/getent.c:54 +msgid "database [key ...]" +msgstr "資料庫 [鍵值...]" -#: timezone/zic.c:2117 -msgid "use of 2/29 in non leap-year" -msgstr "在非閏年時用到 2/29 日" +#: nss/getent.c:59 +msgid "Service configuration to be used" +msgstr "將要使用的服務設定" -#: timezone/zic.c:2151 -msgid "no day in month matches rule" -msgstr "在月份資料中找不到符合規則的日數" +#: nss/getent.c:60 +msgid "disable IDN encoding" +msgstr "停用 IDN 編碼" -#: timezone/zic.c:2175 -msgid "too many, or too long, time zone abbreviations" -msgstr "時區縮寫太多或者太長了" +#: nss/getent.c:65 +msgid "Get entries from administrative database." +msgstr "從管理資料庫取得條目。" -#: timezone/zic.c:2216 +#: nss/getent.c:149 nss/getent.c:479 #, c-format -msgid "%s: Can't create directory %s: %s\n" -msgstr "%s: 無法建立目錄 %s: %s\n" +msgid "Enumeration not supported on %s\n" +msgstr "此項目在 %s 中不被支援\n" -#: timezone/zic.c:2238 +#: nss/getent.c:866 #, c-format -msgid "%s: %d did not sign extend correctly\n" -msgstr "%s: %d 無法正確地延展訊號\n" - -#: posix/../sysdeps/generic/wordexp.c:1797 -msgid "parameter null or not set" -msgstr "參數為空字元或是未設置" - -#: posix/../sysdeps/posix/gai_strerror.c:31 -msgid "Address family for hostname not supported" -msgstr "hostname 的位址族群不支援" +msgid "Unknown database name" +msgstr "不明的資料庫名稱" -#: posix/../sysdeps/posix/gai_strerror.c:32 -msgid "Temporary failure in name resolution" -msgstr "解析名稱時發生暫時性的錯誤" - -#: posix/../sysdeps/posix/gai_strerror.c:33 -msgid "Bad value for ai_flags" -msgstr "錯誤的 ai_flags 值" +#: nss/getent.c:896 +msgid "Supported databases:\n" +msgstr "支援的資料庫:\n" -#: posix/../sysdeps/posix/gai_strerror.c:34 -msgid "Non-recoverable failure in name resolution" -msgstr "在解析名稱時發生嚴重的錯誤" +#: nss/getent.c:962 +#, c-format +msgid "Unknown database: %s\n" +msgstr "未知的資料庫: %s\n" -#: posix/../sysdeps/posix/gai_strerror.c:35 -msgid "ai_family not supported" -msgstr "ai_family 沒有支援" +#: nss/makedb.c:60 +msgid "Convert key to lower case" +msgstr "轉換鍵轉換為小寫" -#: posix/../sysdeps/posix/gai_strerror.c:36 -msgid "Memory allocation failure" -msgstr "記憶體配置失敗" +#: nss/makedb.c:63 +msgid "Do not print messages while building database" +msgstr "不印出訊息當建立資料庫" -#: posix/../sysdeps/posix/gai_strerror.c:37 -msgid "No address associated with hostname" -msgstr "沒有此主機名稱所對應的位址" +#: nss/makedb.c:65 +msgid "Print content of database file, one entry a line" +msgstr "印出內容的資料庫檔案,一個項目列" -#: posix/../sysdeps/posix/gai_strerror.c:38 -msgid "Name or service not known" -msgstr "未知的名稱或服務" +#: nss/makedb.c:70 +msgid "Create simple DB database from textual input." +msgstr "建立簡單的庫料庫資料庫從文字輸入。" -#: posix/../sysdeps/posix/gai_strerror.c:39 -msgid "Servname not supported for ai_socktype" -msgstr "不支援 ai_socktype 的伺服名稱" +#: nss/makedb.c:73 +msgid "" +"INPUT-FILE OUTPUT-FILE\n" +"-o OUTPUT-FILE INPUT-FILE\n" +"-u INPUT-FILE" +msgstr "" +"輸入檔案名稱 輸出檔案名稱\n" +"-o 輸出檔案名稱 輸入檔案名稱\n" +"-u 輸入檔案名稱" -#: posix/../sysdeps/posix/gai_strerror.c:40 -msgid "ai_socktype not supported" -msgstr "ai_socktype 沒有支援" +#: nss/makedb.c:142 +#, c-format +msgid "No usable database library found." +msgstr "找不到可用的資料庫函式庫。" -#: posix/../sysdeps/posix/gai_strerror.c:41 -msgid "System error" -msgstr "系統錯誤" +#: nss/makedb.c:149 +#, c-format +msgid "cannot open database file `%s': %s" +msgstr "無法開啟資料庫檔案「%s」:%s" -#: posix/../sysdeps/posix/gai_strerror.c:42 -msgid "Processing request in progress" -msgstr "此項請求已經在處理當中" +#: nss/makedb.c:151 +msgid "incorrectly formatted file" +msgstr "不正確格式化的檔案" -#: posix/../sysdeps/posix/gai_strerror.c:43 -msgid "Request canceled" -msgstr "請求已被取消" +#: nss/makedb.c:331 +msgid "duplicate key" +msgstr "重複鍵值" -#: posix/../sysdeps/posix/gai_strerror.c:44 -msgid "Request not canceled" -msgstr "請求並未取消" +#: nss/makedb.c:337 +#, c-format +msgid "while writing database file" +msgstr "寫入資料庫檔案時" -#: posix/../sysdeps/posix/gai_strerror.c:45 -msgid "All requests done" -msgstr "所有請求已完成" +#: nss/makedb.c:348 +#, c-format +msgid "problems while reading `%s'" +msgstr "讀取「%s」時發生問題" -#: posix/../sysdeps/posix/gai_strerror.c:46 -msgid "Interrupted by a signal" -msgstr "由訊號所中斷" +#: nss/makedb.c:368 nss/makedb.c:385 +#, c-format +msgid "while reading database" +msgstr "讀取資料庫時" -#: posix/getconf.c:892 +#: posix/getconf.c:1036 #, c-format msgid "Usage: %s [-v specification] variable_name [pathname]\n" msgstr "用法: %s [-v 規格] 變數名稱 [路徑名稱]\n" -#: posix/getconf.c:950 +#: posix/getconf.c:1039 +#, c-format +msgid " %s -a [pathname]\n" +msgstr " %s -a [路徑名稱]\n" + +#: posix/getconf.c:1115 +#, c-format +msgid "" +"Usage: getconf [-v SPEC] VAR\n" +" or: getconf [-v SPEC] PATH_VAR PATH\n" +"\n" +"Get the configuration value for variable VAR, or for variable PATH_VAR\n" +"for path PATH. If SPEC is given, give values for compilation\n" +"environment SPEC.\n" +"\n" +msgstr "" +"用法:getconf [-v SPEC] VAR\n" +" 或: getconf [-v SPEC] PATH_VAR 路徑\n" +"\n" +"取得變數 VAR 的組態值,或是變數 PATH_VAR\n" +"用於路徑 PATH。 如果已提供 SPEC,就給出用於編譯的\n" +"環境 SPEC 值。\n" +"\n" + +#: posix/getconf.c:1173 #, c-format msgid "unknown specification \"%s\"" msgstr "不明的規格 \"%s\"" -#: posix/getconf.c:979 posix/getconf.c:995 +#: posix/getconf.c:1225 +#, c-format +msgid "Couldn't execute %s" +msgstr "無法執行 %s" + +#: posix/getconf.c:1269 posix/getconf.c:1285 msgid "undefined" msgstr "未定義" -#: posix/getconf.c:1017 +#: posix/getconf.c:1307 #, c-format msgid "Unrecognized variable `%s'" msgstr "無法識別的變數 `%s'" -#: posix/getopt.c:692 posix/getopt.c:711 +#: posix/getopt.c:594 posix/getopt.c:623 #, c-format -msgid "%s: option '%s' is ambiguous\n" -msgstr "%s: 選項 `%s' 含義不清\n" +msgid "%s: option '%s' is ambiguous; possibilities:" +msgstr "%s:選項『%s』是模稜兩可的;可能是:" -#: posix/getopt.c:744 posix/getopt.c:748 +#: posix/getopt.c:664 posix/getopt.c:668 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: 選項 `--%s' 不允許附加引數\n" -#: posix/getopt.c:757 posix/getopt.c:762 +#: posix/getopt.c:677 posix/getopt.c:682 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: 選項 `%c%s' 不允許附加引數\n" -#: posix/getopt.c:807 posix/getopt.c:829 posix/getopt.c:1159 -#: posix/getopt.c:1181 +#: posix/getopt.c:725 posix/getopt.c:744 #, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: 選項 `%s' 需要一個引數\n" +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s:選項『--%s』需要一個引數\n" -#: posix/getopt.c:867 posix/getopt.c:870 +#: posix/getopt.c:782 posix/getopt.c:785 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: 未知的選項 `--%s'\n" -#: posix/getopt.c:878 posix/getopt.c:881 +#: posix/getopt.c:793 posix/getopt.c:796 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: 未知的選項 `%c%s'\n" -#: posix/getopt.c:936 posix/getopt.c:939 -#, c-format -msgid "%s: illegal option -- '%c'\n" -msgstr "%s: 不合法的選項 -- %c\n" - -#: posix/getopt.c:945 posix/getopt.c:948 +#: posix/getopt.c:845 posix/getopt.c:848 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: 不適用的選項 -- %c\n" -#: posix/getopt.c:1003 posix/getopt.c:1022 posix/getopt.c:1234 -#: posix/getopt.c:1255 +#: posix/getopt.c:898 posix/getopt.c:915 posix/getopt.c:1123 +#: posix/getopt.c:1141 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: 選項需要一個引數 -- %c\n" -#: posix/getopt.c:1074 posix/getopt.c:1093 +#: posix/getopt.c:971 posix/getopt.c:987 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: 選項 `-W %s' 含義不清\n" -#: posix/getopt.c:1117 posix/getopt.c:1138 +#: posix/getopt.c:1011 posix/getopt.c:1029 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: 選項 `-W %s' 不允許附加引數\n" -#: posix/regcomp.c:150 +#: posix/getopt.c:1050 posix/getopt.c:1068 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s:選項『-W %s』需要一個引數\n" + +#: posix/regcomp.c:135 msgid "No match" msgstr "沒有符合的項目" -#: posix/regcomp.c:153 +#: posix/regcomp.c:138 msgid "Invalid regular expression" msgstr "不適用的常規表示式" -#: posix/regcomp.c:156 +#: posix/regcomp.c:141 msgid "Invalid collation character" msgstr "不適用的對照字元" -#: posix/regcomp.c:159 +#: posix/regcomp.c:144 msgid "Invalid character class name" msgstr "不適用的字元類別名" -#: posix/regcomp.c:162 +#: posix/regcomp.c:147 msgid "Trailing backslash" msgstr "尾端的反斜線" -#: posix/regcomp.c:165 +#: posix/regcomp.c:150 msgid "Invalid back reference" msgstr "不適用的後部索引" -#: posix/regcomp.c:168 +#: posix/regcomp.c:153 msgid "Unmatched [ or [^" msgstr "[ 或 [^ 不能匹配" -#: posix/regcomp.c:171 +#: posix/regcomp.c:156 msgid "Unmatched ( or \\(" msgstr "( 或 \\( 不能匹配" -#: posix/regcomp.c:174 +#: posix/regcomp.c:159 msgid "Unmatched \\{" msgstr "\\{ 不能匹配" -#: posix/regcomp.c:177 +#: posix/regcomp.c:162 msgid "Invalid content of \\{\\}" msgstr "不適用的 \\{\\} 內容" -#: posix/regcomp.c:180 +#: posix/regcomp.c:165 msgid "Invalid range end" msgstr "不適用的範圍結束" -#: posix/regcomp.c:183 +#: posix/regcomp.c:168 msgid "Memory exhausted" msgstr "記憶體用完了" -#: posix/regcomp.c:186 +#: posix/regcomp.c:171 msgid "Invalid preceding regular expression" msgstr "不適用的前置常規表示式" -#: posix/regcomp.c:189 +#: posix/regcomp.c:174 msgid "Premature end of regular expression" msgstr "常規表示式太早結束了" -#: posix/regcomp.c:192 +#: posix/regcomp.c:177 msgid "Regular expression too big" msgstr "正規表示式太長了" -#: posix/regcomp.c:195 +#: posix/regcomp.c:180 msgid "Unmatched ) or \\)" msgstr ") 或 \\) 不能匹配" -#: posix/regcomp.c:661 +#: posix/regcomp.c:680 msgid "No previous regular expression" msgstr "先前並未使用過常規表示式" -#: argp/argp-help.c:224 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ARGP_HELP_FMT 參數需要一個值" - -#: argp/argp-help.c:233 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: 未知的 ARGP_HELP_FMT 參數" - -#: argp/argp-help.c:245 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "ARGP_HELP_FMT 中無用的資訊: %s" - -#: argp/argp-help.c:1205 -msgid "Mandatory or optional arguments to long options are also mandatory or optional for any corresponding short options." -msgstr "長選項的必須或可選用的引數也是相對應短選項的必須或可選用的引數。" - -#: argp/argp-help.c:1592 -msgid "Usage:" -msgstr "使用方式:" - -#: argp/argp-help.c:1596 -msgid " or: " -msgstr " 或者: " - -#: argp/argp-help.c:1608 -msgid " [OPTION...]" -msgstr " [參數...]" - -#: argp/argp-help.c:1635 -#, c-format -msgid "Try `%s --help' or `%s --usage' for more information.\n" -msgstr "請試著用 `%s --help' 或 `%s --usage' 來獲得更多相關訊息。\n" - -#: argp/argp-help.c:1663 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "請將程式問題回報至 %s。\n" - -#: argp/argp-parse.c:115 -msgid "Give this help list" -msgstr "給出這個使用方式列表" - -#: argp/argp-parse.c:116 -msgid "Give a short usage message" -msgstr "給出簡短的使用訊息" - -#: argp/argp-parse.c:117 -msgid "Set the program name" -msgstr "設定程式名稱" - -#: argp/argp-parse.c:119 -msgid "Hang for SECS seconds (default 3600)" -msgstr "SECS 秒後掛斷 (預設是 3600)" - -#: argp/argp-parse.c:180 -msgid "Print program version" -msgstr "印出程式版本" - -#: argp/argp-parse.c:196 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(程式錯誤) 沒有認得的版本!?" - -#: argp/argp-parse.c:672 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: 太多的引數\n" - -#: argp/argp-parse.c:813 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(程式錯誤) 選項應該已經可辯識!?" +#: posix/wordexp.c:1832 +msgid "parameter null or not set" +msgstr "參數為空字元或是未設置" #: resolv/herror.c:68 msgid "Resolver Error 0 (no error)" @@ -3762,381 +4626,411 @@ msgstr "未知的伺服器錯誤" msgid "No address associated with name" msgstr "沒有此名稱所對應的位址" -#: resolv/herror.c:108 +#: resolv/herror.c:107 msgid "Resolver internal error" msgstr "內部解讀錯誤" -#: resolv/herror.c:111 +#: resolv/herror.c:110 msgid "Unknown resolver error" msgstr "未知的解讀錯誤" -#: resolv/res_hconf.c:147 -#, c-format -msgid "%s: line %d: expected service, found `%s'\n" -msgstr "%s: 第 %d 列: 期待一項服務,卻發現 `%s'\n" - -#: resolv/res_hconf.c:165 -#, c-format -msgid "%s: line %d: cannot specify more than %d services" -msgstr "%s: 第 %d 列: 無法指定超過 %d 個服務" - -#: resolv/res_hconf.c:191 -#, c-format -msgid "%s: line %d: list delimiter not followed by keyword" -msgstr "%s: 第 %d 列: 關鍵字不可跟在表列分隔字元之後" - -#: resolv/res_hconf.c:231 +#: resolv/res_hconf.c:124 #, c-format msgid "%s: line %d: cannot specify more than %d trim domains" msgstr "%s: 第 %d 列: 無法指定超過 %d 個修剪範圍" -#: resolv/res_hconf.c:256 +#: resolv/res_hconf.c:145 #, c-format msgid "%s: line %d: list delimiter not followed by domain" msgstr "%s: 第 %d 列: 範圍不可跟在表列分隔字元之後" -#: resolv/res_hconf.c:319 +#: resolv/res_hconf.c:204 #, c-format msgid "%s: line %d: expected `on' or `off', found `%s'\n" msgstr "%s: 第 %d 列: 預期為 `on' 或 `off',卻發現 `%s'\n" -#: resolv/res_hconf.c:366 +#: resolv/res_hconf.c:247 #, c-format msgid "%s: line %d: bad command `%s'\n" msgstr "%s: 第 %d 列: 不當的命令 `%s'\n" -#: resolv/res_hconf.c:395 +#: resolv/res_hconf.c:282 #, c-format msgid "%s: line %d: ignoring trailing garbage `%s'\n" msgstr "%s: 第 %d 列: 正在忽略尾端的無用資料 `%s'\n" -#: nss/getent.c:51 -msgid "database [key ...]" -msgstr "資料庫 [鍵值...]" +#: stdio-common/psiginfo-data.h:2 +msgid "Illegal opcode" +msgstr "不合法的 opcode" -#: nss/getent.c:56 -msgid "Service configuration to be used" -msgstr "將要使用的服務設定" +#: stdio-common/psiginfo-data.h:3 +msgid "Illegal operand" +msgstr "不合法的運算元" -#: nss/getent.c:136 nss/getent.c:375 -#, c-format -msgid "Enumeration not supported on %s\n" -msgstr "此項目在 %s 中不被支援\n" +#: stdio-common/psiginfo-data.h:4 +msgid "Illegal addressing mode" +msgstr "不合法的定址模式" -#: nss/getent.c:800 -msgid "getent - get entries from administrative database." -msgstr "getent - 從管理資料庫中取得項目內容。" +#: stdio-common/psiginfo-data.h:5 +msgid "Illegal trap" +msgstr "不合法的陷阱" -#: nss/getent.c:801 -msgid "Supported databases:" -msgstr "支援的資料庫:" +#: stdio-common/psiginfo-data.h:6 +msgid "Privileged opcode" +msgstr "需要權限的 opcode" -#: nss/getent.c:858 nscd/nscd.c:131 nscd/nscd_nischeck.c:64 -msgid "wrong number of arguments" -msgstr "參數數目不對" +#: stdio-common/psiginfo-data.h:7 +msgid "Privileged register" +msgstr "需要權限的暫存器" -#: nss/getent.c:868 -#, c-format -msgid "Unknown database: %s\n" -msgstr "未知的資料庫: %s\n" +#: stdio-common/psiginfo-data.h:8 +msgid "Coprocessor error" +msgstr "輔助處理器錯誤" -#: debug/pcprofiledump.c:52 -msgid "Don't buffer output" -msgstr "不要將輸入存入緩衝區" +#: stdio-common/psiginfo-data.h:9 +msgid "Internal stack error" +msgstr "內部堆疊錯誤" -#: debug/pcprofiledump.c:57 -msgid "Dump information generated by PC profiling." -msgstr "將產生於 PC 測速評估的資料傾卸出來" +#: stdio-common/psiginfo-data.h:12 +msgid "Integer divide by zero" +msgstr "整數被零除" -#: debug/pcprofiledump.c:60 -msgid "[FILE]" -msgstr "[檔案]" +#: stdio-common/psiginfo-data.h:13 +msgid "Integer overflow" +msgstr "整數溢位" -#: debug/pcprofiledump.c:100 -msgid "cannot open input file" -msgstr "無法開啟輸入檔" +#: stdio-common/psiginfo-data.h:14 +msgid "Floating-point divide by zero" +msgstr "浮點數被零除" -#: debug/pcprofiledump.c:106 -msgid "cannot read header" -msgstr "無法讀取標頭資料" +#: stdio-common/psiginfo-data.h:15 +msgid "Floating-point overflow" +msgstr "浮點數溢位" -#: debug/pcprofiledump.c:170 -msgid "invalid pointer size" -msgstr "無效的指標大小" +#: stdio-common/psiginfo-data.h:16 +msgid "Floating-point underflow" +msgstr "浮點數下限溢位" -#: inet/rcmd.c:163 inet/rcmd.c:166 -msgid "rcmd: Cannot allocate memory\n" -msgstr "rcmd: 無法配置記憶體\n" +#: stdio-common/psiginfo-data.h:17 +msgid "Floating-poing inexact result" +msgstr "不精確的浮點數結果" -#: inet/rcmd.c:185 inet/rcmd.c:188 -msgid "rcmd: socket: All ports in use\n" -msgstr "rcmd: socket: 所有的埠都在使用中\n" +#: stdio-common/psiginfo-data.h:18 +msgid "Invalid floating-point operation" +msgstr "無效的浮點數操作" -#: inet/rcmd.c:222 -#, c-format -msgid "connect to address %s: " -msgstr "連接到位址 %s: " +#: stdio-common/psiginfo-data.h:19 +msgid "Subscript out of range" +msgstr "註標超出範圍" -#: inet/rcmd.c:240 -#, c-format -msgid "Trying %s...\n" -msgstr "嘗試 %s...\n" +#: stdio-common/psiginfo-data.h:22 +msgid "Address not mapped to object" +msgstr "位址沒有映射到物件" -#: inet/rcmd.c:289 -#, c-format -msgid "rcmd: write (setting up stderr): %m\n" -msgstr "rcmd: write (正在設定標準錯誤輸出): %m\n" +#: stdio-common/psiginfo-data.h:23 +msgid "Invalid permissions for mapped object" +msgstr "對於映射物件的權限無效" -#: inet/rcmd.c:310 -#, c-format -msgid "rcmd: poll (setting up stderr): %m\n" -msgstr "rcmd: poll (正在設定標準錯誤輸出): %m\n" +#: stdio-common/psiginfo-data.h:26 +msgid "Invalid address alignment" +msgstr "無效的位址對齊" -#: inet/rcmd.c:313 -msgid "poll: protocol failure in circuit setup\n" -msgstr "poll: 通訊協定在設定線路時失效\n" +#: stdio-common/psiginfo-data.h:27 +msgid "Nonexisting physical address" +msgstr "不存在的實體位址" -#: inet/rcmd.c:358 -msgid "socket: protocol failure in circuit setup\n" -msgstr "socket: 通訊協定在設定線路時失效\n" +#: stdio-common/psiginfo-data.h:28 +msgid "Object-specific hardware error" +msgstr "物件特定的硬體錯誤" -#: inet/rcmd.c:387 -#, c-format -msgid "rcmd: %s: short read" -msgstr "rcmd: %s: 讀入資料過短" +#: stdio-common/psiginfo-data.h:31 +msgid "Process breakpoint" +msgstr "處理中斷點" -#: inet/rcmd.c:549 -msgid "lstat failed" -msgstr "lstat 失敗" +#: stdio-common/psiginfo-data.h:32 +msgid "Process trace trap" +msgstr "處理追蹤陷阱" -#: inet/rcmd.c:551 -msgid "not regular file" -msgstr "並非正常的檔案" +#: stdio-common/psiginfo-data.h:35 +msgid "Child has exited" +msgstr "子行程已結束" -#: inet/rcmd.c:556 -msgid "cannot open" -msgstr "無法開啟" +#: stdio-common/psiginfo-data.h:36 +msgid "Child has terminated abnormally and did not create a core file" +msgstr "子行程已異常終止且未建立記憶體檔案" -#: inet/rcmd.c:558 -msgid "fstat failed" -msgstr "fstat 失敗" +#: stdio-common/psiginfo-data.h:37 +msgid "Child hat terminated abnormally and created a core file" +msgstr "子行程已異常終止並已建立了記憶體檔案" -#: inet/rcmd.c:560 -msgid "bad owner" -msgstr "錯誤的擁有者" +#: stdio-common/psiginfo-data.h:38 +msgid "Traced child has trapped" +msgstr "追蹤的子行程已落入陷阱" -#: inet/rcmd.c:562 -msgid "writeable by other than owner" -msgstr "使用者以外的人亦可寫入" +#: stdio-common/psiginfo-data.h:39 +msgid "Child has stopped" +msgstr "子行程已停止" -#: inet/rcmd.c:564 -msgid "hard linked somewhere" -msgstr "被實體連結到某處" +#: stdio-common/psiginfo-data.h:40 +msgid "Stopped child has continued" +msgstr "停止的子行程已繼續" -#: inet/ruserpass.c:170 inet/ruserpass.c:193 -msgid "out of memory" -msgstr "記憶體不足" +#: stdio-common/psiginfo-data.h:43 +msgid "Data input available" +msgstr "資料輸入可用" + +#: stdio-common/psiginfo-data.h:44 +msgid "Output buffers available" +msgstr "輸出緩衝區可用" + +#: stdio-common/psiginfo-data.h:45 +msgid "Input message available" +msgstr "輸入訊息可用" + +#: stdio-common/psiginfo-data.h:46 +msgid "I/O error" +msgstr "I/O 錯誤" + +#: stdio-common/psiginfo-data.h:47 +msgid "High priority input available" +msgstr "高優先權輸入可用" + +#: stdio-common/psiginfo-data.h:48 +msgid "Device disconnected" +msgstr "裝置已經結束連線" + +#: stdio-common/psiginfo.c:145 +msgid "Signal sent by kill()" +msgstr "kill() 已發送信號" + +#: stdio-common/psiginfo.c:148 +msgid "Signal sent by sigqueue()" +msgstr "sigqueue() 已發送信號" + +#: stdio-common/psiginfo.c:151 +msgid "Signal generated by the expiration of a timer" +msgstr "計時器的逾期已產生信號" + +#: stdio-common/psiginfo.c:154 +msgid "Signal generated by the completion of an asynchronous I/O request" +msgstr "非同步 I/O 要求的完成已產生信號" + +#: stdio-common/psiginfo.c:158 +msgid "Signal generated by the arrival of a message on an empty message queue" +msgstr "空訊息佇列中到達的訊息已產生信號" + +#: stdio-common/psiginfo.c:163 +msgid "Signal sent by tkill()" +msgstr "tkill() 已發送信號" + +#: stdio-common/psiginfo.c:168 +msgid "Signal generated by the completion of an asynchronous name lookup request" +msgstr "非同步名稱查找要求的完成已產生信號" + +#: stdio-common/psiginfo.c:174 +msgid "Signal generated by the completion of an I/O request" +msgstr "I/O 要求的完成已產生信號" + +#: stdio-common/psiginfo.c:180 +msgid "Signal sent by the kernel" +msgstr "內核已發送信號" + +#: stdio-common/psiginfo.c:204 +#, c-format +msgid "Unknown signal %d\n" +msgstr "不明信號 %d\n" + +#: stdio-common/psignal.c:51 +#, c-format +msgid "%s%sUnknown signal %d\n" +msgstr "%s%s未知的信號 %d\n" + +#: stdio-common/psignal.c:52 +msgid "Unknown signal" +msgstr "不明的信號" -#: inet/ruserpass.c:184 -msgid "Error: .netrc file is readable by others." -msgstr "錯誤: .netrc 檔可以被別人讀取" +#: string/_strerror.c:47 sysdeps/mach/_strerror.c:87 +msgid "Unknown error " +msgstr "未知的錯誤 " -#: inet/ruserpass.c:185 -msgid "Remove password or make file unreadable by others." -msgstr "移除密碼或讓他人無法讀取檔案" +#: string/strerror.c:43 +msgid "Unknown error" +msgstr "未知的錯誤" -#: inet/ruserpass.c:277 +#: string/strsignal.c:65 #, c-format -msgid "Unknown .netrc keyword %s" -msgstr "未知的 .netrc 關鍵字 %s" +msgid "Real-time signal %d" +msgstr "即時的信號 %d" + +#: string/strsignal.c:69 +#, c-format +msgid "Unknown signal %d" +msgstr "未知的信號 %d" -#: sunrpc/auth_unix.c:115 sunrpc/auth_unix.c:118 -msgid "authunix_create: out of memory\n" -msgstr "authunix_create: 記憶體不足\n" +#: sunrpc/auth_unix.c:113 sunrpc/clnt_tcp.c:125 sunrpc/clnt_udp.c:136 +#: sunrpc/clnt_unix.c:126 sunrpc/svc_tcp.c:173 sunrpc/svc_tcp.c:218 +#: sunrpc/svc_udp.c:147 sunrpc/svc_unix.c:174 sunrpc/svc_unix.c:215 +#: sunrpc/xdr.c:632 sunrpc/xdr.c:792 sunrpc/xdr_array.c:100 +#: sunrpc/xdr_rec.c:154 sunrpc/xdr_ref.c:79 +msgid "out of memory\n" +msgstr "記憶體不足\n" -#: sunrpc/auth_unix.c:318 -msgid "auth_none.c - Fatal marshalling problem" -msgstr "auth_none.c - 嚴重的排序問題" +#: sunrpc/auth_unix.c:351 +msgid "auth_unix.c: Fatal marshalling problem" +msgstr "auth_unix.c: 嚴重的編組問題" -#: sunrpc/clnt_perr.c:118 sunrpc/clnt_perr.c:139 +#: sunrpc/clnt_perr.c:98 sunrpc/clnt_perr.c:114 #, c-format -msgid "; low version = %lu, high version = %lu" -msgstr "; 低版本 = %lu, 高版本 = %lu" +msgid "%s: %s; low version = %lu, high version = %lu" +msgstr "%s: %s; 低版本 = %lu,高版本 = %lu" -#: sunrpc/clnt_perr.c:125 -msgid "; why = " -msgstr "; 原因 = " +#: sunrpc/clnt_perr.c:105 +#, c-format +msgid "%s: %s; why = %s\n" +msgstr "%s: %s; 原因 = %s\n" -#: sunrpc/clnt_perr.c:132 +#: sunrpc/clnt_perr.c:107 #, c-format -msgid "(unknown authentication error - %d)" -msgstr "(未知鑑定錯誤 - %d)" +msgid "%s: %s; why = (unknown authentication error - %d)\n" +msgstr "%s: %s; 原因 = (不明的認證錯誤 - %d)\n" -#: sunrpc/clnt_perr.c:177 +#: sunrpc/clnt_perr.c:156 msgid "RPC: Success" msgstr "RPC: 成功" -#: sunrpc/clnt_perr.c:180 +#: sunrpc/clnt_perr.c:159 msgid "RPC: Can't encode arguments" msgstr "RPC: 無法將引數編碼" -#: sunrpc/clnt_perr.c:184 +#: sunrpc/clnt_perr.c:163 msgid "RPC: Can't decode result" msgstr "RPC: 無法解碼得出結果" -#: sunrpc/clnt_perr.c:188 +#: sunrpc/clnt_perr.c:167 msgid "RPC: Unable to send" msgstr "RPC: 無法傳送" -#: sunrpc/clnt_perr.c:192 +#: sunrpc/clnt_perr.c:171 msgid "RPC: Unable to receive" msgstr "RPC: 無法接收" -#: sunrpc/clnt_perr.c:196 +#: sunrpc/clnt_perr.c:175 msgid "RPC: Timed out" msgstr "RPC: 超過時間上限" -#: sunrpc/clnt_perr.c:200 +#: sunrpc/clnt_perr.c:179 msgid "RPC: Incompatible versions of RPC" msgstr "RPC: RPC 版本不相容" -#: sunrpc/clnt_perr.c:204 +#: sunrpc/clnt_perr.c:183 msgid "RPC: Authentication error" msgstr "RPC: 認證錯誤" -#: sunrpc/clnt_perr.c:208 +#: sunrpc/clnt_perr.c:187 msgid "RPC: Program unavailable" msgstr "RPC: 程式不存在" -#: sunrpc/clnt_perr.c:212 +#: sunrpc/clnt_perr.c:191 msgid "RPC: Program/version mismatch" msgstr "RPC: 程式/版本不符" -#: sunrpc/clnt_perr.c:216 +#: sunrpc/clnt_perr.c:195 msgid "RPC: Procedure unavailable" msgstr "RPC: 無法取得程序" -#: sunrpc/clnt_perr.c:220 +#: sunrpc/clnt_perr.c:199 msgid "RPC: Server can't decode arguments" msgstr "RPC: 伺服器無法將引數解碼" -#: sunrpc/clnt_perr.c:224 +#: sunrpc/clnt_perr.c:203 msgid "RPC: Remote system error" msgstr "RPC: 遠端程式錯誤" -#: sunrpc/clnt_perr.c:228 +#: sunrpc/clnt_perr.c:207 msgid "RPC: Unknown host" msgstr "RPC: 未知的遠端位址" -#: sunrpc/clnt_perr.c:232 +#: sunrpc/clnt_perr.c:211 msgid "RPC: Unknown protocol" msgstr "RPC: 未知的協定" -#: sunrpc/clnt_perr.c:236 +#: sunrpc/clnt_perr.c:215 msgid "RPC: Port mapper failure" msgstr "RPC: 通訊阜對映錯誤" -#: sunrpc/clnt_perr.c:240 +#: sunrpc/clnt_perr.c:219 msgid "RPC: Program not registered" msgstr "RPC: 程式沒有註冊" -#: sunrpc/clnt_perr.c:244 +#: sunrpc/clnt_perr.c:223 msgid "RPC: Failed (unspecified error)" msgstr "RPC: 失敗 (非特定的錯誤)" -#: sunrpc/clnt_perr.c:285 +#: sunrpc/clnt_perr.c:264 msgid "RPC: (unknown error code)" msgstr "RPC: (未知的錯誤碼)" -#: sunrpc/clnt_perr.c:357 +#: sunrpc/clnt_perr.c:336 msgid "Authentication OK" msgstr "鑑定完成" -#: sunrpc/clnt_perr.c:360 +#: sunrpc/clnt_perr.c:339 msgid "Invalid client credential" -msgstr "不適用的請求端身份認證" +msgstr "不適用的請求端身分認證" -#: sunrpc/clnt_perr.c:364 +#: sunrpc/clnt_perr.c:343 msgid "Server rejected credential" -msgstr "伺服器拒絕身份證明" +msgstr "伺服器拒絕身分證明" -#: sunrpc/clnt_perr.c:368 +#: sunrpc/clnt_perr.c:347 msgid "Invalid client verifier" msgstr "不適用的請求端認證" -#: sunrpc/clnt_perr.c:372 +#: sunrpc/clnt_perr.c:351 msgid "Server rejected verifier" msgstr "伺服器拒絕認證" -#: sunrpc/clnt_perr.c:376 +#: sunrpc/clnt_perr.c:355 msgid "Client credential too weak" msgstr "用戶端背景太弱" -#: sunrpc/clnt_perr.c:380 +#: sunrpc/clnt_perr.c:359 msgid "Invalid server verifier" msgstr "不適用的服務認證" -#: sunrpc/clnt_perr.c:384 +#: sunrpc/clnt_perr.c:363 msgid "Failed (unspecified error)" -msgstr "失敗 (沒有指定的錯誤)" - -#: sunrpc/clnt_raw.c:117 -msgid "clnt_raw.c - Fatal header serialization error." -msgstr "clnt_raw.c - 嚴重的標頭序列化錯誤。" - -#: sunrpc/clnt_tcp.c:134 sunrpc/clnt_tcp.c:137 -msgid "clnttcp_create: out of memory\n" -msgstr "clnttcp_create: 記憶體不足\n" - -#: sunrpc/clnt_udp.c:141 sunrpc/clnt_udp.c:144 -msgid "clntudp_create: out of memory\n" -msgstr "clntudp_create: 記憶體不足\n" - -#: sunrpc/clnt_unix.c:131 sunrpc/clnt_unix.c:134 -msgid "clntunix_create: out of memory\n" -msgstr "clntunix_create: 記憶體不足\n" - -#: sunrpc/get_myaddr.c:78 -msgid "get_myaddress: ioctl (get interface configuration)" -msgstr "get_myaddress: ioctl (取得介面設定資料)" +msgstr "失敗 (無特定的錯誤)" -#: sunrpc/pm_getmaps.c:74 -msgid "pmap_getmaps rpc problem" -msgstr "pmap_getmaps 遠端程序呼叫問題" +#: sunrpc/clnt_raw.c:115 +msgid "clnt_raw.c: fatal header serialization error" +msgstr "clnt_raw.c: 嚴重的標頭序列化錯誤" -#: sunrpc/pmap_clnt.c:72 -msgid "__get_myaddress: ioctl (get interface configuration)" -msgstr "__get_myaddress: ioctl (取得介面組態)" +#: sunrpc/pm_getmaps.c:77 +msgid "pmap_getmaps.c: rpc problem" +msgstr "pmap_getmaps.c: 遠端程序呼叫問題" -#: sunrpc/pmap_clnt.c:137 +#: sunrpc/pmap_clnt.c:127 msgid "Cannot register service" msgstr "無法註冊服務" -#: sunrpc/pmap_rmt.c:190 -msgid "broadcast: ioctl (get interface configuration)" -msgstr "broadcast: ioctl (取得介面設定值)" - -#: sunrpc/pmap_rmt.c:199 -msgid "broadcast: ioctl (get interface flags)" -msgstr "broadcast: ioctl (取得介面旗標)" - -#: sunrpc/pmap_rmt.c:269 +#: sunrpc/pmap_rmt.c:243 msgid "Cannot create socket for broadcast rpc" msgstr "無法為廣播式遠端程序呼叫 (broadcast rpc) 產生 socket" -#: sunrpc/pmap_rmt.c:276 +#: sunrpc/pmap_rmt.c:250 msgid "Cannot set socket option SO_BROADCAST" msgstr "無法設定 socket 選項 SO_BROADCAST" -#: sunrpc/pmap_rmt.c:328 +#: sunrpc/pmap_rmt.c:302 msgid "Cannot send broadcast packet" msgstr "無法傳送廣播封包" -#: sunrpc/pmap_rmt.c:353 +#: sunrpc/pmap_rmt.c:327 msgid "Broadcast poll problem" msgstr "Broadcast 調查有問題" -#: sunrpc/pmap_rmt.c:366 +#: sunrpc/pmap_rmt.c:340 msgid "Cannot receive reply to broadcast" msgstr "無法接受廣播後的回應" @@ -4176,1853 +5070,1918 @@ msgstr "%s: C 前置處理器失效,其結束碼為 %d\n" #: sunrpc/rpc_main.c:462 #, c-format -msgid "illegal nettype :`%s'\n" -msgstr "不合法的 nettype :`%s'\n" +msgid "illegal nettype: `%s'\n" +msgstr "不合法的 nettype:「%s」\n" -#: sunrpc/rpc_main.c:1104 +#: sunrpc/rpc_main.c:1128 #, c-format msgid "rpcgen: too many defines\n" msgstr "rpcgen: 太多 define 了\n" -#: sunrpc/rpc_main.c:1116 +#: sunrpc/rpc_main.c:1140 #, c-format msgid "rpcgen: arglist coding error\n" msgstr "rpcgen: arglist 編碼錯誤\n" #. TRANS: the file will not be removed; this is an #. TRANS: informative message. -#: sunrpc/rpc_main.c:1149 +#: sunrpc/rpc_main.c:1173 #, c-format msgid "file `%s' already exists and may be overwritten\n" msgstr "檔案 `%s' 已經存在並有可能會被覆蓋掉\n" -#: sunrpc/rpc_main.c:1194 +#: sunrpc/rpc_main.c:1218 #, c-format msgid "Cannot specify more than one input file!\n" msgstr "無法指定超過一個輸入檔!\n" -#: sunrpc/rpc_main.c:1364 +#: sunrpc/rpc_main.c:1392 +#, c-format msgid "This implementation doesn't support newstyle or MT-safe code!\n" msgstr "此實作方式不支援新的形式或多安全執行序的程式!\n" -#: sunrpc/rpc_main.c:1373 +#: sunrpc/rpc_main.c:1401 #, c-format msgid "Cannot use netid flag with inetd flag!\n" msgstr "無法將 netid 旗標與 inetd 旗標一起使用!\n" -#: sunrpc/rpc_main.c:1385 +#: sunrpc/rpc_main.c:1413 +#, c-format msgid "Cannot use netid flag without TIRPC!\n" msgstr "無法在沒有 TIRPC 時使用 netid 旗標!\n" -#: sunrpc/rpc_main.c:1392 +#: sunrpc/rpc_main.c:1420 +#, c-format msgid "Cannot use table flags with newstyle!\n" msgstr "無法將表格旗標與 newstyle 一起使用!\n" -#: sunrpc/rpc_main.c:1411 +#: sunrpc/rpc_main.c:1439 #, c-format msgid "\"infile\" is required for template generation flags.\n" msgstr "\"infile\" 是樣版產生旗標所需的\n" -#: sunrpc/rpc_main.c:1416 +#: sunrpc/rpc_main.c:1444 #, c-format msgid "Cannot have more than one file generation flag!\n" msgstr "無法使用超過一個的檔案產生旗標!\n" -#: sunrpc/rpc_main.c:1425 +#: sunrpc/rpc_main.c:1453 #, c-format msgid "usage: %s infile\n" msgstr "用法: %s infile\n" -#: sunrpc/rpc_main.c:1426 +#: sunrpc/rpc_main.c:1454 #, c-format msgid "\t%s [-abkCLNTM][-Dname[=value]] [-i size] [-I [-K seconds]] [-Y path] infile\n" msgstr "\t%s [-abkCLNTM][-D名稱[=值]] [-i 大小] [-I [-K 秒數]] [-Y 路徑] 輸入檔案\n" -#: sunrpc/rpc_main.c:1428 +#: sunrpc/rpc_main.c:1456 #, c-format msgid "\t%s [-c | -h | -l | -m | -t | -Sc | -Ss | -Sm] [-o outfile] [infile]\n" msgstr "\t%s [-c | -h | -l | -m | -t | -Sc | -Ss | -Sm] [-o 輸出檔案] [輸入檔案]\n" -#: sunrpc/rpc_main.c:1430 +#: sunrpc/rpc_main.c:1458 #, c-format msgid "\t%s [-s nettype]* [-o outfile] [infile]\n" msgstr "\t%s [-s 網路型態]* [-o 輸出檔案] [輸入檔案]\n" -#: sunrpc/rpc_main.c:1431 +#: sunrpc/rpc_main.c:1459 #, c-format msgid "\t%s [-n netid]* [-o outfile] [infile]\n" msgstr "\t%s [-n 網路識別符號]* [-o 輸出檔案] [輸入檔案]\n" -#: sunrpc/rpc_scan.c:116 +#: sunrpc/rpc_main.c:1467 +#, c-format +msgid "options:\n" +msgstr "選項:\n" + +#: sunrpc/rpc_main.c:1468 +#, c-format +msgid "-a\t\tgenerate all files, including samples\n" +msgstr "-a\t\t產生所有檔案,包含樣本\n" + +#: sunrpc/rpc_main.c:1469 +#, c-format +msgid "-b\t\tbackward compatibility mode (generates code for SunOS 4.1)\n" +msgstr "-b\t\t回溯相容模式 (產生用於 SunOS 4.1 的編碼)\n" + +#: sunrpc/rpc_main.c:1470 +#, c-format +msgid "-c\t\tgenerate XDR routines\n" +msgstr "-c\t\t產生 XDR 常式\n" + +#: sunrpc/rpc_main.c:1471 +#, c-format +msgid "-C\t\tANSI C mode\n" +msgstr "-C\t\tANSI C 模式\n" + +#: sunrpc/rpc_main.c:1472 +#, c-format +msgid "-Dname[=value]\tdefine a symbol (same as #define)\n" +msgstr "-D名稱[=值]\t定義一個符號 (如同 #define)\n" + +#: sunrpc/rpc_main.c:1473 +#, c-format +msgid "-h\t\tgenerate header file\n" +msgstr "-h\t\t產生標頭檔\n" + +#: sunrpc/rpc_main.c:1474 +#, c-format +msgid "-i size\t\tsize at which to start generating inline code\n" +msgstr "-i 大小\t\t啟始產生內聯編碼的大小\n" + +#: sunrpc/rpc_main.c:1475 +#, c-format +msgid "-I\t\tgenerate code for inetd support in server (for SunOS 4.1)\n" +msgstr "-I\t\t產生在伺服器中支援的 inetd 編碼 (用於 SunOS 4.1)\n" + +#: sunrpc/rpc_main.c:1476 +#, c-format +msgid "-K seconds\tserver exits after K seconds of inactivity\n" +msgstr "-K 秒\t不作用 K 秒之後離開伺服器\n" + +#: sunrpc/rpc_main.c:1477 +#, c-format +msgid "-l\t\tgenerate client side stubs\n" +msgstr "-l\t\t產生客戶端殘餘\n" + +#: sunrpc/rpc_main.c:1478 +#, c-format +msgid "-L\t\tserver errors will be printed to syslog\n" +msgstr "-L\t\t伺服器錯誤將被列印到 syslog\n" + +#: sunrpc/rpc_main.c:1479 +#, c-format +msgid "-m\t\tgenerate server side stubs\n" +msgstr "-m\t\t產生伺服器端殘餘\n" + +#: sunrpc/rpc_main.c:1480 +#, c-format +msgid "-M\t\tgenerate MT-safe code\n" +msgstr "-M\t\t產生 MT-safe 編碼\n" + +#: sunrpc/rpc_main.c:1481 +#, c-format +msgid "-n netid\tgenerate server code that supports named netid\n" +msgstr "-n netid\t產生支援具名 netid 的伺服器編碼\n" + +#: sunrpc/rpc_main.c:1482 +#, c-format +msgid "-N\t\tsupports multiple arguments and call-by-value\n" +msgstr "-N\t\t支援多重引數和傳值呼叫\n" + +#: sunrpc/rpc_main.c:1483 +#, c-format +msgid "-o outfile\tname of the output file\n" +msgstr "-o 輸出檔\t輸出檔案的名稱\n" + +#: sunrpc/rpc_main.c:1484 +#, c-format +msgid "-s nettype\tgenerate server code that supports named nettype\n" +msgstr "-s nettype\t產生支援具名 nettype 的伺服器編碼\n" + +#: sunrpc/rpc_main.c:1485 +#, c-format +msgid "-Sc\t\tgenerate sample client code that uses remote procedures\n" +msgstr "-Sc\t\t產生使用遠端程序的範例客戶端編碼\n" + +#: sunrpc/rpc_main.c:1486 +#, c-format +msgid "-Ss\t\tgenerate sample server code that defines remote procedures\n" +msgstr "-Ss\t\t產生定義遠端程序的範例伺服器編碼\n" + +#: sunrpc/rpc_main.c:1487 +#, c-format +msgid "-Sm \t\tgenerate makefile template \n" +msgstr "-Sm\t\t產生 makefile 模板\n" + +#: sunrpc/rpc_main.c:1488 +#, c-format +msgid "-t\t\tgenerate RPC dispatch table\n" +msgstr "-t\t\t產生 RPC 派送表\n" + +#: sunrpc/rpc_main.c:1489 +#, c-format +msgid "-T\t\tgenerate code to support RPC dispatch tables\n" +msgstr "-T\t\t產生支援 RPC 派送表的編碼\n" + +#: sunrpc/rpc_main.c:1490 +#, c-format +msgid "-Y path\t\tdirectory name to find C preprocessor (cpp)\n" +msgstr "-Y 路徑\t\t要尋找 C 前置處理器 (cpp) 的目錄名稱\n" + +#: sunrpc/rpc_scan.c:112 msgid "constant or identifier expected" msgstr "應該要有常數或識別符號才對" -#: sunrpc/rpc_scan.c:312 +#: sunrpc/rpc_scan.c:308 msgid "illegal character in file: " msgstr "檔案中有不合法的字元: " -#: sunrpc/rpc_scan.c:351 sunrpc/rpc_scan.c:377 +#: sunrpc/rpc_scan.c:347 sunrpc/rpc_scan.c:373 msgid "unterminated string constant" msgstr "沒有結尾的字串常數" -#: sunrpc/rpc_scan.c:383 +#: sunrpc/rpc_scan.c:379 msgid "empty char string" msgstr "空的字元字串" -#: sunrpc/rpc_scan.c:525 sunrpc/rpc_scan.c:535 +#: sunrpc/rpc_scan.c:521 sunrpc/rpc_scan.c:531 msgid "preprocessor error" msgstr "前置處理器錯誤" -#: sunrpc/rpcinfo.c:237 sunrpc/rpcinfo.c:383 +#: sunrpc/rpcinfo.c:246 sunrpc/rpcinfo.c:392 #, c-format msgid "program %lu is not available\n" msgstr "程式 %lu 不存在\n" -#: sunrpc/rpcinfo.c:264 sunrpc/rpcinfo.c:310 sunrpc/rpcinfo.c:333 -#: sunrpc/rpcinfo.c:407 sunrpc/rpcinfo.c:453 sunrpc/rpcinfo.c:476 -#: sunrpc/rpcinfo.c:510 +#: sunrpc/rpcinfo.c:273 sunrpc/rpcinfo.c:319 sunrpc/rpcinfo.c:342 +#: sunrpc/rpcinfo.c:416 sunrpc/rpcinfo.c:462 sunrpc/rpcinfo.c:485 +#: sunrpc/rpcinfo.c:519 #, c-format msgid "program %lu version %lu is not available\n" msgstr "程式 %lu 的第 %lu 版並不存在\n" -#: sunrpc/rpcinfo.c:515 +#: sunrpc/rpcinfo.c:524 #, c-format msgid "program %lu version %lu ready and waiting\n" msgstr "程式 %lu 的第 %lu 版已經就緒並等待服務中\n" -#: sunrpc/rpcinfo.c:556 sunrpc/rpcinfo.c:563 +#: sunrpc/rpcinfo.c:565 sunrpc/rpcinfo.c:572 msgid "rpcinfo: can't contact portmapper" msgstr "rpcinfo: 無法建立跟 portmapper 之間的連線" -#: sunrpc/rpcinfo.c:570 +#: sunrpc/rpcinfo.c:579 msgid "No remote programs registered.\n" msgstr "沒有註冊過的遠端應用程式\n" -#: sunrpc/rpcinfo.c:574 +#: sunrpc/rpcinfo.c:583 msgid " program vers proto port\n" msgstr " 程式採用的協定連接阜\n" -#: sunrpc/rpcinfo.c:613 +#: sunrpc/rpcinfo.c:622 msgid "(unknown)" msgstr "(未知)" -#: sunrpc/rpcinfo.c:637 +#: sunrpc/rpcinfo.c:646 #, c-format msgid "rpcinfo: broadcast failed: %s\n" msgstr "rpcinfo: 廣播失敗: %s\n" -#: sunrpc/rpcinfo.c:658 +#: sunrpc/rpcinfo.c:667 msgid "Sorry. You are not root\n" msgstr "不好意思,你並不是 root 使用者\n" -#: sunrpc/rpcinfo.c:665 +#: sunrpc/rpcinfo.c:674 #, c-format msgid "rpcinfo: Could not delete registration for prog %s version %s\n" msgstr "rpcinfo: 無法刪除程式 %s (第 %s 版) 的註冊資料\n" -#: sunrpc/rpcinfo.c:674 +#: sunrpc/rpcinfo.c:683 msgid "Usage: rpcinfo [ -n portnum ] -u host prognum [ versnum ]\n" msgstr "使用方式: rpcinfo [ -n portnum ] -u host prognum [ versnum ]\n" -#: sunrpc/rpcinfo.c:676 +#: sunrpc/rpcinfo.c:685 msgid " rpcinfo [ -n portnum ] -t host prognum [ versnum ]\n" msgstr " rpcinfo [ -n portnum ] -t host prognum [ versnum ]\n" -#: sunrpc/rpcinfo.c:678 +#: sunrpc/rpcinfo.c:687 msgid " rpcinfo -p [ host ]\n" msgstr " rpcinfo -p [ host ]\n" -#: sunrpc/rpcinfo.c:679 +#: sunrpc/rpcinfo.c:688 msgid " rpcinfo -b prognum versnum\n" msgstr " rpcinfo -b prognum versnum\n" -#: sunrpc/rpcinfo.c:680 +#: sunrpc/rpcinfo.c:689 msgid " rpcinfo -d prognum versnum\n" msgstr " rpcinfo -d prognum versnum\n" -#: sunrpc/rpcinfo.c:695 +#: sunrpc/rpcinfo.c:714 #, c-format msgid "rpcinfo: %s is unknown service\n" msgstr "rpcinfo: %s 是不明的服務\n" -#: sunrpc/rpcinfo.c:732 +#: sunrpc/rpcinfo.c:751 #, c-format msgid "rpcinfo: %s is unknown host\n" msgstr "rpcinfo: %s 是不明的主機\n" -#: sunrpc/svc_run.c:76 +#: sunrpc/svc_run.c:71 +msgid "svc_run: - out of memory" +msgstr "svc_run:- 記憶體不足" + +#: sunrpc/svc_run.c:91 msgid "svc_run: - poll failed" msgstr "svc_run: - poll 失敗" -#: sunrpc/svc_simple.c:87 +#: sunrpc/svc_simple.c:81 #, c-format msgid "can't reassign procedure number %ld\n" msgstr "不能重複指定程序號碼 %ld\n" -#: sunrpc/svc_simple.c:96 +#: sunrpc/svc_simple.c:91 msgid "couldn't create an rpc server\n" msgstr "不能產生遠端程序呼叫伺服程式\n" -#: sunrpc/svc_simple.c:104 +#: sunrpc/svc_simple.c:99 #, c-format msgid "couldn't register prog %ld vers %ld\n" msgstr "不能將程式 %ld 註冊到 %ld\n" -#: sunrpc/svc_simple.c:111 +#: sunrpc/svc_simple.c:107 msgid "registerrpc: out of memory\n" msgstr "registerrpc: 記憶體不足\n" -#: sunrpc/svc_simple.c:175 +#: sunrpc/svc_simple.c:168 #, c-format msgid "trouble replying to prog %d\n" msgstr "回應程式 %d 時發生困難\n" -#: sunrpc/svc_simple.c:183 +#: sunrpc/svc_simple.c:177 #, c-format msgid "never registered prog %d\n" msgstr "千萬不要註冊程式 %d\n" -#: sunrpc/svc_tcp.c:155 +#: sunrpc/svc_tcp.c:149 msgid "svc_tcp.c - tcp socket creation problem" msgstr "svc_tcp.c - tcp socket 建立發生問題" -#: sunrpc/svc_tcp.c:170 +#: sunrpc/svc_tcp.c:164 msgid "svc_tcp.c - cannot getsockname or listen" msgstr "svc_tcp.c - 無法 getsockname 或 listen" -#: sunrpc/svc_tcp.c:181 sunrpc/svc_tcp.c:184 -msgid "svctcp_create: out of memory\n" -msgstr "svctcp_create: 記憶體不足\n" - -#: sunrpc/svc_tcp.c:225 sunrpc/svc_tcp.c:228 -msgid "svc_tcp: makefd_xprt: out of memory\n" -msgstr "svc_tcp: makefd_xprt: 記憶體不足\n" - -#: sunrpc/svc_udp.c:128 +#: sunrpc/svc_udp.c:122 msgid "svcudp_create: socket creation problem" msgstr "svcudp_create: socket 建立有問題" -#: sunrpc/svc_udp.c:142 +#: sunrpc/svc_udp.c:136 msgid "svcudp_create - cannot getsockname" msgstr "svcudp_create - 無法 getsockname" -#: sunrpc/svc_udp.c:154 sunrpc/svc_udp.c:157 -msgid "svcudp_create: out of memory\n" -msgstr "svcudp_create: 記憶體不足\n" - -#: sunrpc/svc_udp.c:182 sunrpc/svc_udp.c:185 +#: sunrpc/svc_udp.c:168 msgid "svcudp_create: xp_pad is too small for IP_PKTINFO\n" msgstr "svcudp_create: xp_pad 太小以致於無法 IP_PKTINFO\n" -#: sunrpc/svc_udp.c:493 +#: sunrpc/svc_udp.c:476 msgid "enablecache: cache already enabled" msgstr "enablecache: 快取已經開啟" -#: sunrpc/svc_udp.c:499 +#: sunrpc/svc_udp.c:482 msgid "enablecache: could not allocate cache" msgstr "enablecache: 無法配置快取" -#: sunrpc/svc_udp.c:507 +#: sunrpc/svc_udp.c:491 msgid "enablecache: could not allocate cache data" -msgstr "enablecache: 無法配置快取資料" - -#: sunrpc/svc_udp.c:514 -msgid "enablecache: could not allocate cache fifo" -msgstr "enablecache: 無法配置快取 fifo 管線" - -#: sunrpc/svc_udp.c:550 -msgid "cache_set: victim not found" -msgstr "cache_set: 找不到 victim" - -#: sunrpc/svc_udp.c:561 -msgid "cache_set: victim alloc failed" -msgstr "cache_set: victim 配置失敗" - -#: sunrpc/svc_udp.c:567 -msgid "cache_set: could not allocate new rpc_buffer" -msgstr "cache_set: 無法配置新的遠端程序呼叫緩衝區 (rpc_buffer)" - -#: sunrpc/svc_unix.c:150 -msgid "svc_unix.c - AF_UNIX socket creation problem" -msgstr "svc_unix.c - AF_UNIX socket 建立有問題" - -#: sunrpc/svc_unix.c:166 -msgid "svc_unix.c - cannot getsockname or listen" -msgstr "svc_unix.c - 無法 getsockname 或 listen" - -#: sunrpc/svc_unix.c:178 sunrpc/svc_unix.c:181 -msgid "svcunix_create: out of memory\n" -msgstr "svcunix_create: 記憶體不足\n" - -#: sunrpc/svc_unix.c:222 sunrpc/svc_unix.c:225 -msgid "svc_unix: makefd_xprt: out of memory\n" -msgstr "svc_unix: makefd_xprt: 記憶體不足\n" - -#: sunrpc/xdr.c:570 sunrpc/xdr.c:573 -msgid "xdr_bytes: out of memory\n" -msgstr "xdr_bytes: 記憶體不足\n" - -#: sunrpc/xdr.c:728 sunrpc/xdr.c:731 -msgid "xdr_string: out of memory\n" -msgstr "xdr_string: 記憶體不足\n" - -#: sunrpc/xdr_array.c:111 sunrpc/xdr_array.c:114 -msgid "xdr_array: out of memory\n" -msgstr "xdr_array: 記憶體不足\n" - -#: sunrpc/xdr_rec.c:158 sunrpc/xdr_rec.c:161 -msgid "xdrrec_create: out of memory\n" -msgstr "xdrrec_create: 記憶體不足\n" - -#: sunrpc/xdr_ref.c:88 sunrpc/xdr_ref.c:91 -msgid "xdr_reference: out of memory\n" -msgstr "xdr_reference: 記憶體不足\n" - -#: nis/nis_callback.c:189 -msgid "unable to free arguments" -msgstr "無法釋放參數" - -#: nis/nis_error.c:30 -msgid "Probable success" -msgstr "可能成功" - -#: nis/nis_error.c:31 -msgid "Not found" -msgstr "找不到" - -#: nis/nis_error.c:32 -msgid "Probably not found" -msgstr "可能找不到" - -#: nis/nis_error.c:33 -msgid "Cache expired" -msgstr "快取過時取消了" - -#: nis/nis_error.c:34 -msgid "NIS+ servers unreachable" -msgstr "NIS+ 伺服器無法連線" - -#: nis/nis_error.c:35 -msgid "Unknown object" -msgstr "未知的目的檔" - -#: nis/nis_error.c:36 -msgid "Server busy, try again" -msgstr "伺服器忙碌中,請再試一次" - -#: nis/nis_error.c:37 -msgid "Generic system error" -msgstr "一般系統錯誤" - -#: nis/nis_error.c:38 -msgid "First/next chain broken" -msgstr "第一個/下一個序列壞掉了" - -#: nis/nis_error.c:41 -msgid "Name not served by this server" -msgstr "網域名稱服務不是由此伺服器提供" - -#: nis/nis_error.c:42 -msgid "Server out of memory" -msgstr "伺服器記憶體已用完" - -#: nis/nis_error.c:43 -msgid "Object with same name exists" -msgstr "同名的目標已經存在" - -#: nis/nis_error.c:44 -msgid "Not master server for this domain" -msgstr "並非此一領域的主伺服器" - -#: nis/nis_error.c:45 -msgid "Invalid object for operation" -msgstr "不適用的運作物件" - -#: nis/nis_error.c:46 -msgid "Malformed name, or illegal name" -msgstr "奇怪的名字,或不合法的名字" - -#: nis/nis_error.c:47 -msgid "Unable to create callback" -msgstr "無法建立回叫資料 (callback)" - -#: nis/nis_error.c:48 -msgid "Results sent to callback proc" -msgstr "結果傳送給回傳程序" - -#: nis/nis_error.c:49 -msgid "Not found, no such name" -msgstr "找不到,沒有此一名稱" - -#: nis/nis_error.c:50 -msgid "Name/entry isn't unique" -msgstr "名稱/項目不是唯一的" - -#: nis/nis_error.c:51 -msgid "Modification failed" -msgstr "修改失敗" - -#: nis/nis_error.c:52 -msgid "Database for table does not exist" -msgstr "表格的資料庫不存在" - -#: nis/nis_error.c:53 -msgid "Entry/table type mismatch" -msgstr "項目/表格形態不符" - -#: nis/nis_error.c:54 -msgid "Link points to illegal name" -msgstr "連結指向不合法的名稱" - -#: nis/nis_error.c:55 -msgid "Partial success" -msgstr "部份成功" - -#: nis/nis_error.c:56 -msgid "Too many attributes" -msgstr "太多的屬性" - -#: nis/nis_error.c:57 -msgid "Error in RPC subsystem" -msgstr "RPC 子系統錯誤" - -#: nis/nis_error.c:58 -msgid "Missing or malformed attribute" -msgstr "缺少或奇怪的屬性" - -#: nis/nis_error.c:59 -msgid "Named object is not searchable" -msgstr "有名稱的物件無法搜尋" - -#: nis/nis_error.c:60 -msgid "Error while talking to callback proc" -msgstr "在與 callback proc 通訊時錯誤" - -#: nis/nis_error.c:61 -msgid "Non NIS+ namespace encountered" -msgstr "遭遇違反 NIS+ 命名規則的名稱" - -#: nis/nis_error.c:62 -msgid "Illegal object type for operation" -msgstr "不合法的運作物件形態" - -#: nis/nis_error.c:63 -msgid "Passed object is not the same object on server" -msgstr "經過的物件與伺服器上的並不相同" - -#: nis/nis_error.c:64 -msgid "Modify operation failed" -msgstr "修改運作方式失敗" - -#: nis/nis_error.c:65 -msgid "Query illegal for named table" -msgstr "對記名表格的查詢並不合法" - -#: nis/nis_error.c:66 -msgid "Attempt to remove a non-empty table" -msgstr "嘗試刪除一個有內容的表格" - -#: nis/nis_error.c:67 -msgid "Error in accessing NIS+ cold start file. Is NIS+ installed?" -msgstr "存取 NIS+ 原始啟動檔錯誤。有安裝 NIS+ 嗎?" - -#: nis/nis_error.c:68 -msgid "Full resync required for directory" -msgstr "目錄的 resync 請求已滿" - -#: nis/nis_error.c:69 -msgid "NIS+ operation failed" -msgstr "NIS+ 運作失敗" - -#: nis/nis_error.c:70 -msgid "NIS+ service is unavailable or not installed" -msgstr "NIS+ 服務無法取得或者尚未安裝" - -#: nis/nis_error.c:71 -msgid "Yes, 42 is the meaning of life" -msgstr "是的,42 就是存在的意義" - -#: nis/nis_error.c:72 -msgid "Unable to authenticate NIS+ server" -msgstr "無法對 NIS+ 的伺服端進行認證" - -#: nis/nis_error.c:73 -msgid "Unable to authenticate NIS+ client" -msgstr "無法對 NIS+ 的請求端進行認證" - -#: nis/nis_error.c:74 -msgid "No file space on server" -msgstr "伺服器上沒有檔案空間" - -#: nis/nis_error.c:75 -msgid "Unable to create process on server" -msgstr "無法在伺服器上建立執行程序" - -#: nis/nis_error.c:76 -msgid "Master server busy, full dump rescheduled." -msgstr "主要伺服器忙碌中,重新進行完整資料傾卸排程。" - -#: nis/nis_local_names.c:126 -#, c-format -msgid "LOCAL entry for UID %d in directory %s not unique\n" -msgstr "UID 為 %d 的項目在本地端中並不是唯一的 (在 %s 目錄裡面)\n" - -#: nis/nis_print.c:51 -msgid "UNKNOWN" -msgstr "不明" +msgstr "enablecache: 無法配置快取資料" -#: nis/nis_print.c:109 -msgid "BOGUS OBJECT\n" -msgstr "假的物件\n" +#: sunrpc/svc_udp.c:499 +msgid "enablecache: could not allocate cache fifo" +msgstr "enablecache: 無法配置快取 fifo 管線" -#: nis/nis_print.c:112 -msgid "NO OBJECT\n" -msgstr "沒有物件\n" +#: sunrpc/svc_udp.c:535 +msgid "cache_set: victim not found" +msgstr "cache_set: 找不到 victim" -#: nis/nis_print.c:115 -msgid "DIRECTORY\n" -msgstr "目錄\n" +#: sunrpc/svc_udp.c:546 +msgid "cache_set: victim alloc failed" +msgstr "cache_set: victim 配置失敗" -#: nis/nis_print.c:118 -msgid "GROUP\n" -msgstr "群組\n" +#: sunrpc/svc_udp.c:553 +msgid "cache_set: could not allocate new rpc_buffer" +msgstr "cache_set: 無法配置新的遠端程序呼叫緩衝區 (rpc_buffer)" -#: nis/nis_print.c:121 -msgid "TABLE\n" -msgstr "表格\n" +#: sunrpc/svc_unix.c:148 +msgid "svc_unix.c - AF_UNIX socket creation problem" +msgstr "svc_unix.c - AF_UNIX socket 建立有問題" -#: nis/nis_print.c:124 -msgid "ENTRY\n" -msgstr "項目\n" +#: sunrpc/svc_unix.c:164 +msgid "svc_unix.c - cannot getsockname or listen" +msgstr "svc_unix.c - 無法 getsockname 或 listen" -#: nis/nis_print.c:127 -msgid "LINK\n" -msgstr "連結\n" +#: sysdeps/generic/siglist.h:29 sysdeps/unix/siglist.c:27 +msgid "Hangup" +msgstr "掛斷" -#: nis/nis_print.c:130 -msgid "PRIVATE\n" -msgstr "私有的\n" +#: sysdeps/generic/siglist.h:30 sysdeps/unix/siglist.c:28 +msgid "Interrupt" +msgstr "中斷" -#: nis/nis_print.c:133 -msgid "(Unknown object)\n" -msgstr "(未知的物件)\n" +#: sysdeps/generic/siglist.h:31 sysdeps/unix/siglist.c:29 +msgid "Quit" +msgstr "離開" -#: nis/nis_print.c:166 -#, c-format -msgid "Name : `%s'\n" -msgstr "名稱 : `%s'\n" +#: sysdeps/generic/siglist.h:32 sysdeps/unix/siglist.c:30 +msgid "Illegal instruction" +msgstr "不合法的命令" -#: nis/nis_print.c:167 -#, c-format -msgid "Type : %s\n" -msgstr "格式 : %s\n" +#: sysdeps/generic/siglist.h:33 sysdeps/unix/siglist.c:31 +msgid "Trace/breakpoint trap" +msgstr "追蹤與中斷點陷阱" -#: nis/nis_print.c:172 -msgid "Master Server :\n" -msgstr "主要伺服器 :\n" +#: sysdeps/generic/siglist.h:34 +msgid "Aborted" +msgstr "已經終止" -#: nis/nis_print.c:174 -msgid "Replicate :\n" -msgstr "複製 :\n" +#: sysdeps/generic/siglist.h:35 sysdeps/unix/siglist.c:34 +msgid "Floating point exception" +msgstr "浮點數出錯" -#: nis/nis_print.c:175 -#, c-format -msgid "\tName : %s\n" -msgstr "\t名稱 : %s\n" +#: sysdeps/generic/siglist.h:36 sysdeps/unix/siglist.c:35 +msgid "Killed" +msgstr "已砍掉" -#: nis/nis_print.c:176 -msgid "\tPublic Key : " -msgstr "\t公共鑰匙 : " +#: sysdeps/generic/siglist.h:37 sysdeps/unix/siglist.c:36 +msgid "Bus error" +msgstr "匯流排錯誤" -#: nis/nis_print.c:180 -msgid "None.\n" -msgstr "無\n" +#: sysdeps/generic/siglist.h:38 sysdeps/unix/siglist.c:37 +msgid "Segmentation fault" +msgstr "程式記憶體區段錯誤" -#: nis/nis_print.c:183 -#, c-format -msgid "Diffie-Hellmann (%d bits)\n" -msgstr "Diffie-Hellmann (%d 位元)\n" +#. TRANS Broken pipe; there is no process reading from the other end of a pipe. +#. TRANS Every library function that returns this error code also generates a +#. TRANS @code{SIGPIPE} signal; this signal terminates the program if not handled +#. TRANS or blocked. Thus, your program will never actually see @code{EPIPE} +#. TRANS unless it has handled or blocked @code{SIGPIPE}. +#: sysdeps/generic/siglist.h:39 sysdeps/gnu/errlist.c:359 +#: sysdeps/unix/siglist.c:39 +msgid "Broken pipe" +msgstr "中斷的管線" -#: nis/nis_print.c:188 -#, c-format -msgid "RSA (%d bits)\n" -msgstr "RSA (%d 位元)\n" +#: sysdeps/generic/siglist.h:40 sysdeps/unix/siglist.c:40 +msgid "Alarm clock" +msgstr "鬧鐘" -#: nis/nis_print.c:191 -msgid "Kerberos.\n" -msgstr "Kerberos.\n" +#: sysdeps/generic/siglist.h:41 sysdeps/unix/siglist.c:41 +msgid "Terminated" +msgstr "終止" -#: nis/nis_print.c:194 -#, c-format -msgid "Unknown (type = %d, bits = %d)\n" -msgstr "未知的 (形態 = %d,位元 = %d)\n" +#: sysdeps/generic/siglist.h:42 sysdeps/unix/siglist.c:42 +msgid "Urgent I/O condition" +msgstr "緊急的輸出入狀態" -#: nis/nis_print.c:205 -#, c-format -msgid "\tUniversal addresses (%u)\n" -msgstr "\t絕對位址 (%u)\n" +#: sysdeps/generic/siglist.h:43 sysdeps/unix/siglist.c:43 +msgid "Stopped (signal)" +msgstr "停止 (信號)" -#: nis/nis_print.c:227 -msgid "Time to live : " -msgstr "存在時間 : " +#: sysdeps/generic/siglist.h:44 sysdeps/unix/siglist.c:44 +msgid "Stopped" +msgstr "停止" -#: nis/nis_print.c:229 -msgid "Default Access rights :\n" -msgstr "預設的存取權限 :\n" +#: sysdeps/generic/siglist.h:45 sysdeps/unix/siglist.c:45 +msgid "Continued" +msgstr "繼續" -#: nis/nis_print.c:238 -#, c-format -msgid "\tType : %s\n" -msgstr "\t型別 : %s\n" +#: sysdeps/generic/siglist.h:46 sysdeps/unix/siglist.c:46 +msgid "Child exited" +msgstr "子行程結束" -#: nis/nis_print.c:239 -msgid "\tAccess rights: " -msgstr "\t存取權限: " +#: sysdeps/generic/siglist.h:47 sysdeps/unix/siglist.c:47 +msgid "Stopped (tty input)" +msgstr "停止 (tty 輸入)" -#: nis/nis_print.c:252 -msgid "Group Flags :" -msgstr "群組旗標 :" +#: sysdeps/generic/siglist.h:48 sysdeps/unix/siglist.c:48 +msgid "Stopped (tty output)" +msgstr "停止 (tty 輸出)" -#: nis/nis_print.c:255 -msgid "" -"\n" -"Group Members :\n" -msgstr "" -"\n" -"群組的成員 :\n" +#: sysdeps/generic/siglist.h:49 sysdeps/unix/siglist.c:49 +msgid "I/O possible" +msgstr "I/O 可行" -#: nis/nis_print.c:266 -#, c-format -msgid "Table Type : %s\n" -msgstr "表格形式 : %s\n" +#: sysdeps/generic/siglist.h:50 sysdeps/unix/siglist.c:50 +msgid "CPU time limit exceeded" +msgstr "CPU 時間上限超過了" -#: nis/nis_print.c:267 -#, c-format -msgid "Number of Columns : %d\n" -msgstr "欄位的數目 : %d\n" +#: sysdeps/generic/siglist.h:51 sysdeps/unix/siglist.c:51 +msgid "File size limit exceeded" +msgstr "檔案大小超過上限" -#: nis/nis_print.c:268 -#, c-format -msgid "Character Separator : %c\n" -msgstr "字元分隔號 : %c\n" +#: sysdeps/generic/siglist.h:52 sysdeps/unix/siglist.c:52 +msgid "Virtual timer expired" +msgstr "虛擬計時器已過時取消了" -#: nis/nis_print.c:269 -#, c-format -msgid "Search Path : %s\n" -msgstr "搜尋路徑 : %s\n" +#: sysdeps/generic/siglist.h:53 sysdeps/unix/siglist.c:53 +msgid "Profiling timer expired" +msgstr "測速評估用的計時器已過時取消了" -#: nis/nis_print.c:270 -msgid "Columns :\n" -msgstr "行 :\n" +#: sysdeps/generic/siglist.h:54 sysdeps/unix/siglist.c:54 +msgid "Window changed" +msgstr "範圍改變了" -#: nis/nis_print.c:273 -#, c-format -msgid "\t[%d]\tName : %s\n" -msgstr "\t[%d]\t名稱 : %s\n" +#: sysdeps/generic/siglist.h:55 sysdeps/unix/siglist.c:56 +msgid "User defined signal 1" +msgstr "使用者定義的訊號 1" -#: nis/nis_print.c:275 -msgid "\t\tAttributes : " -msgstr "\t\t屬性 : " +#: sysdeps/generic/siglist.h:56 sysdeps/unix/siglist.c:57 +msgid "User defined signal 2" +msgstr "使用者定義的訊號 2" -#: nis/nis_print.c:277 -msgid "\t\tAccess Rights : " -msgstr "\t\t存取權限 : " +#: sysdeps/generic/siglist.h:60 sysdeps/unix/siglist.c:33 +msgid "EMT trap" +msgstr "EMT 陷阱" -#: nis/nis_print.c:286 -msgid "Linked Object Type : " -msgstr "連結的物件形態 : " +#: sysdeps/generic/siglist.h:63 sysdeps/unix/siglist.c:38 +msgid "Bad system call" +msgstr "錯誤的系統呼叫" -#: nis/nis_print.c:288 -#, c-format -msgid "Linked to : %s\n" -msgstr "連結到 : %s\n" +#: sysdeps/generic/siglist.h:66 +msgid "Stack fault" +msgstr "堆疊錯誤" -#: nis/nis_print.c:297 -#, c-format -msgid "\tEntry data of type %s\n" -msgstr "\t型別為 %s 的項目資料\n" +#: sysdeps/generic/siglist.h:69 +msgid "Information request" +msgstr "需要資料" -#: nis/nis_print.c:300 -#, c-format -msgid "\t[%u] - [%u bytes] " -msgstr "\t[%u] - [%u 位元組] " +#: sysdeps/generic/siglist.h:71 +msgid "Power failure" +msgstr "電源嚴重錯誤" -#: nis/nis_print.c:303 -msgid "Encrypted data\n" -msgstr "編碼資料\n" +#: sysdeps/generic/siglist.h:74 sysdeps/unix/siglist.c:55 +msgid "Resource lost" +msgstr "資源漏失" -#: nis/nis_print.c:305 -msgid "Binary data\n" -msgstr "二進位資料\n" +#. TRANS Operation not permitted; only the owner of the file (or other resource) +#. TRANS or processes with special privileges can perform the operation. +#: sysdeps/gnu/errlist.c:25 +msgid "Operation not permitted" +msgstr "此項操作並不被允許" -#: nis/nis_print.c:320 -#, c-format -msgid "Object Name : %s\n" -msgstr "物件名稱 : %s\n" +#. TRANS No process matches the specified process ID. +#: sysdeps/gnu/errlist.c:45 +msgid "No such process" +msgstr "沒有此一程序" -#: nis/nis_print.c:321 -#, c-format -msgid "Directory : %s\n" -msgstr "目錄 : %s\n" +#. TRANS Interrupted function call; an asynchronous signal occurred and prevented +#. TRANS completion of the call. When this happens, you should try the call +#. TRANS again. +#. TRANS +#. TRANS You can choose to have functions resume after a signal that is handled, +#. TRANS rather than failing with @code{EINTR}; see @ref{Interrupted +#. TRANS Primitives}. +#: sysdeps/gnu/errlist.c:60 +msgid "Interrupted system call" +msgstr "中斷的系統呼叫" -#: nis/nis_print.c:322 -#, c-format -msgid "Owner : %s\n" -msgstr "擁有者 : %s\n" +#. TRANS Input/output error; usually used for physical read or write errors. +#: sysdeps/gnu/errlist.c:69 +msgid "Input/output error" +msgstr "輸入/輸出錯誤" -#: nis/nis_print.c:323 -#, c-format -msgid "Group : %s\n" -msgstr "群組 : %s\n" +#. TRANS No such device or address. The system tried to use the device +#. TRANS represented by a file you specified, and it couldn't find the device. +#. TRANS This can mean that the device file was installed incorrectly, or that +#. TRANS the physical device is missing or not correctly attached to the +#. TRANS computer. +#: sysdeps/gnu/errlist.c:82 +msgid "No such device or address" +msgstr "沒有此一裝置或位址" -#: nis/nis_print.c:324 -msgid "Access Rights : " -msgstr "存取權限 : " +#. TRANS Argument list too long; used when the arguments passed to a new program +#. TRANS being executed with one of the @code{exec} functions (@pxref{Executing a +#. TRANS File}) occupy too much memory space. This condition never arises in the +#. TRANS GNU system. +#: sysdeps/gnu/errlist.c:94 +msgid "Argument list too long" +msgstr "引數列項目過長" + +#. TRANS Invalid executable file format. This condition is detected by the +#. TRANS @code{exec} functions; see @ref{Executing a File}. +#: sysdeps/gnu/errlist.c:104 +msgid "Exec format error" +msgstr "可執行檔格式錯誤" -#: nis/nis_print.c:326 -#, c-format -msgid "" -"\n" -"Time to Live : " -msgstr "" -"\n" -"存在的時間 : " +#. TRANS Bad file descriptor; for example, I/O on a descriptor that has been +#. TRANS closed or reading from a descriptor open only for writing (or vice +#. TRANS versa). +#: sysdeps/gnu/errlist.c:115 +msgid "Bad file descriptor" +msgstr "錯誤的檔案敘述項" -#: nis/nis_print.c:329 -#, c-format -msgid "Creation Time : %s" -msgstr "產生時間 : %s" +#. TRANS There are no child processes. This error happens on operations that are +#. TRANS supposed to manipulate child processes, when there aren't any processes +#. TRANS to manipulate. +#: sysdeps/gnu/errlist.c:126 +msgid "No child processes" +msgstr "沒有子程序存在" -#: nis/nis_print.c:331 -#, c-format -msgid "Mod. Time : %s" -msgstr "修改時間 : %s" +#. TRANS Deadlock avoided; allocating a system resource would have resulted in a +#. TRANS deadlock situation. The system does not guarantee that it will notice +#. TRANS all such situations. This error means you got lucky and the system +#. TRANS noticed; it might just hang. @xref{File Locks}, for an example. +#: sysdeps/gnu/errlist.c:138 +msgid "Resource deadlock avoided" +msgstr "避開資源鎖定" -#: nis/nis_print.c:332 -msgid "Object Type : " -msgstr "物件型別 : " +#. TRANS No memory available. The system cannot allocate more virtual memory +#. TRANS because its capacity is full. +#: sysdeps/gnu/errlist.c:148 +msgid "Cannot allocate memory" +msgstr "無法配置記憶體" -#: nis/nis_print.c:352 -#, c-format -msgid " Data Length = %u\n" -msgstr " 資料長度 = %u\n" +#. TRANS Bad address; an invalid pointer was detected. +#. TRANS In the GNU system, this error never happens; you get a signal instead. +#: sysdeps/gnu/errlist.c:167 +msgid "Bad address" +msgstr "錯誤的位址" -#: nis/nis_print.c:365 -#, c-format -msgid "Status : %s\n" -msgstr "狀態 : %s\n" +#. TRANS A file that isn't a block special file was given in a situation that +#. TRANS requires one. For example, trying to mount an ordinary file as a file +#. TRANS system in Unix gives this error. +#: sysdeps/gnu/errlist.c:178 +msgid "Block device required" +msgstr "必須是區塊裝置 (Block device)" -#: nis/nis_print.c:366 -#, c-format -msgid "Number of objects : %u\n" -msgstr "物件的數目 : %u\n" +#. TRANS Resource busy; a system resource that can't be shared is already in use. +#. TRANS For example, if you try to delete a file that is the root of a currently +#. TRANS mounted filesystem, you get this error. +#: sysdeps/gnu/errlist.c:189 +msgid "Device or resource busy" +msgstr "裝置或系統資源忙碌中" -#: nis/nis_print.c:370 -#, c-format -msgid "Object #%d:\n" -msgstr "目的檔 #%d:\n" +#. TRANS File exists; an existing file was specified in a context where it only +#. TRANS makes sense to specify a new file. +#: sysdeps/gnu/errlist.c:199 +msgid "File exists" +msgstr "檔案已存在" -#: nis/nis_print_group_entry.c:115 -#, c-format -msgid "Group entry for \"%s.%s\" group:\n" -msgstr "群組 \"%s.%s\" 群組項目:\n" +#. TRANS An attempt to make an improper link across file systems was detected. +#. TRANS This happens not only when you use @code{link} (@pxref{Hard Links}) but +#. TRANS also when you rename a file with @code{rename} (@pxref{Renaming Files}). +#: sysdeps/gnu/errlist.c:210 +msgid "Invalid cross-device link" +msgstr "不適用的裝置間連結" -#: nis/nis_print_group_entry.c:123 -msgid " Explicit members:\n" -msgstr " 明確的成員:\n" +#. TRANS The wrong type of device was given to a function that expects a +#. TRANS particular sort of device. +#: sysdeps/gnu/errlist.c:220 +msgid "No such device" +msgstr "沒有此一裝置" -#: nis/nis_print_group_entry.c:128 -msgid " No explicit members\n" -msgstr " 沒有明確的成員\n" +#. TRANS A file that isn't a directory was specified when a directory is required. +#: sysdeps/gnu/errlist.c:229 +msgid "Not a directory" +msgstr "並不是一個目錄" -#: nis/nis_print_group_entry.c:131 -msgid " Implicit members:\n" -msgstr " 不明確的成員:\n" +#. TRANS File is a directory; you cannot open a directory for writing, +#. TRANS or create or remove hard links to it. +#: sysdeps/gnu/errlist.c:239 +msgid "Is a directory" +msgstr "是個目錄" -#: nis/nis_print_group_entry.c:136 -msgid " No implicit members\n" -msgstr " 沒有不明確的成員\n" +#. TRANS Invalid argument. This is used to indicate various kinds of problems +#. TRANS with passing the wrong argument to a library function. +#: sysdeps/gnu/errlist.c:249 +msgid "Invalid argument" +msgstr "不適用的引數" -#: nis/nis_print_group_entry.c:139 -msgid " Recursive members:\n" -msgstr " 遞迴的成員:\n" +#. TRANS The current process has too many files open and can't open any more. +#. TRANS Duplicate descriptors do count toward this limit. +#. TRANS +#. TRANS In BSD and GNU, the number of open files is controlled by a resource +#. TRANS limit that can usually be increased. If you get this error, you might +#. TRANS want to increase the @code{RLIMIT_NOFILE} limit or make it unlimited; +#. TRANS @pxref{Limits on Resources}. +#: sysdeps/gnu/errlist.c:264 +msgid "Too many open files" +msgstr "開啟太多檔案" -#: nis/nis_print_group_entry.c:144 -msgid " No recursive members\n" -msgstr " 沒有遞迴的成員\n" +#. TRANS There are too many distinct file openings in the entire system. Note +#. TRANS that any number of linked channels count as just one file opening; see +#. TRANS @ref{Linked Channels}. This error never occurs in the GNU system. +#: sysdeps/gnu/errlist.c:275 +msgid "Too many open files in system" +msgstr "系統中太多的開啟檔案" -#: nis/nis_print_group_entry.c:147 nis/nis_print_group_entry.c:163 -msgid " Explicit nonmembers:\n" -msgstr " 明確的非成員:\n" +#. TRANS Inappropriate I/O control operation, such as trying to set terminal +#. TRANS modes on an ordinary file. +#: sysdeps/gnu/errlist.c:285 +msgid "Inappropriate ioctl for device" +msgstr "不希望的裝置輸出入控制 (ioctl)" -#: nis/nis_print_group_entry.c:152 -msgid " No explicit nonmembers\n" -msgstr " 沒有明確的非成員\n" +#. TRANS An attempt to execute a file that is currently open for writing, or +#. TRANS write to a file that is currently being executed. Often using a +#. TRANS debugger to run a program is considered having it open for writing and +#. TRANS will cause this error. (The name stands for ``text file busy''.) This +#. TRANS is not an error in the GNU system; the text is copied as necessary. +#: sysdeps/gnu/errlist.c:298 +msgid "Text file busy" +msgstr "文字檔忙錄中" -#: nis/nis_print_group_entry.c:155 -msgid " Implicit nonmembers:\n" -msgstr " 不明確的非成員:\n" +#. TRANS File too big; the size of a file would be larger than allowed by the system. +#: sysdeps/gnu/errlist.c:307 +msgid "File too large" +msgstr "檔案太大" -#: nis/nis_print_group_entry.c:160 -msgid " No implicit nonmembers\n" -msgstr " 沒有不明確的非成員\n" +#. TRANS No space left on device; write operation on a file failed because the +#. TRANS disk is full. +#: sysdeps/gnu/errlist.c:317 +msgid "No space left on device" +msgstr "裝置上已無多餘空間" -#: nis/nis_print_group_entry.c:168 -msgid " No recursive nonmembers\n" -msgstr " 沒有遞迴的非成員\n" +#. TRANS Invalid seek operation (such as on a pipe). +#: sysdeps/gnu/errlist.c:326 +msgid "Illegal seek" +msgstr "不合法的搜尋" -#: nis/nss_nisplus/nisplus-publickey.c:101 -#: nis/nss_nisplus/nisplus-publickey.c:182 -#, c-format -msgid "DES entry for netname %s not unique\n" -msgstr "netname %s 的 DES 項目並不唯一\n" +#. TRANS An attempt was made to modify something on a read-only file system. +#: sysdeps/gnu/errlist.c:335 +msgid "Read-only file system" +msgstr "唯讀的檔案系統" -#: nis/nss_nisplus/nisplus-publickey.c:218 -#, c-format -msgid "netname2user: missing group id list in `%s'." -msgstr "netname2user: `%s' 中缺少群組 id 列表。" +#. TRANS Too many links; the link count of a single file would become too large. +#. TRANS @code{rename} can cause this error if the file being renamed already has +#. TRANS as many links as it can take (@pxref{Renaming Files}). +#: sysdeps/gnu/errlist.c:346 +msgid "Too many links" +msgstr "太多連結" -#: nis/nss_nisplus/nisplus-publickey.c:300 -#: nis/nss_nisplus/nisplus-publickey.c:306 -#: nis/nss_nisplus/nisplus-publickey.c:370 -#: nis/nss_nisplus/nisplus-publickey.c:379 -#, c-format -msgid "netname2user: (nis+ lookup): %s\n" -msgstr "netname2user: (nis+ 搜尋): %s\n" +#. TRANS Domain error; used by mathematical functions when an argument value does +#. TRANS not fall into the domain over which the function is defined. +#: sysdeps/gnu/errlist.c:369 +msgid "Numerical argument out of domain" +msgstr "數值參數的值超出範圍" -#: nis/nss_nisplus/nisplus-publickey.c:319 -#, c-format -msgid "netname2user: DES entry for %s in directory %s not unique" -msgstr "netname2user: %s 的 DES 項目在 %s 目錄下並不是唯一的" +#. TRANS Range error; used by mathematical functions when the result value is +#. TRANS not representable because of overflow or underflow. +#: sysdeps/gnu/errlist.c:379 +msgid "Numerical result out of range" +msgstr "數值運算結果超出範圍" -#: nis/nss_nisplus/nisplus-publickey.c:337 -#, c-format -msgid "netname2user: principal name `%s' too long" -msgstr "netname2user: 主要名稱 `%s' 太長了" +#. TRANS Resource temporarily unavailable; the call might work if you try again +#. TRANS later. The macro @code{EWOULDBLOCK} is another name for @code{EAGAIN}; +#. TRANS they are always the same in the GNU C library. +#. TRANS +#. TRANS This error can happen in a few different situations: +#. TRANS +#. TRANS @itemize @bullet +#. TRANS @item +#. TRANS An operation that would block was attempted on an object that has +#. TRANS non-blocking mode selected. Trying the same operation again will block +#. TRANS until some external condition makes it possible to read, write, or +#. TRANS connect (whatever the operation). You can use @code{select} to find out +#. TRANS when the operation will be possible; @pxref{Waiting for I/O}. +#. TRANS +#. TRANS @strong{Portability Note:} In many older Unix systems, this condition +#. TRANS was indicated by @code{EWOULDBLOCK}, which was a distinct error code +#. TRANS different from @code{EAGAIN}. To make your program portable, you should +#. TRANS check for both codes and treat them the same. +#. TRANS +#. TRANS @item +#. TRANS A temporary resource shortage made an operation impossible. @code{fork} +#. TRANS can return this error. It indicates that the shortage is expected to +#. TRANS pass, so your program can try the call again later and it may succeed. +#. TRANS It is probably a good idea to delay for a few seconds before trying it +#. TRANS again, to allow time for other processes to release scarce resources. +#. TRANS Such shortages are usually fairly serious and affect the whole system, +#. TRANS so usually an interactive program should report the error to the user +#. TRANS and return to its command loop. +#. TRANS @end itemize +#: sysdeps/gnu/errlist.c:416 +msgid "Resource temporarily unavailable" +msgstr "資源暫時無法取得" -#: nis/nss_nisplus/nisplus-publickey.c:392 -#, c-format -msgid "netname2user: LOCAL entry for %s in directory %s not unique" -msgstr "netname2user: %s 的本地端項目在 %s 目錄下並不是唯一的" +#. TRANS In the GNU C library, this is another name for @code{EAGAIN} (above). +#. TRANS The values are always the same, on every operating system. +#. TRANS +#. TRANS C libraries in many older Unix systems have @code{EWOULDBLOCK} as a +#. TRANS separate error code. +#: sysdeps/gnu/errlist.c:429 +msgid "Operation would block" +msgstr "操作將會暫停" -#: nis/nss_nisplus/nisplus-publickey.c:399 -msgid "netname2user: should not have uid 0" -msgstr "netname2user: 不能有使用者 id 為 0 的情況" +#. TRANS An operation that cannot complete immediately was initiated on an object +#. TRANS that has non-blocking mode selected. Some functions that must always +#. TRANS block (such as @code{connect}; @pxref{Connecting}) never return +#. TRANS @code{EAGAIN}. Instead, they return @code{EINPROGRESS} to indicate that +#. TRANS the operation has begun and will take some time. Attempts to manipulate +#. TRANS the object before the call completes return @code{EALREADY}. You can +#. TRANS use the @code{select} function to find out when the pending operation +#. TRANS has completed; @pxref{Waiting for I/O}. +#: sysdeps/gnu/errlist.c:445 +msgid "Operation now in progress" +msgstr "操作正在處理" -#: nis/ypclnt.c:171 -#, c-format -msgid "YPBINDPROC_DOMAIN: %s\n" -msgstr "YPBINDPROC_DOMAIN: %s\n" +#. TRANS An operation is already in progress on an object that has non-blocking +#. TRANS mode selected. +#: sysdeps/gnu/errlist.c:455 +msgid "Operation already in progress" +msgstr "此項操作已在處理中" -#: nis/ypclnt.c:780 -msgid "Request arguments bad" -msgstr "必須引數有錯誤" +#. TRANS A file that isn't a socket was specified when a socket is required. +#: sysdeps/gnu/errlist.c:464 +msgid "Socket operation on non-socket" +msgstr "Socket 在非 socket 上運作" -#: nis/ypclnt.c:782 -msgid "RPC failure on NIS operation" -msgstr "NIS 運作 RPC 失敗" +#. TRANS The size of a message sent on a socket was larger than the supported +#. TRANS maximum size. +#: sysdeps/gnu/errlist.c:474 +msgid "Message too long" +msgstr "訊息太長" -#: nis/ypclnt.c:784 -msgid "Can't bind to server which serves this domain" -msgstr "無法與服務於此網域的伺服器聯繫" +#. TRANS The socket type does not support the requested communications protocol. +#: sysdeps/gnu/errlist.c:483 +msgid "Protocol wrong type for socket" +msgstr "通訊端的協定錯誤型態" -#: nis/ypclnt.c:786 -msgid "No such map in server's domain" -msgstr "在伺服器的領域資料中找不到此一對映表" +#. TRANS You specified a socket option that doesn't make sense for the +#. TRANS particular protocol being used by the socket. @xref{Socket Options}. +#: sysdeps/gnu/errlist.c:493 +msgid "Protocol not available" +msgstr "協定不存在" -#: nis/ypclnt.c:788 -msgid "No such key in map" -msgstr "在對映表中沒有此一鍵值" +#. TRANS The socket domain does not support the requested communications protocol +#. TRANS (perhaps because the requested protocol is completely invalid). +#. TRANS @xref{Creating a Socket}. +#: sysdeps/gnu/errlist.c:504 +msgid "Protocol not supported" +msgstr "協定不支援" -#: nis/ypclnt.c:790 -msgid "Internal NIS error" -msgstr "內部 NIS 錯誤" +#. TRANS The socket type is not supported. +#: sysdeps/gnu/errlist.c:513 +msgid "Socket type not supported" +msgstr "通訊端型別不支援" -#: nis/ypclnt.c:792 -msgid "Local resource allocation failure" -msgstr "區域資源配置失敗" +#. TRANS The operation you requested is not supported. Some socket functions +#. TRANS don't make sense for all types of sockets, and others may not be +#. TRANS implemented for all communications protocols. In the GNU system, this +#. TRANS error can happen for many calls when the object does not support the +#. TRANS particular operation; it is a generic indication that the server knows +#. TRANS nothing to do for that call. +#: sysdeps/gnu/errlist.c:527 +msgid "Operation not supported" +msgstr "此項操作並不被支援" -#: nis/ypclnt.c:794 -msgid "No more records in map database" -msgstr "在對映表資料庫中沒有其他紀錄了" +#. TRANS The socket communications protocol family you requested is not supported. +#: sysdeps/gnu/errlist.c:536 +msgid "Protocol family not supported" +msgstr "協定群組不支援" -#: nis/ypclnt.c:796 -msgid "Can't communicate with portmapper" -msgstr "無法與 portmapper 通訊" +#. TRANS The address family specified for a socket is not supported; it is +#. TRANS inconsistent with the protocol being used on the socket. @xref{Sockets}. +#: sysdeps/gnu/errlist.c:546 +msgid "Address family not supported by protocol" +msgstr "位址族群不被協定所支援" -#: nis/ypclnt.c:798 -msgid "Can't communicate with ypbind" -msgstr "無法與 ypbind 通訊" +#. TRANS The requested socket address is already in use. @xref{Socket Addresses}. +#: sysdeps/gnu/errlist.c:555 +msgid "Address already in use" +msgstr "位址已經有在使用" -#: nis/ypclnt.c:800 -msgid "Can't communicate with ypserv" -msgstr "無法與 ypserv 通訊" +#. TRANS The requested socket address is not available; for example, you tried +#. TRANS to give a socket a name that doesn't match the local host name. +#. TRANS @xref{Socket Addresses}. +#: sysdeps/gnu/errlist.c:566 +msgid "Cannot assign requested address" +msgstr "無法指定所需的位址" -#: nis/ypclnt.c:802 -msgid "Local domain name not set" -msgstr "區域網域名稱沒有設定" +#. TRANS A socket operation failed because the network was down. +#: sysdeps/gnu/errlist.c:575 +msgid "Network is down" +msgstr "網路停擺" -#: nis/ypclnt.c:804 -msgid "NIS map database is bad" -msgstr "NIS 對映資料庫是壞的" +#. TRANS A socket operation failed because the subnet containing the remote host +#. TRANS was unreachable. +#: sysdeps/gnu/errlist.c:585 +msgid "Network is unreachable" +msgstr "無法接觸網路" -#: nis/ypclnt.c:806 -msgid "NIS client/server version mismatch - can't supply service" -msgstr "NIS 請求端/伺服端版本不符合 - 無法提供服務" +#. TRANS A network connection was reset because the remote host crashed. +#: sysdeps/gnu/errlist.c:594 +msgid "Network dropped connection on reset" +msgstr "在重設時網路連線漏失" -#: nis/ypclnt.c:810 -msgid "Database is busy" -msgstr "資料庫正在忙碌" +#. TRANS A network connection was aborted locally. +#: sysdeps/gnu/errlist.c:603 +msgid "Software caused connection abort" +msgstr "軟體造成連線中斷" -#: nis/ypclnt.c:812 -msgid "Unknown NIS error code" -msgstr "未知的 NIS 錯誤碼" +#. TRANS A network connection was closed for reasons outside the control of the +#. TRANS local host, such as by the remote machine rebooting or an unrecoverable +#. TRANS protocol violation. +#: sysdeps/gnu/errlist.c:614 +msgid "Connection reset by peer" +msgstr "連線被對方重設" -#: nis/ypclnt.c:854 -msgid "Internal ypbind error" -msgstr "內部 ypbind 錯誤" +#. TRANS The kernel's buffers for I/O operations are all in use. In GNU, this +#. TRANS error is always synonymous with @code{ENOMEM}; you may get one or the +#. TRANS other from network operations. +#: sysdeps/gnu/errlist.c:625 +msgid "No buffer space available" +msgstr "沒有可用的緩衝空間了" -#: nis/ypclnt.c:856 -msgid "Domain not bound" -msgstr "網域找不到" +#. TRANS You tried to connect a socket that is already connected. +#. TRANS @xref{Connecting}. +#: sysdeps/gnu/errlist.c:635 +msgid "Transport endpoint is already connected" +msgstr "傳輸的兩端已經完成連線了" -#: nis/ypclnt.c:858 -msgid "System resource allocation failure" -msgstr "系統資源配置失敗" +#. TRANS The socket is not connected to anything. You get this error when you +#. TRANS try to transmit data over a socket, without first specifying a +#. TRANS destination for the data. For a connectionless socket (for datagram +#. TRANS protocols, such as UDP), you get @code{EDESTADDRREQ} instead. +#: sysdeps/gnu/errlist.c:647 +msgid "Transport endpoint is not connected" +msgstr "傳輸的兩端尚未連線" -#: nis/ypclnt.c:860 -msgid "Unknown ypbind error" -msgstr "未知的 ypbind 錯誤" +#. TRANS No default destination address was set for the socket. You get this +#. TRANS error when you try to transmit data over a connectionless socket, +#. TRANS without first specifying a destination for the data with @code{connect}. +#: sysdeps/gnu/errlist.c:658 +msgid "Destination address required" +msgstr "需要目標位址" -#: nis/ypclnt.c:899 -msgid "yp_update: cannot convert host to netname\n" -msgstr "yp_update: 無法轉換主機的網路名稱\n" +#. TRANS The socket has already been shut down. +#: sysdeps/gnu/errlist.c:667 +msgid "Cannot send after transport endpoint shutdown" +msgstr "無法在輸送端點關閉後傳送" -#: nis/ypclnt.c:911 -msgid "yp_update: cannot get server address\n" -msgstr "yp_update: 無法取得伺服器位址\n" +#. TRANS ??? +#: sysdeps/gnu/errlist.c:676 +msgid "Too many references: cannot splice" +msgstr "太多的參考指標: 無法連接" -#: nscd/cache.c:94 -msgid "while allocating hash table entry" -msgstr "在配置 hash 表格項目時" +#. TRANS A socket operation with a specified timeout received no response during +#. TRANS the timeout period. +#: sysdeps/gnu/errlist.c:686 +msgid "Connection timed out" +msgstr "連線超過時間" -#: nscd/cache.c:162 nscd/connections.c:184 -#, c-format -msgid "cannot stat() file `%s': %s" -msgstr "無法 stat() 檔案 `%s': %s" +#. TRANS A remote host refused to allow the network connection (typically because +#. TRANS it is not running the requested service). +#: sysdeps/gnu/errlist.c:696 +msgid "Connection refused" +msgstr "連線被拒絕" -#: nscd/connections.c:150 -msgid "Cannot run nscd in secure mode as unprivileged user" -msgstr "無法以未獲授權的使用者身分在安全模式中執行 nscd" +#. TRANS Too many levels of symbolic links were encountered in looking up a file name. +#. TRANS This often indicates a cycle of symbolic links. +#: sysdeps/gnu/errlist.c:706 +msgid "Too many levels of symbolic links" +msgstr "太多層級的符號連結檔" -#: nscd/connections.c:172 -#, c-format -msgid "while allocating cache: %s" -msgstr "當配置快取項目: %s" +#. TRANS Filename too long (longer than @code{PATH_MAX}; @pxref{Limits for +#. TRANS Files}) or host name too long (in @code{gethostname} or +#. TRANS @code{sethostname}; @pxref{Host Identification}). +#: sysdeps/gnu/errlist.c:717 +msgid "File name too long" +msgstr "檔名太長" -#: nscd/connections.c:197 -#, c-format -msgid "cannot open socket: %s" -msgstr "無法開啟 socket: %s" +#. TRANS The remote host for a requested network connection is down. +#: sysdeps/gnu/errlist.c:726 +msgid "Host is down" +msgstr "遠端系統已停機了" -#: nscd/connections.c:215 -#, c-format -msgid "cannot enable socket to accept connections: %s" -msgstr "無法開啟 socket 來接受連線: %s" +#. TRANS The remote host for a requested network connection is not reachable. +#: sysdeps/gnu/errlist.c:735 +msgid "No route to host" +msgstr "找不到通往該主機的路由路徑" -#: nscd/connections.c:260 -#, c-format -msgid "cannot handle old request version %d; current version is %d" -msgstr "不能處理舊 %d 版的請求;目前使用的版本是 %d" +#. TRANS Directory not empty, where an empty directory was expected. Typically, +#. TRANS this error occurs when you are trying to delete a directory. +#: sysdeps/gnu/errlist.c:745 +msgid "Directory not empty" +msgstr "目錄不是空的" -#: nscd/connections.c:298 nscd/connections.c:324 -#, c-format -msgid "cannot write result: %s" -msgstr "無法寫入結果: %s" +#. TRANS This means that the per-user limit on new process would be exceeded by +#. TRANS an attempted @code{fork}. @xref{Limits on Resources}, for details on +#. TRANS the @code{RLIMIT_NPROC} limit. +#: sysdeps/gnu/errlist.c:756 +msgid "Too many processes" +msgstr "太多的行程" -#: nscd/connections.c:392 nscd/connections.c:514 -#, c-format -msgid "error getting caller's id: %s" -msgstr "取得呼叫程式識別碼時發生錯誤: %s" +#. TRANS The file quota system is confused because there are too many users. +#. TRANS @c This can probably happen in a GNU system when using NFS. +#: sysdeps/gnu/errlist.c:766 +msgid "Too many users" +msgstr "太多使用者" -#: nscd/connections.c:485 -#, c-format -msgid "while accepting connection: %s" -msgstr "在接受連線時: %s" +#. TRANS The user's disk quota was exceeded. +#: sysdeps/gnu/errlist.c:775 +msgid "Disk quota exceeded" +msgstr "硬碟 quota 滿了" -#: nscd/connections.c:498 -#, c-format -msgid "short read while reading request: %s" -msgstr "讀取請求時發現輸入值過短: %s" +#. TRANS Stale NFS file handle. This indicates an internal confusion in the NFS +#. TRANS system which is due to file system rearrangements on the server host. +#. TRANS Repairing this condition usually requires unmounting and remounting +#. TRANS the NFS file system on the local host. +#: sysdeps/gnu/errlist.c:787 +msgid "Stale NFS file handle" +msgstr "過舊的 NFS 檔案控制碼" -#: nscd/connections.c:542 -#, c-format -msgid "key length in request too long: %d" -msgstr "在此請求中使用的鍵值太長了: %d" +#. TRANS An attempt was made to NFS-mount a remote file system with a file name that +#. TRANS already specifies an NFS-mounted file. +#. TRANS (This is an error on some operating systems, but we expect it to work +#. TRANS properly on the GNU system, making this error code impossible.) +#: sysdeps/gnu/errlist.c:799 +msgid "Object is remote" +msgstr "目標檔案位於遠端" -#: nscd/connections.c:556 -#, c-format -msgid "short read while reading request key: %s" -msgstr "讀取請求的鍵值時發現輸入值過短: %s" +#. TRANS ??? +#: sysdeps/gnu/errlist.c:808 +msgid "RPC struct is bad" +msgstr "RPC 結構是壞的" -#: nscd/connections.c:566 -#, c-format -msgid "handle_request: request received (Version = %d) from PID %ld" -msgstr "handle_request: 請求已被接受 (版本為 %d) 來自於 PID %ld" +#. TRANS ??? +#: sysdeps/gnu/errlist.c:817 +msgid "RPC version wrong" +msgstr "RPC 版本錯誤" -#: nscd/connections.c:571 -#, c-format -msgid "handle_request: request received (Version = %d)" -msgstr "handle_request: 請求已被接受 (版本為 %d)" +#. TRANS ??? +#: sysdeps/gnu/errlist.c:826 +msgid "RPC program not available" +msgstr "RPC 程式不存在" -#: nscd/connections.c:635 nscd/connections.c:636 nscd/connections.c:655 -#: nscd/connections.c:668 nscd/connections.c:674 nscd/connections.c:681 -#, c-format -msgid "Failed to run nscd as user '%s'" -msgstr "以使用者 '%s' 的身分執行 nscd 失敗" +#. TRANS ??? +#: sysdeps/gnu/errlist.c:835 +msgid "RPC program version wrong" +msgstr "RPC 程式版本錯誤" -#: nscd/connections.c:656 -msgid "getgrouplist failed" -msgstr "getgrouplist 失敗" +#. TRANS ??? +#: sysdeps/gnu/errlist.c:844 +msgid "RPC bad procedure for program" +msgstr "程式的 RPC 程序錯誤" -#: nscd/connections.c:669 -msgid "setgroups failed" -msgstr "setgroups 失敗" +#. TRANS No locks available. This is used by the file locking facilities; see +#. TRANS @ref{File Locks}. This error is never generated by the GNU system, but +#. TRANS it can result from an operation to an NFS server running another +#. TRANS operating system. +#: sysdeps/gnu/errlist.c:856 +msgid "No locks available" +msgstr "無法鎖定資料" -#: nscd/grpcache.c:103 nscd/hstcache.c:111 nscd/pwdcache.c:109 -msgid "while allocating key copy" -msgstr "在配置鍵值副本時" +#. TRANS Inappropriate file type or format. The file was the wrong type for the +#. TRANS operation, or a data file had the wrong format. +#. TRANS +#. TRANS On some systems @code{chmod} returns this error if you try to set the +#. TRANS sticky bit on a non-directory file; @pxref{Setting Permissions}. +#: sysdeps/gnu/errlist.c:869 +msgid "Inappropriate file type or format" +msgstr "不希望的檔案型態或格式" -#: nscd/grpcache.c:153 nscd/hstcache.c:168 nscd/pwdcache.c:146 -msgid "while allocating cache entry" -msgstr "在配置快取項目時" +#. TRANS ??? +#: sysdeps/gnu/errlist.c:878 +msgid "Authentication error" +msgstr "鑑定錯誤" -#: nscd/grpcache.c:197 nscd/hstcache.c:283 nscd/pwdcache.c:193 -#, c-format -msgid "short write in %s: %s" -msgstr "寫入 %s 的資料過短: %s" +#. TRANS ??? +#: sysdeps/gnu/errlist.c:887 +msgid "Need authenticator" +msgstr "需要認證" -#: nscd/grpcache.c:219 -#, c-format -msgid "Haven't found \"%s\" in group cache!" -msgstr "尚未在群組快取中找到 \"%s\"!" +#. TRANS Function not implemented. This indicates that the function called is +#. TRANS not implemented at all, either in the C library itself or in the +#. TRANS operating system. When you get this error, you can be sure that this +#. TRANS particular function will always fail with @code{ENOSYS} unless you +#. TRANS install a new version of the C library or the operating system. +#: sysdeps/gnu/errlist.c:900 +msgid "Function not implemented" +msgstr "功能沒有實作" -#: nscd/grpcache.c:285 -#, c-format -msgid "Invalid numeric gid \"%s\"!" -msgstr "無效的 gid 數值 \"%s\"!" +#. TRANS Not supported. A function returns this error when certain parameter +#. TRANS values are valid, but the functionality they request is not available. +#. TRANS This can mean that the function does not implement a particular command +#. TRANS or option value or flag bit at all. For functions that operate on some +#. TRANS object given in a parameter, such as a file descriptor or a port, it +#. TRANS might instead mean that only @emph{that specific object} (file +#. TRANS descriptor, port, etc.) is unable to support the other parameters given; +#. TRANS different file descriptors might support different ranges of parameter +#. TRANS values. +#. TRANS +#. TRANS If the entire function is not available at all in the implementation, +#. TRANS it returns @code{ENOSYS} instead. +#: sysdeps/gnu/errlist.c:920 +msgid "Not supported" +msgstr "並未支援" -#: nscd/grpcache.c:292 -#, c-format -msgid "Haven't found \"%d\" in group cache!" -msgstr "尚未在群組快取中找到 \"%d\"!" +#. TRANS While decoding a multibyte character the function came along an invalid +#. TRANS or an incomplete sequence of bytes or the given wide character is invalid. +#: sysdeps/gnu/errlist.c:930 +msgid "Invalid or incomplete multibyte or wide character" +msgstr "不適用或不完整的多位元組字元或寬字元" -#: nscd/hstcache.c:305 nscd/hstcache.c:371 nscd/hstcache.c:436 -#: nscd/hstcache.c:501 -#, c-format -msgid "Haven't found \"%s\" in hosts cache!" -msgstr "尚未在 hosts 快取中找到 \"%s\"!" +#. TRANS In the GNU system, servers supporting the @code{term} protocol return +#. TRANS this error for certain operations when the caller is not in the +#. TRANS foreground process group of the terminal. Users do not usually see this +#. TRANS error because functions such as @code{read} and @code{write} translate +#. TRANS it into a @code{SIGTTIN} or @code{SIGTTOU} signal. @xref{Job Control}, +#. TRANS for information on process groups and these signals. +#: sysdeps/gnu/errlist.c:944 +msgid "Inappropriate operation for background process" +msgstr "不希望的背景行程運作" -#: nscd/nscd.c:89 -msgid "Read configuration data from NAME" -msgstr "自名稱中讀取設定資料" +#. TRANS In the GNU system, opening a file returns this error when the file is +#. TRANS translated by a program and the translator program dies while starting +#. TRANS up, before it has connected to the file. +#: sysdeps/gnu/errlist.c:955 +msgid "Translator died" +msgstr "中介程式已經結束" -#: nscd/nscd.c:91 -msgid "Do not fork and display messages on the current tty" -msgstr "不在目前的 tty 產生子行程 (fork) 以及顯示訊息" +#. TRANS The experienced user will know what is wrong. +#. TRANS @c This error code is a joke. Its perror text is part of the joke. +#. TRANS @c Don't change it. +#: sysdeps/gnu/errlist.c:966 +msgid "?" +msgstr "?" -#: nscd/nscd.c:92 -msgid "NUMBER" -msgstr "號碼" +#. TRANS You did @strong{what}? +#: sysdeps/gnu/errlist.c:975 +msgid "You really blew it this time" +msgstr "這次真的被您打敗了" -#: nscd/nscd.c:92 -msgid "Start NUMBER threads" -msgstr "啟動執行緒" +# This is error EIEIO, errno 104 +# +# - Macro: int EIEIO +# Go home and have a glass of warm, dairy-fresh milk. +# +# The following messages were copied & pasted +# from es.po by Santiago Vila Doncel . +# +# +# 穌u diablos es esto?, esperemos a tener las fuentes +# estupendo, este error parece mostrarse en dos ocasiones +# - Macro: int EIEIO +# Go home and have a glass of warm, dairy-fresh milk. +# Jochen tambien lo traduce as. em +# +# Okay. Since you are dying to know, I'll tell you. +# This is a joke, obviously. There is a children's song which begins, +# "Old McDonald had a farm, e-i-e-i-o." Every time I see the (real) +# errno macro EIO, I think about that song. Probably most of my +# compatriots who program on Unix do, too. One of them must have stayed +# up a little too late one night and decided to add it to Hurd or Glibc. +# Whoever did it should be castigated, but it made me laugh. +# --jtobey@channel1.com +# +# "bought the farm" means "died". -jtobey +# +# Bueno, pues despu廥 de pensarlo mucho, he seguido el ejemplo de la +# traducci鏮 francesa (traducci鏮 libre). sv +# +# +# 簡單的說,兒歌 "唐老先生有塊地...",然後呢?? ;-p +# +#. TRANS Go home and have a glass of warm, dairy-fresh milk. +#: sysdeps/gnu/errlist.c:984 +msgid "Computer bought the farm" +msgstr "這台電腦買了一塊地囉" -#: nscd/nscd.c:93 -msgid "Shut the server down" -msgstr "將伺服器關閉" +#. TRANS This error code has no purpose. +#: sysdeps/gnu/errlist.c:993 +msgid "Gratuitous error" +msgstr "無故的錯誤" -#: nscd/nscd.c:94 -msgid "Print current configuration statistic" -msgstr "印出目前的組態統計" +#: sysdeps/gnu/errlist.c:1001 +msgid "Bad message" +msgstr "錯誤的訊息" -#: nscd/nscd.c:95 -msgid "TABLE" -msgstr "表格" +#: sysdeps/gnu/errlist.c:1009 +msgid "Identifier removed" +msgstr "識別符號移除" -#: nscd/nscd.c:96 -msgid "Invalidate the specified cache" -msgstr "使選定的快取無效" +#: sysdeps/gnu/errlist.c:1017 +msgid "Multihop attempted" +msgstr "嘗試 Multihop" -#: nscd/nscd.c:97 -msgid "TABLE,yes" -msgstr "要製作表格" +#: sysdeps/gnu/errlist.c:1025 +msgid "No data available" +msgstr "沒有可用的資料" -#: nscd/nscd.c:97 -msgid "Use separate cache for each user" -msgstr "對不同使用者使用不同的快取檔案" +#: sysdeps/gnu/errlist.c:1033 +msgid "Link has been severed" +msgstr "連結已有服務" -#: nscd/nscd.c:102 -msgid "Name Service Cache Daemon." -msgstr "網域名稱快取精靈" +#: sysdeps/gnu/errlist.c:1041 +msgid "No message of desired type" +msgstr "沒有符合需求格式的訊息" -#: nscd/nscd.c:141 -msgid "cannot read configuration file; this is fatal" -msgstr "無法讀取設定檔,這是一個嚴重錯誤" +#: sysdeps/gnu/errlist.c:1049 +msgid "Out of streams resources" +msgstr "所有資料流的資源都已用盡" -#: nscd/nscd.c:152 -msgid "already running" -msgstr "已在執行" +#: sysdeps/gnu/errlist.c:1057 +msgid "Device not a stream" +msgstr "裝置不是資料流" -#: nscd/nscd.c:270 nscd/nscd.c:294 nscd/nscd_stat.c:132 -msgid "Only root is allowed to use this option!" -msgstr "只有 root 才可以使用此一選項!" +#: sysdeps/gnu/errlist.c:1065 +msgid "Value too large for defined data type" +msgstr "有定義的資料型別值太大" -#: nscd/nscd_conf.c:88 -#, c-format -msgid "Parse error: %s" -msgstr "解析錯誤: %s" +#: sysdeps/gnu/errlist.c:1073 +msgid "Protocol error" +msgstr "協定錯誤" -#: nscd/nscd_conf.c:171 -#, c-format -msgid "Could not create log file \"%s\"" -msgstr "無法產生訊息檔 \"%s\"" +#: sysdeps/gnu/errlist.c:1081 +msgid "Timer expired" +msgstr "計時器已逾時" -#: nscd/nscd_conf.c:187 -msgid "Must specify user name for server-user option" -msgstr "必須為伺服器使用者選項指定使用者名稱" +#. TRANS Operation canceled; an asynchronous operation was canceled before it +#. TRANS completed. @xref{Asynchronous I/O}. When you call @code{aio_cancel}, +#. TRANS the normal result is for the operations affected to complete with this +#. TRANS error; @pxref{Cancel AIO Operations}. +#: sysdeps/gnu/errlist.c:1093 +msgid "Operation canceled" +msgstr "操作已被取消" -#: nscd/nscd_conf.c:194 -msgid "Must specify user name for stat-user option" -msgstr "必須為 stat 使用者選項指定使用者名稱" +#: sysdeps/gnu/errlist.c:1101 +msgid "Interrupted system call should be restarted" +msgstr "中斷的系統呼叫必須重新啟動" -#: nscd/nscd_conf.c:205 -#, c-format -msgid "Unknown option: %s %s %s" -msgstr "未知的選項: %s %s %s" +#: sysdeps/gnu/errlist.c:1109 +msgid "Channel number out of range" +msgstr "通道號碼超出範圍" -#: nscd/nscd_stat.c:103 -#, c-format -msgid "cannot write statistics: %s" -msgstr "無法寫入統計資料: %s" +#: sysdeps/gnu/errlist.c:1117 +msgid "Level 2 not synchronized" +msgstr "層級 2 沒有同步" -#: nscd/nscd_stat.c:128 -#, c-format -msgid "Only root or %s is allowed to use this option!" -msgstr "只有 root 或 %s 才允許使用此一選項!" +#: sysdeps/gnu/errlist.c:1125 +msgid "Level 3 halted" +msgstr "層級 3 停止" -#: nscd/nscd_stat.c:139 -msgid "nscd not running!\n" -msgstr "nscd 並沒有在執行!\n" +#: sysdeps/gnu/errlist.c:1133 +msgid "Level 3 reset" +msgstr "層級 3 重設" -#: nscd/nscd_stat.c:150 -msgid "write incomplete" -msgstr "寫入不完全" +#: sysdeps/gnu/errlist.c:1141 +msgid "Link number out of range" +msgstr "連結數目超過範圍" -#: nscd/nscd_stat.c:162 -msgid "cannot read statistics data" -msgstr "無法讀取統計資料" +#: sysdeps/gnu/errlist.c:1149 +msgid "Protocol driver not attached" +msgstr "協定的驅動程式未連接" -#: nscd/nscd_stat.c:165 -#, c-format -msgid "" -"nscd configuration:\n" -"\n" -"%15d server debug level\n" -msgstr "" -"nscd 設定:\n" -"\n" -"%15d 伺服程式錯誤訊息報告等級\n" +#: sysdeps/gnu/errlist.c:1157 +msgid "No CSI structure available" +msgstr "沒有可用的 CSI 結構了" -#: nscd/nscd_stat.c:189 -#, c-format -msgid "%3ud %2uh %2um %2lus server runtime\n" -msgstr "%3ud %2uh %2um %2lus 伺服器 執行時期\n" +#: sysdeps/gnu/errlist.c:1165 +msgid "Level 2 halted" +msgstr "層級 2 停止" -#: nscd/nscd_stat.c:192 -#, c-format -msgid " %2uh %2um %2lus server runtime\n" -msgstr " %2uh %2um %2lus 伺服器 執行時期\n" +#: sysdeps/gnu/errlist.c:1173 +msgid "Invalid exchange" +msgstr "不適用的交換" -#: nscd/nscd_stat.c:194 -#, c-format -msgid " %2um %2lus server runtime\n" -msgstr " %2um %2lus 伺服器 執行時期\n" +#: sysdeps/gnu/errlist.c:1181 +msgid "Invalid request descriptor" +msgstr "不適用的請求敘述項" -#: nscd/nscd_stat.c:196 -#, c-format -msgid " %2lus server runtime\n" -msgstr " %2lus 伺服器 執行時期\n" +#: sysdeps/gnu/errlist.c:1189 +msgid "Exchange full" +msgstr "交換已滿" -#: nscd/nscd_stat.c:198 -#, c-format -msgid "%15lu number of times clients had to wait\n" -msgstr "%15lu 次數 須等待客戶端\n" +#: sysdeps/gnu/errlist.c:1197 +msgid "No anode" +msgstr "沒有 anode" -#: nscd/nscd_stat.c:213 nscd/nscd_stat.c:215 -msgid " no" -msgstr " 不" +#: sysdeps/gnu/errlist.c:1205 +msgid "Invalid request code" +msgstr "不適用的請求碼" -#: nscd/nscd_stat.c:213 nscd/nscd_stat.c:215 -msgid " yes" -msgstr " 是" +#: sysdeps/gnu/errlist.c:1213 +msgid "Invalid slot" +msgstr "不適用的 slot" -#: nscd/nscd_stat.c:221 -#, c-format -msgid "" -"\n" -"%s cache:\n" -"\n" -"%15s cache is enabled\n" -"%15Zu suggested size\n" -"%15lu seconds time to live for positive entries\n" -"%15lu seconds time to live for negative entries\n" -"%15lu cache hits on positive entries\n" -"%15lu cache hits on negative entries\n" -"%15lu cache misses on positive entries\n" -"%15lu cache misses on negative entries\n" -"%15lu%% cache hit rate\n" -"%15lu current number of cached values\n" -"%15lu maximum number of cached values\n" -"%15lu maximum chain length searched\n" -"%15lu number of delays on rdlock\n" -"%15lu number of delays on wrlock\n" -"%15s check /etc/%s for changes\n" -msgstr "" -"\n" -"%s 快取:\n" -"\n" -"%15s 快取已開啟\n" -"%15Zu 希望的大小\n" -"%15lu 正項目的存在時間 (秒)\n" -"%15lu 負項目的存在時間 (秒)\n" -"%15lu 正項目中找到快取數\n" -"%15lu 負項目中找到快取數\n" -"%15lu 正項目中遺漏的快取數\n" -"%15lu 負項目中遺漏的快取數\n" -"%15lu%% 快取找到的比例\n" -"%15lu 目前已快取數值量\n" -"%15lu 最大快取數值量\n" -"%15lu 最大已搜尋的鏈結長度\n" -"%15lu 在 rdlock 上的延遲數量\n" -"%15lu 在 wrlock 上的延遲數量\n" -"%15s 檢查 /etc/%s 的改變\n" +#: sysdeps/gnu/errlist.c:1221 +msgid "File locking deadlock error" +msgstr "檔案鎖定停頓錯誤" -#: nscd/pwdcache.c:215 -#, c-format -msgid "Haven't found \"%s\" in password cache!" -msgstr "尚未在密碼快取中找到 \"%s\"!" +#: sysdeps/gnu/errlist.c:1229 +msgid "Bad font file format" +msgstr "錯誤的字型檔格式" -#: nscd/pwdcache.c:281 -#, c-format -msgid "Invalid numeric uid \"%s\"!" -msgstr "無效的 uid 數值 \"%s\"!" +#: sysdeps/gnu/errlist.c:1237 +msgid "Machine is not on the network" +msgstr "機器不在網路中" -#: nscd/pwdcache.c:288 -#, c-format -msgid "Haven't found \"%d\" in password cache!" -msgstr "尚未在密碼快取中找到 \"%d\"!" +#: sysdeps/gnu/errlist.c:1245 +msgid "Package not installed" +msgstr "套件並未安裝" -#: elf/../sysdeps/generic/dl-sysdep.c:422 -msgid "cannot create capability list" -msgstr "無法建立 capability 列表" +#: sysdeps/gnu/errlist.c:1253 +msgid "Advertise error" +msgstr "通知錯誤" -#: elf/../sysdeps/generic/readelflib.c:35 -#, c-format -msgid "file %s is truncated\n" -msgstr "檔案 %s 已截短\n" +#: sysdeps/gnu/errlist.c:1261 +msgid "Srmount error" +msgstr "Srmount 錯誤" -#: elf/../sysdeps/generic/readelflib.c:67 -#, c-format -msgid "%s is a 32 bit ELF file.\n" -msgstr "%s 是一個 32 位元的 ELF 檔案。\n" +#: sysdeps/gnu/errlist.c:1269 +msgid "Communication error on send" +msgstr "在傳送時通訊錯誤" -#: elf/../sysdeps/generic/readelflib.c:69 -#, c-format -msgid "%s is a 64 bit ELF file.\n" -msgstr "%s 是一個 64 位元的 ELF 檔案。\n" +#: sysdeps/gnu/errlist.c:1277 +msgid "RFS specific error" +msgstr "RFS 特定錯誤" -#: elf/../sysdeps/generic/readelflib.c:71 -#, c-format -msgid "Unknown ELFCLASS in file %s.\n" -msgstr "檔案 %s 中未知的 ELFCLASS。\n" +#: sysdeps/gnu/errlist.c:1285 +msgid "Name not unique on network" +msgstr "網路上的名稱不是唯一的" -#: elf/../sysdeps/generic/readelflib.c:78 -#, c-format -msgid "%s is not a shared object file (Type: %d).\n" -msgstr "%s 不是一個共用目的檔 (型態: %d)。\n" +#: sysdeps/gnu/errlist.c:1293 +msgid "File descriptor in bad state" +msgstr "檔案敘述項處於錯誤狀態" -#: elf/../sysdeps/generic/readelflib.c:109 -msgid "more than one dynamic segment\n" -msgstr "超過一個的動態區段\n" +#: sysdeps/gnu/errlist.c:1301 +msgid "Remote address changed" +msgstr "遠端位址改變了" -#: elf/../sysdeps/unix/sysv/linux/i386/readelflib.c:49 -#, c-format -msgid "%s is for unknown machine %d.\n" -msgstr "%s 是給未知的機器 %d。\n" +#: sysdeps/gnu/errlist.c:1309 +msgid "Can not access a needed shared library" +msgstr "無法存取所需的分享函式庫" -#: elf/cache.c:70 -msgid "unknown" -msgstr "未知" +#: sysdeps/gnu/errlist.c:1317 +msgid "Accessing a corrupted shared library" +msgstr "存取一個毀掉的分享函式庫" -#: elf/cache.c:111 -msgid "Unknown OS" -msgstr "未知的作業系統" +#: sysdeps/gnu/errlist.c:1325 +msgid ".lib section in a.out corrupted" +msgstr "a.out 中 .lib 節區毀掉了" -#: elf/cache.c:116 -#, c-format -msgid ", OS ABI: %s %d.%d.%d" -msgstr ", OS ABI: %s %d.%d.%d" +#: sysdeps/gnu/errlist.c:1333 +msgid "Attempting to link in too many shared libraries" +msgstr "嘗試去連結太多的分享資料庫" -#: elf/cache.c:142 elf/ldconfig.c:1078 -#, c-format -msgid "Can't open cache file %s\n" -msgstr "無法開啟快取檔 %s\n" +#: sysdeps/gnu/errlist.c:1341 +msgid "Cannot exec a shared library directly" +msgstr "不能直接執行一個分享函式庫" -#: elf/cache.c:154 -msgid "mmap of cache file failed.\n" -msgstr "快取檔案 mmap 失敗。\n" +#: sysdeps/gnu/errlist.c:1349 +msgid "Streams pipe error" +msgstr "資料流管線錯誤" -#: elf/cache.c:158 elf/cache.c:168 -msgid "File is not a cache file.\n" -msgstr "檔案並非快取檔。\n" +#: sysdeps/gnu/errlist.c:1357 +msgid "Structure needs cleaning" +msgstr "結構需要清理" -#: elf/cache.c:201 elf/cache.c:211 -#, c-format -msgid "%d libs found in cache `%s'\n" -msgstr "%d 函式庫在快取 `%s' 中找到\n" +#: sysdeps/gnu/errlist.c:1365 +msgid "Not a XENIX named type file" +msgstr "並非 XENIX 命名格式的檔案" -#: elf/cache.c:410 -#, c-format -msgid "Can't remove old temporary cache file %s" -msgstr "無法刪除舊的暫時快取檔 %s" +#: sysdeps/gnu/errlist.c:1373 +msgid "No XENIX semaphores available" +msgstr "沒有可用的 XENIX 信號標誌了" -#: elf/cache.c:417 -#, c-format -msgid "Can't create temporary cache file %s" -msgstr "無法產生暫時的快取檔 %s" +#: sysdeps/gnu/errlist.c:1381 +msgid "Is a named type file" +msgstr "是個具名的型態檔案" -#: elf/cache.c:425 elf/cache.c:434 elf/cache.c:438 -msgid "Writing of cache data failed" -msgstr "寫入快取資料時發生錯誤" +#: sysdeps/gnu/errlist.c:1389 +msgid "Remote I/O error" +msgstr "遠端輸出入錯誤" -#: elf/cache.c:442 -msgid "Writing of cache data failed." -msgstr "寫入快取資料時發生錯誤" +#: sysdeps/gnu/errlist.c:1397 +msgid "No medium found" +msgstr "找不到媒體" -#: elf/cache.c:449 -#, c-format -msgid "Changing access rights of %s to %#o failed" -msgstr "更改 %s 的存取權限為 %#o 失敗" +#: sysdeps/gnu/errlist.c:1405 +msgid "Wrong medium type" +msgstr "錯誤的媒體型態" -#: elf/cache.c:454 -#, c-format -msgid "Renaming of %s to %s failed" -msgstr "將 %s 改名為 %s 失敗" +#: sysdeps/gnu/errlist.c:1413 +msgid "Required key not available" +msgstr "必要鍵值無法使用" -#: elf/dl-close.c:128 -msgid "shared object not open" -msgstr "共用目的檔案沒有開啟" +#: sysdeps/gnu/errlist.c:1421 +msgid "Key has expired" +msgstr "鍵值已過期" -#: elf/dl-close.c:531 elf/dl-open.c:454 -msgid "TLS generation counter wrapped! Please send report with the 'glibcbug' script." -msgstr "TLS 產生計數器已被轉包! 請寄出以 'glibcbug' 命令稿所做的報告。" +#: sysdeps/gnu/errlist.c:1429 +msgid "Key has been revoked" +msgstr "鍵值已取消" -#: elf/dl-deps.c:111 elf/dl-open.c:183 -msgid "DST not allowed in SUID/SGID programs" -msgstr "DST 不允許在 SUID/SGID 的程式中" +#: sysdeps/gnu/errlist.c:1437 +msgid "Key was rejected by service" +msgstr "鍵值被服務所拒絕" -#: elf/dl-deps.c:124 -msgid "empty dynamics string token substitution" -msgstr "空的動態字串記號替換" +#: sysdeps/gnu/errlist.c:1445 +msgid "Owner died" +msgstr "擁有者已消逝" -#: elf/dl-deps.c:130 -#, c-format -msgid "cannot load auxiliary `%s' because of empty dynamic string token substitution\n" -msgstr "由於空的動態字串記號替換而無法載入外部的 `%s'\n" +#: sysdeps/gnu/errlist.c:1453 +msgid "State not recoverable" +msgstr "狀態無法回復" -#: elf/dl-deps.c:461 -msgid "cannot allocate dependency list" -msgstr "無法配置相關性列表" +#: sysdeps/gnu/errlist.c:1461 +msgid "Operation not possible due to RF-kill" +msgstr "由於 RF-kill 而無法操作" -#: elf/dl-deps.c:494 elf/dl-deps.c:549 -msgid "cannot allocate symbol search list" -msgstr "無法配置符號搜尋列表" +#: sysdeps/mach/_strerror.c:57 +msgid "Error in unknown error system: " +msgstr "未知系統錯誤: " -#: elf/dl-deps.c:534 -msgid "Filters not supported with LD_TRACE_PRELINKING" -msgstr "過濾程式不支援與 LD_TRACE_PRELINKING 共用" +#: sysdeps/posix/gai_strerror-strs.h:1 +msgid "Address family for hostname not supported" +msgstr "hostname 的位址族群不支援" -#: elf/dl-error.c:75 -msgid "DYNAMIC LINKER BUG!!!" -msgstr "動態連接程式有問題!!!" +#: sysdeps/posix/gai_strerror-strs.h:2 +msgid "Temporary failure in name resolution" +msgstr "解析名稱時發生暫時性的錯誤" -#: elf/dl-error.c:108 -msgid "error while loading shared libraries" -msgstr "正在載入共用函式庫時發生錯誤" +#: sysdeps/posix/gai_strerror-strs.h:3 +msgid "Bad value for ai_flags" +msgstr "錯誤的 ai_flags 值" -#: elf/dl-load.c:347 -msgid "cannot allocate name record" -msgstr "無法配置名稱紀錄" +#: sysdeps/posix/gai_strerror-strs.h:4 +msgid "Non-recoverable failure in name resolution" +msgstr "在解析名稱時發生嚴重的錯誤" -#: elf/dl-load.c:449 elf/dl-load.c:528 elf/dl-load.c:648 elf/dl-load.c:743 -msgid "cannot create cache for search path" -msgstr "無法為搜尋路徑建立快取" +#: sysdeps/posix/gai_strerror-strs.h:5 +msgid "ai_family not supported" +msgstr "ai_family 沒有支援" -#: elf/dl-load.c:551 -msgid "cannot create RUNPATH/RPATH copy" -msgstr "無法建立 RUNPATH/RPATH 的副本" +#: sysdeps/posix/gai_strerror-strs.h:6 +msgid "Memory allocation failure" +msgstr "記憶體配置失敗" -#: elf/dl-load.c:634 -msgid "cannot create search path array" -msgstr "無法建立搜尋路徑陣列" +#: sysdeps/posix/gai_strerror-strs.h:7 +msgid "No address associated with hostname" +msgstr "沒有此主機名稱所對應的位址" -#: elf/dl-load.c:830 -msgid "cannot stat shared object" -msgstr "無法 stat 共用目的檔" +#: sysdeps/posix/gai_strerror-strs.h:8 +msgid "Name or service not known" +msgstr "未知的名稱或服務" -#: elf/dl-load.c:874 -msgid "cannot open zero fill device" -msgstr "無法開啟以零填滿的裝置" +#: sysdeps/posix/gai_strerror-strs.h:9 +msgid "Servname not supported for ai_socktype" +msgstr "不支援 ai_socktype 的伺服名稱" -#: elf/dl-load.c:883 elf/dl-load.c:1929 -msgid "cannot create shared object descriptor" -msgstr "無法建立共用目的檔敘述項" +#: sysdeps/posix/gai_strerror-strs.h:10 +msgid "ai_socktype not supported" +msgstr "ai_socktype 沒有支援" -#: elf/dl-load.c:902 elf/dl-load.c:1470 elf/dl-load.c:1553 -msgid "cannot read file data" -msgstr "無法讀取檔案資料" +#: sysdeps/posix/gai_strerror-strs.h:11 +msgid "System error" +msgstr "系統錯誤" -#: elf/dl-load.c:946 -msgid "ELF load command alignment not page-aligned" -msgstr "ELF 載入命令對齊並沒有按照記憶體分頁 (page) 對齊" +#: sysdeps/posix/gai_strerror-strs.h:12 +msgid "Processing request in progress" +msgstr "此項請求已經在處理當中" -#: elf/dl-load.c:953 -msgid "ELF load command address/offset not properly aligned" -msgstr "ELF 載入命令位址/位移並沒有適當地對齊" +#: sysdeps/posix/gai_strerror-strs.h:13 +msgid "Request canceled" +msgstr "請求已被取消" -#: elf/dl-load.c:1037 -msgid "cannot allocate TLS data structures for initial thread" -msgstr "無法配置 TLS 資料結構用以起始執行緒" +#: sysdeps/posix/gai_strerror-strs.h:14 +msgid "Request not canceled" +msgstr "請求並未取消" -#: elf/dl-load.c:1061 -msgid "cannot handle TLS data" -msgstr "無法處理 TLS 資料" +#: sysdeps/posix/gai_strerror-strs.h:15 +msgid "All requests done" +msgstr "所有請求已完成" -#: elf/dl-load.c:1075 -msgid "object file has no loadable segments" -msgstr "目的檔中沒有可載入的節區" +#: sysdeps/posix/gai_strerror-strs.h:16 +msgid "Interrupted by a signal" +msgstr "由訊號所中斷" -#: elf/dl-load.c:1110 -msgid "failed to map segment from shared object" -msgstr "從共用目的檔中對映區段失敗" +#: sysdeps/posix/gai_strerror-strs.h:17 +msgid "Parameter string not correctly encoded" +msgstr "參數字串無法正確編碼" -#: elf/dl-load.c:1135 -msgid "cannot dynamically load executable" -msgstr "無法動態載入執行檔" +#: sysdeps/unix/siglist.c:26 +msgid "Signal 0" +msgstr "訊號 0" -#: elf/dl-load.c:1191 -msgid "cannot change memory protections" -msgstr "無法改變記憶體保護狀態" +#: sysdeps/unix/siglist.c:32 +msgid "IOT trap" +msgstr "IOT 陷阱" -#: elf/dl-load.c:1210 -msgid "cannot map zero-fill pages" -msgstr "無法對應以零填滿的分頁區" +#: sysdeps/unix/sysv/linux/i386/readelflib.c:49 +#, c-format +msgid "%s is for unknown machine %d.\n" +msgstr "%s 是給未知的機器 %d。\n" -#: elf/dl-load.c:1228 -msgid "cannot allocate memory for program header" -msgstr "無法配置記憶體給程式標頭區使用" +#: sysdeps/unix/sysv/linux/ia64/makecontext.c:63 +#, c-format +msgid "makecontext: does not know how to handle more than 8 arguments\n" +msgstr "makecontext: 不知要如何處理超過八個引數\n" -#: elf/dl-load.c:1259 -msgid "object file has no dynamic section" -msgstr "共用目的檔中沒有動態節區" +#: sysdeps/unix/sysv/linux/lddlibc4.c:61 +#, c-format +msgid "" +"Usage: lddlibc4 FILE\n" +"\n" +msgstr "" +"用法:lddlibc4 檔案\n" +"\n" -#: elf/dl-load.c:1299 -msgid "shared object cannot be dlopen()ed" -msgstr "共用目的檔無法被 dlopen()" +#: sysdeps/unix/sysv/linux/lddlibc4.c:82 +#, c-format +msgid "cannot open `%s'" +msgstr "無法開啟 `%s'" -#: elf/dl-load.c:1322 -msgid "cannot create searchlist" -msgstr "無法建立搜尋列表" +#: sysdeps/unix/sysv/linux/lddlibc4.c:86 +#, c-format +msgid "cannot read header from `%s'" +msgstr "無法從 `%s' 讀取標頭資料" -#: elf/dl-load.c:1352 -msgid "cannot enable executable stack as shared object requires" -msgstr "無法開啟可執行堆疊做為共用目的檔" +#: timezone/zdump.c:215 +msgid "lacks alphabetic at start" +msgstr "lacks 字母順序於開始" -#: elf/dl-load.c:1470 -msgid "file too short" -msgstr "檔案太小" +#: timezone/zdump.c:217 +msgid "has fewer than 3 alphabetics" +msgstr "有更少的比 3 字母順序" -#: elf/dl-load.c:1493 -msgid "invalid ELF header" -msgstr "無效的 ELF 標頭" +#: timezone/zdump.c:219 +msgid "has more than 6 alphabetics" +msgstr "有超過 6 字母順序" -#: elf/dl-load.c:1502 -msgid "ELF file data encoding not big-endian" -msgstr "ELF 檔資料編碼並非大尾序" +#: timezone/zdump.c:227 +msgid "differs from POSIX standard" +msgstr "differs 從 POSIX 標準" -#: elf/dl-load.c:1504 -msgid "ELF file data encoding not little-endian" -msgstr "ELF 檔資料編碼並非小尾序" +#: timezone/zdump.c:233 +#, c-format +msgid "%s: warning: zone \"%s\" abbreviation \"%s\" %s\n" +msgstr "%s: 警告:區域「%s」縮寫「%s」%s\n" -#: elf/dl-load.c:1508 -msgid "ELF file version ident does not match current one" -msgstr "ELF 檔版本 ident 不符合目前所使用的" +#: timezone/zdump.c:242 +#, c-format +msgid "" +"%s: usage is %s [ --version ] [ --help ] [ -v ] [ -c [loyear,]hiyear ] zonename ...\n" +"\n" +"Report bugs to tz@elsie.nci.nih.gov.\n" +msgstr "" +"%s:用法是 %s [ --version ] [ --help ] [ -v ] [ -c [loyear,]hiyear ] zonename ...\n" +"\n" +"請將錯誤通報給 tz@elsie.nci.nih.gov。\n" -#: elf/dl-load.c:1512 -msgid "ELF file OS ABI invalid" -msgstr "ELF 檔 OS ABI 版本不適用" +#: timezone/zdump.c:311 +#, c-format +msgid "%s: wild -c argument %s\n" +msgstr "%s: wild -c 引數 %s\n" -#: elf/dl-load.c:1514 -msgid "ELF file ABI version invalid" -msgstr "ELF 檔 ABI 版本不適用" +#: timezone/zdump.c:398 +msgid "Error writing to standard output" +msgstr "寫入標準輸出時錯誤" -#: elf/dl-load.c:1517 -msgid "internal error" -msgstr "內部錯誤" +#: timezone/zdump.c:421 +#, c-format +msgid "%s: use of -v on system with floating time_t other than float or double\n" +msgstr "%s: 使用 -v 於具備浮點數 time_t 的系統而非浮點數或雙倍精度\n" -#: elf/dl-load.c:1524 -msgid "ELF file version does not match current one" -msgstr "ELF 檔版本不符合目前的版本" +#: timezone/zic.c:388 +#, c-format +msgid "%s: Memory exhausted: %s\n" +msgstr "%s: 記憶體已用完: %s\n" -#: elf/dl-load.c:1532 -msgid "ELF file's phentsize not the expected size" -msgstr "ELF 檔的 phentsize 並不是預期中的大小" +#: timezone/zic.c:434 +#, c-format +msgid "\"%s\", line %d: %s" +msgstr "\"%s\", 第 %d 列: %s" -#: elf/dl-load.c:1538 -msgid "only ET_DYN and ET_EXEC can be loaded" -msgstr "只有 ET_DYN 以及 ET_EXEC 可以載入" +#: timezone/zic.c:437 +#, c-format +msgid " (rule from \"%s\", line %d)" +msgstr " (規則來自 \"%s\", 第 %d 列)" -#: elf/dl-load.c:1944 -msgid "cannot open shared object file" -msgstr "無法開啟共用目的檔" +#: timezone/zic.c:449 +msgid "warning: " +msgstr "警告: " -#: elf/dl-lookup.c:265 elf/dl-lookup.c:443 -msgid "relocation error" -msgstr "重定址錯誤" +#: timezone/zic.c:459 +#, c-format +msgid "" +"%s: usage is %s [ --version ] [ --help ] [ -v ] [ -l localtime ] [ -p posixrules ] \\\n" +"\t[ -d directory ] [ -L leapseconds ] [ -y yearistype ] [ filename ... ]\n" +"\n" +"Report bugs to tz@elsie.nci.nih.gov.\n" +msgstr "" +"%s:用法是 %s [ --version ] [ --help ] [ -v ] [ -l localtime ] [ -p posixrules ] \\\n" +"\t[ -d directory ] [ -L leapseconds ] [ -y yearistype ] [ filename ... ]\n" +"\n" +"請將錯誤通報給 tz@elsie.nci.nih.gov。\n" -#: elf/dl-open.c:111 -msgid "cannot extend global scope" -msgstr "無法延展全域變數的作用域" +#: timezone/zic.c:496 +msgid "wild compilation-time specification of zic_t" +msgstr "zic_t 的萬用編譯時間規格" -#: elf/dl-open.c:214 -msgid "empty dynamic string token substitution" -msgstr "空的動態字串記號替換" +#: timezone/zic.c:515 +#, c-format +msgid "%s: More than one -d option specified\n" +msgstr "%s: 您使用了超過一個 -d 選項\n" -#: elf/dl-open.c:361 elf/dl-open.c:372 -msgid "cannot create scope list" -msgstr "無法建立作用域列表" +#: timezone/zic.c:525 +#, c-format +msgid "%s: More than one -l option specified\n" +msgstr "%s: 您使用了超過一個 -l 選項\n" -#: elf/dl-open.c:434 -msgid "cannot create TLS data structures" -msgstr "無法建立 TLS 資料結構" +#: timezone/zic.c:535 +#, c-format +msgid "%s: More than one -p option specified\n" +msgstr "%s: 您使用了超過一個 -p 選項\n" -#: elf/dl-open.c:496 -msgid "invalid mode for dlopen()" -msgstr "無效的 dlopen() 模式" +#: timezone/zic.c:545 +#, c-format +msgid "%s: More than one -y option specified\n" +msgstr "%s: 您使用了超過一個 -y 選項\n" + +#: timezone/zic.c:555 +#, c-format +msgid "%s: More than one -L option specified\n" +msgstr "%s: 您使用了超過一個 -L 選項\n" -#: elf/dl-reloc.c:57 -msgid "cannot allocate memory in static TLS block" -msgstr "無法在靜態 TLS 區塊中配置記憶體" +#: timezone/zic.c:604 +msgid "link to link" +msgstr "連結到連結" -#: elf/dl-reloc.c:176 -msgid "cannot make segment writable for relocation" -msgstr "在重新定址以後無法將區段設為可寫入狀態" +#: timezone/zic.c:669 +msgid "hard link failed, symbolic link used" +msgstr "實體連結失敗,使用符號連結代替" -#: elf/dl-reloc.c:277 +#: timezone/zic.c:677 #, c-format -msgid "%s: profiler found no PLTREL in object %s\n" -msgstr "%s: 描述程式在目的檔 %s 中沒有找到 PLTREL\n" +msgid "%s: Can't link from %s to %s: %s\n" +msgstr "%s: 無法從 %s 連結到 %s: %s\n" + +#: timezone/zic.c:749 timezone/zic.c:751 +msgid "same rule name in multiple files" +msgstr "在多個檔案裡面有相同的規則名稱" -#: elf/dl-reloc.c:289 +#: timezone/zic.c:792 +msgid "unruly zone" +msgstr "沒有規則的時區" + +#: timezone/zic.c:799 #, c-format -msgid "%s: profiler out of memory shadowing PLTREL of %s\n" -msgstr "%s: 描述程式遮蔽 %s 的 PLTREL 時記憶體不足\n" +msgid "%s in ruleless zone" +msgstr "%s 在沒有規則的區段" -#: elf/dl-reloc.c:304 -msgid "cannot restore segment prot after reloc" -msgstr "在 reloc 之後無法復原 segment prot" +#: timezone/zic.c:820 +msgid "standard input" +msgstr "標準輸入" -#: elf/dl-sym.c:74 elf/dl-sym.c:145 -msgid "RTLD_NEXT used in code not dynamically loaded" -msgstr "程式碼所使用的 RTLD_NEXT 沒有動態載入" +#: timezone/zic.c:825 +#, c-format +msgid "%s: Can't open %s: %s\n" +msgstr "%s: 無法開啟 %s: %s\n" -#: elf/dl-version.c:303 -msgid "cannot allocate version reference table" -msgstr "無法配置版本參照表" +#: timezone/zic.c:836 +msgid "line too long" +msgstr "列的長度過長" -#: elf/ldconfig.c:122 -msgid "Print cache" -msgstr "列印快取" +#: timezone/zic.c:856 +msgid "input line of unknown type" +msgstr "不明型別的輸入列" -#: elf/ldconfig.c:123 -msgid "Generate verbose messages" -msgstr "產生更多的訊息" +#: timezone/zic.c:872 +#, c-format +msgid "%s: Leap line in non leap seconds file %s\n" +msgstr "%s: 閏時設定列出現在不含閏秒的設定檔 %s 中\n" -#: elf/ldconfig.c:124 -msgid "Don't build cache" -msgstr "不建立快取" +#: timezone/zic.c:879 timezone/zic.c:1316 timezone/zic.c:1338 +#, c-format +msgid "%s: panic: Invalid l_value %d\n" +msgstr "%s: 嚴重錯誤: 錯誤的 l_value %d\n" -#: elf/ldconfig.c:125 -msgid "Don't generate links" -msgstr "不產生連結" +#: timezone/zic.c:887 +#, c-format +msgid "%s: Error reading %s\n" +msgstr "%s: 讀取錯誤 %s\n" -#: elf/ldconfig.c:126 -msgid "Change to and use ROOT as root directory" -msgstr "變換到 ROOT 目錄並以它做為根目錄" +#: timezone/zic.c:894 +#, c-format +msgid "%s: Error closing %s: %s\n" +msgstr "%s: 關閉錯誤 %s: %s\n" -#: elf/ldconfig.c:127 -msgid "Use CACHE as cache file" -msgstr "使用 CACHE 當作快取檔案" +#: timezone/zic.c:899 +msgid "expected continuation line not found" +msgstr "找不到預期的接續列" -#: elf/ldconfig.c:128 -msgid "Use CONF as configuration file" -msgstr "使用 CONF 當作設定檔" +#: timezone/zic.c:943 timezone/zic.c:2480 timezone/zic.c:2499 +msgid "time overflow" +msgstr "時間溢位" -#: elf/ldconfig.c:129 -msgid "Only process directories specified on the command line. Don't build cache." -msgstr "只處理在命令列引數中有指定的目錄,不建立快取檔案。" +#: timezone/zic.c:947 +msgid "24:00 not handled by pre-1998 versions of zic" +msgstr "24:00 無法由早於 1998 的 zic 版本所處理" -#: elf/ldconfig.c:130 -msgid "Manually link individual libraries." -msgstr "手動個別連結函式庫" +#: timezone/zic.c:950 +msgid "values over 24 hours not handled by pre-2007 versions of zic" +msgstr "24 小時以上的值無法由早於 2007 的 zic 版本所處理" -#: elf/ldconfig.c:131 -msgid "Format to use: new, old or compat (default)" -msgstr "將使用格式: 新、舊或相容 (預設)" +#: timezone/zic.c:963 +msgid "wrong number of fields on Rule line" +msgstr "規則設定列的欄位數目錯誤" -#: elf/ldconfig.c:139 -msgid "Configure Dynamic Linker Run Time Bindings." -msgstr "設定執行時期動態連接" +#: timezone/zic.c:967 +msgid "nameless rule" +msgstr "沒有名稱的規則" -#: elf/ldconfig.c:297 -#, c-format -msgid "Path `%s' given more than once" -msgstr "路徑 `%s' 使用超過一次" +#: timezone/zic.c:972 +msgid "invalid saved time" +msgstr "無效的節約時間" -#: elf/ldconfig.c:341 -#, c-format -msgid "%s is not a known library type" -msgstr "%s 不是一個已知的函式庫型態" +#: timezone/zic.c:993 +msgid "wrong number of fields on Zone line" +msgstr "時區設定列的欄位數目錯誤" -#: elf/ldconfig.c:361 +#: timezone/zic.c:999 #, c-format -msgid "Can't stat %s" -msgstr "無法 stat %s" +msgid "\"Zone %s\" line and -l option are mutually exclusive" +msgstr "\"區段 %s\" 列和 -l 選項是互斥的" -#: elf/ldconfig.c:431 +#: timezone/zic.c:1007 #, c-format -msgid "Can't stat %s\n" -msgstr "無法 stat %s\n" +msgid "\"Zone %s\" line and -p option are mutually exclusive" +msgstr "\"區段 %s\" 列和 -p 選項是互斥的" -#: elf/ldconfig.c:441 +#: timezone/zic.c:1019 #, c-format -msgid "%s is not a symbolic link\n" -msgstr "%s 不是一個符號連接檔\n" +msgid "duplicate zone name %s (file \"%s\", line %d)" +msgstr "複製時區名稱 %s (檔案 \"%s\", 第 %d 列)" -#: elf/ldconfig.c:460 -#, c-format -msgid "Can't unlink %s" -msgstr "無法取消連結 %s" +#: timezone/zic.c:1035 +msgid "wrong number of fields on Zone continuation line" +msgstr "時區接續列的欄位數目不對" -#: elf/ldconfig.c:466 -#, c-format -msgid "Can't link %s to %s" -msgstr "無法從 %s 連結到 %s" +#: timezone/zic.c:1075 +msgid "invalid UTC offset" +msgstr "無效的 UTC 位移值" -#: elf/ldconfig.c:472 -msgid " (changed)\n" -msgstr " (已改變)\n" +#: timezone/zic.c:1078 +msgid "invalid abbreviation format" +msgstr "無效的縮寫格式" -#: elf/ldconfig.c:474 -msgid " (SKIPPED)\n" -msgstr " (忽略)\n" +#: timezone/zic.c:1107 +msgid "Zone continuation line end time is not after end time of previous line" +msgstr "時區接續列的結束時間不在上一列的結束時間之後" -#: elf/ldconfig.c:529 -#, c-format -msgid "Can't find %s" -msgstr "找不到 %s" +#: timezone/zic.c:1135 +msgid "wrong number of fields on Leap line" +msgstr "閏時設定列的欄位數目錯誤" -#: elf/ldconfig.c:545 -#, c-format -msgid "Can't lstat %s" -msgstr "無法 lstat %s" +#: timezone/zic.c:1144 +msgid "invalid leaping year" +msgstr "無效的閏年" -#: elf/ldconfig.c:552 -#, c-format -msgid "Ignored file %s since it is not a regular file." -msgstr "忽略檔案 %s 因為它不是一個正常的檔案。" +#: timezone/zic.c:1164 timezone/zic.c:1270 +msgid "invalid month name" +msgstr "無效的月分名稱" -#: elf/ldconfig.c:560 -#, c-format -msgid "No link created since soname could not be found for %s" -msgstr "由於找不到 %s 的共用目的檔名稱,連結並未被建立" +#: timezone/zic.c:1177 timezone/zic.c:1383 timezone/zic.c:1397 +msgid "invalid day of month" +msgstr "無效的日期數字" -#: elf/ldconfig.c:651 -#, c-format -msgid "Can't open directory %s" -msgstr "無法開啟目錄 %s" +#: timezone/zic.c:1182 +msgid "time before zero" +msgstr "在零之前的時間" -#: elf/ldconfig.c:706 elf/ldconfig.c:753 -#, c-format -msgid "Cannot lstat %s" -msgstr "無法 lstat %s" +#: timezone/zic.c:1186 +msgid "time too small" +msgstr "時間太小" -#: elf/ldconfig.c:718 -#, c-format -msgid "Cannot stat %s" -msgstr "無法 stat %s" +#: timezone/zic.c:1190 +msgid "time too large" +msgstr "時間太大" -#: elf/ldconfig.c:775 elf/readlib.c:92 -#, c-format -msgid "Input file %s not found.\n" -msgstr "輸入檔 %s 找不到。\n" +#: timezone/zic.c:1194 timezone/zic.c:1299 +msgid "invalid time of day" +msgstr "無效的時間數字" -#: elf/ldconfig.c:826 -#, c-format -msgid "libc5 library %s in wrong directory" -msgstr "libc5 函式庫 %s 擺錯目錄了" +#: timezone/zic.c:1213 +msgid "illegal CORRECTION field on Leap line" +msgstr "在閏時設定列中有不合法的 CORRECTION 欄位" -#: elf/ldconfig.c:829 -#, c-format -msgid "libc6 library %s in wrong directory" -msgstr "libc6 函式庫 %s 擺錯目錄了" +#: timezone/zic.c:1218 +msgid "illegal Rolling/Stationary field on Leap line" +msgstr "在閏時設定列中有不合法的 Rolling/Stationary 欄位" -#: elf/ldconfig.c:832 -#, c-format -msgid "libc4 library %s in wrong directory" -msgstr "libc4 函式庫 %s 擺錯目錄了" +#: timezone/zic.c:1234 +msgid "wrong number of fields on Link line" +msgstr "連結設定列的欄位數目錯誤" -#: elf/ldconfig.c:859 -#, c-format -msgid "libraries %s and %s in directory %s have same soname but different type." -msgstr "函式庫 %s 跟 %s (在目錄 %s 底下) 有共同的共用函式庫名稱,不過其格式卻不同" +#: timezone/zic.c:1238 +msgid "blank FROM field on Link line" +msgstr "連結列中空白的 FROM 欄位" -#: elf/ldconfig.c:962 -#, c-format -msgid "Can't open configuration file %s" -msgstr "無法開啟設定檔 %s" +#: timezone/zic.c:1242 +msgid "blank TO field on Link line" +msgstr "連結列中空白的 TO 欄位" -#: elf/ldconfig.c:1033 -#, c-format -msgid "relative path `%s' used to build cache" -msgstr "用來建置快取的相對路徑 `%s'" +#: timezone/zic.c:1320 +msgid "invalid starting year" +msgstr "無效的起始年分" -#: elf/ldconfig.c:1057 -msgid "Can't chdir to /" -msgstr "無法變更目錄到 /" +#: timezone/zic.c:1342 +msgid "invalid ending year" +msgstr "無效的結束年分" -#: elf/ldconfig.c:1099 -#, c-format -msgid "Can't open cache file directory %s\n" -msgstr "無法開啟快取檔案目錄 %s\n" +#: timezone/zic.c:1346 +msgid "starting year greater than ending year" +msgstr "起始年分比結束年分還要大" -#: elf/readlib.c:98 -#, c-format -msgid "Cannot fstat file %s.\n" -msgstr "無法 fstat 檔案 %s。\n" +#: timezone/zic.c:1353 +msgid "typed single year" +msgstr "輸入的年分是同一年" -#: elf/readlib.c:108 +#: timezone/zic.c:1388 +msgid "invalid weekday name" +msgstr "無效的工作日名稱" + +#: timezone/zic.c:1566 #, c-format -msgid "File %s is too small, not checked." -msgstr "檔案 %s 太小,不做檢查。" +msgid "%s: Can't remove %s: %s\n" +msgstr "%s: 無法移除 %s: %s\n" -#: elf/readlib.c:117 +#: timezone/zic.c:1576 #, c-format -msgid "Cannot mmap file %s.\n" -msgstr "無法 mmap 檔案 %s。\n" +msgid "%s: Can't create %s: %s\n" +msgstr "%s: 無法產生 %s: %s\n" -#: elf/readlib.c:155 +#: timezone/zic.c:1726 #, c-format -msgid "%s is not an ELF file - it has the wrong magic bytes at the start.\n" -msgstr "%s 不是一個 ELF 檔 - 其開頭的魔術位元組是錯的。\n" +msgid "%s: Error writing %s\n" +msgstr "%s: 寫入錯誤 %s\n" -#: elf/sprof.c:72 -msgid "Output selection:" -msgstr "輸出選擇:" +#: timezone/zic.c:2019 +msgid "no POSIX environment variable for zone" +msgstr "無 POSIX 環境變數用於區" -#: elf/sprof.c:74 -msgid "print list of count paths and their number of use" -msgstr "列出計數的路徑以及它們使用的次數" +#: timezone/zic.c:2176 +msgid "can't determine time zone abbreviation to use just after until time" +msgstr "無法決定在結束時間以後該使用的時區簡寫" -#: elf/sprof.c:76 -msgid "generate flat profile with counts and ticks" -msgstr "從執行次數與經歷時間的資料中產生直接的測速結果" +#: timezone/zic.c:2222 +msgid "too many transitions?!" +msgstr "太多時間轉換了?!" -#: elf/sprof.c:77 -msgid "generate call graph" -msgstr "產生函式呼叫圖形" +#: timezone/zic.c:2241 +msgid "internal error - addtype called with bad isdst" +msgstr "內部錯誤 - 用錯誤的 isdst 呼叫 addtype 函式" -#: elf/sprof.c:84 -msgid "Read and display shared object profiling data" -msgstr "讀取並顯示共用函式的測速評估資料" +#: timezone/zic.c:2245 +msgid "internal error - addtype called with bad ttisstd" +msgstr "內部錯誤 - 用錯誤的 ttisstd 呼叫 addtype 函式" -#: elf/sprof.c:87 -msgid "SHOBJ [PROFDATA]" -msgstr "SHOBJ [PROFDATA]" +#: timezone/zic.c:2249 +msgid "internal error - addtype called with bad ttisgmt" +msgstr "內部錯誤 - 用錯誤的 ttisgmt 呼叫 addtype 函式" -#: elf/sprof.c:398 -#, c-format -msgid "failed to load shared object `%s'" -msgstr "開啟共用目的檔 `%s' 失敗" +#: timezone/zic.c:2268 +msgid "too many local time types" +msgstr "太多本地時間格式" -#: elf/sprof.c:407 -msgid "cannot create internal descriptors" -msgstr "無法建立內部敘述項" +#: timezone/zic.c:2272 +msgid "UTC offset out of range" +msgstr "UTC 偏移超出範圍" -#: elf/sprof.c:526 -#, c-format -msgid "Reopening shared object `%s' failed" -msgstr "重新開啟共用目的檔 %s 失敗" +#: timezone/zic.c:2300 +msgid "too many leap seconds" +msgstr "太多閏秒" -#: elf/sprof.c:534 -msgid "mapping of section headers failed" -msgstr "映射結區標頭失敗" +#: timezone/zic.c:2306 +msgid "repeated leap second moment" +msgstr "重複的閏秒設定" -#: elf/sprof.c:544 -msgid "mapping of section header string table failed" -msgstr "映射結區的標頭字串表格失敗" +#: timezone/zic.c:2358 +msgid "Wild result from command execution" +msgstr "命令執行導致奇怪的結果" -#: elf/sprof.c:564 +#: timezone/zic.c:2359 #, c-format -msgid "*** The file `%s' is stripped: no detailed analysis possible\n" -msgstr "*** 檔案 `%s' 被裁剪了: 無法做詳細的分析\n" +msgid "%s: command was '%s', result was %d\n" +msgstr "%s: 輸入命令為 '%s', 結果為 %d\n" -#: elf/sprof.c:594 -msgid "failed to load symbol data" -msgstr "載入函式符號資料失敗" +#: timezone/zic.c:2457 +msgid "Odd number of quotation marks" +msgstr "引號數目為奇數" -#: elf/sprof.c:664 -msgid "cannot load profiling data" -msgstr "無法載入測試資料" +#: timezone/zic.c:2546 +msgid "use of 2/29 in non leap-year" +msgstr "在非閏年時用到 2/29 日" -#: elf/sprof.c:673 -msgid "while stat'ing profiling data file" -msgstr "在對測試資料檔案進行統計的時候" +#: timezone/zic.c:2581 +msgid "rule goes past start/end of month--will not work with pre-2004 versions of zic" +msgstr "規則超過開始/結束月分--將無法適用早於 2004 的 zic 版本" -#: elf/sprof.c:681 -#, c-format -msgid "profiling data file `%s' does not match shared object `%s'" -msgstr "測試資料檔 `%s' 與共用目的檔 `%s' 不符合" +#: timezone/zic.c:2613 +msgid "time zone abbreviation lacks alphabetic at start" +msgstr "時區縮寫開頭缺少字母" -#: elf/sprof.c:692 -msgid "failed to mmap the profiling data file" -msgstr "測試資料檔案 mmap 失敗" +#: timezone/zic.c:2615 +msgid "time zone abbreviation has more than 3 alphabetics" +msgstr "時區縮寫超過 3 字母" -#: elf/sprof.c:700 -msgid "error while closing the profiling data file" -msgstr "正在關閉測試資料檔案時發生錯誤" +#: timezone/zic.c:2617 +msgid "time zone abbreviation has too many alphabetics" +msgstr "時區縮寫有太多字母" -#: elf/sprof.c:709 elf/sprof.c:779 -msgid "cannot create internal descriptor" -msgstr "無法建立內部敘述項" +#: timezone/zic.c:2627 +msgid "time zone abbreviation differs from POSIX standard" +msgstr "時區縮寫與 POSIX 標準不同" + +#: timezone/zic.c:2639 +msgid "too many, or too long, time zone abbreviations" +msgstr "時區縮寫太多或者太長" -#: elf/sprof.c:755 +#: timezone/zic.c:2680 #, c-format -msgid "`%s' is no correct profile data file for `%s'" -msgstr "`%s' 不是 `%s' 中正確的測速評估資料檔" +msgid "%s: Can't create directory %s: %s\n" +msgstr "%s: 無法建立目錄 %s: %s\n" -#: elf/sprof.c:936 elf/sprof.c:988 -msgid "cannot allocate symbol data" -msgstr "無法配置函式符號資料" +#: timezone/zic.c:2702 +#, c-format +msgid "%s: %d did not sign extend correctly\n" +msgstr "%s: %d 無法正確地延展訊號\n" -- cgit 1.4.1 From eac8c307c32367c7712dd73a28677024686b6ab7 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 7 Mar 2012 09:46:20 -0500 Subject: WS fixes --- po/zh_TW.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/po/zh_TW.po b/po/zh_TW.po index 63f0707f7a..60e1ccd464 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -6193,7 +6193,7 @@ msgstr "這次真的被您打敗了" # - Macro: int EIEIO # Go home and have a glass of warm, dairy-fresh milk. # -# The following messages were copied & pasted +# The following messages were copied & pasted # from es.po by Santiago Vila Doncel . # # -- cgit 1.4.1 From d1d3431a3a9dd14501eedb701436bd5005b1db7d Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Wed, 7 Mar 2012 15:15:19 +0000 Subject: Fix signs of zeros from casinh, cacosh etc. (bug 10716). --- ChangeLog | 14 ++ NEWS | 8 +- math/libm-test.inc | 104 +++++++++++++ math/s_cacosh.c | 12 +- math/s_cacoshf.c | 14 +- math/s_cacoshl.c | 14 +- math/s_casinh.c | 7 +- math/s_casinhf.c | 7 +- math/s_casinhl.c | 7 +- sysdeps/i386/fpu/libm-test-ulps | 286 ++++++++++++++++++++++++++++++++++++ sysdeps/x86_64/fpu/libm-test-ulps | 298 ++++++++++++++++++++++++++++++++++++++ 11 files changed, 750 insertions(+), 21 deletions(-) diff --git a/ChangeLog b/ChangeLog index b3dbb5d63b..e3842807df 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,17 @@ +2012-03-07 Joseph Myers + + [BZ #10716] + * math/s_cacosh.c (__cacosh): Convert negative log results to 0. + * math/s_cacoshf.c (__cacoshf): Likewise. + * math/s_cacoshl.c (__cacoshl): Likewise. + * math/s_casinh.c (__casinh): Set signs of result from argument. + * math/s_casinhf.c (__casinhf): Likewise. + * math/s_casinhl.c (__casinhl): Likewise. + * math/libm-test.inc (cacos_test, cacosh_test, casin_test) + (casinh_test): Add more tests. + * sysdeps/i386/fpu/libm-test-ulps: Update. + * sysdeps/x86_64/fpu/libm-test-ulps: Likewise. + 2012-03-07 Ulrich Drepper * login/Makefile (distribute): Remove variable. diff --git a/NEWS b/NEWS index 61cc1dca1e..180aec41c9 100644 --- a/NEWS +++ b/NEWS @@ -11,10 +11,10 @@ Version 2.16 174, 350, 411, 2541, 2547, 2548, 3335, 3976, 3992, 4026, 4108, 4596, 4822, 5077, 5461, 5805, 5993, 6884, 6907, 9739, 9902, 10110, 10135, 10140, - 10210, 11174, 11322, 11365, 11494, 12047, 13058, 13525, 13526, 13527, - 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551, 13552, 13553, - 13555, 13559, 13583, 13618, 13637, 13656, 13695, 13704, 13706, 13726, - 13738, 13786, 13792 + 10210, 10716, 11174, 11322, 11365, 11494, 12047, 13058, 13525, 13526, + 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551, 13552, + 13553, 13555, 13559, 13583, 13618, 13637, 13656, 13695, 13704, 13706, + 13726, 13738, 13786, 13792 * ISO C11 support: diff --git a/math/libm-test.inc b/math/libm-test.inc index 9bdbc4cb98..39cda6663c 100644 --- a/math/libm-test.inc +++ b/math/libm-test.inc @@ -1065,6 +1065,32 @@ cacos_test (void) TEST_c_c (cacos, nan_value, nan_value, nan_value, nan_value); + TEST_c_c (cacos, plus_zero, -1.5L, M_PI_2l, 1.194763217287109304111930828519090523536L); + TEST_c_c (cacos, minus_zero, -1.5L, M_PI_2l, 1.194763217287109304111930828519090523536L); + TEST_c_c (cacos, plus_zero, -1.0L, M_PI_2l, 0.8813735870195430252326093249797923090282L); + TEST_c_c (cacos, minus_zero, -1.0L, M_PI_2l, 0.8813735870195430252326093249797923090282L); + TEST_c_c (cacos, plus_zero, -0.5L, M_PI_2l, 0.4812118250596034474977589134243684231352L); + TEST_c_c (cacos, minus_zero, -0.5L, M_PI_2l, 0.4812118250596034474977589134243684231352L); + TEST_c_c (cacos, plus_zero, 0.5L, M_PI_2l, -0.4812118250596034474977589134243684231352L); + TEST_c_c (cacos, minus_zero, 0.5L, M_PI_2l, -0.4812118250596034474977589134243684231352L); + TEST_c_c (cacos, plus_zero, 1.0L, M_PI_2l, -0.8813735870195430252326093249797923090282L); + TEST_c_c (cacos, minus_zero, 1.0L, M_PI_2l, -0.8813735870195430252326093249797923090282L); + TEST_c_c (cacos, plus_zero, 1.5L, M_PI_2l, -1.194763217287109304111930828519090523536L); + TEST_c_c (cacos, minus_zero, 1.5L, M_PI_2l, -1.194763217287109304111930828519090523536L); + + TEST_c_c (cacos, -1.5L, plus_zero, M_PIl, -0.9624236501192068949955178268487368462704L); + TEST_c_c (cacos, -1.5L, minus_zero, M_PIl, 0.9624236501192068949955178268487368462704L); + TEST_c_c (cacos, -1.0L, plus_zero, M_PIl, minus_zero); + TEST_c_c (cacos, -1.0L, minus_zero, M_PIl, plus_zero); + TEST_c_c (cacos, -0.5L, plus_zero, 2.094395102393195492308428922186335256131L, minus_zero); + TEST_c_c (cacos, -0.5L, minus_zero, 2.094395102393195492308428922186335256131L, plus_zero); + TEST_c_c (cacos, 0.5L, plus_zero, 1.047197551196597746154214461093167628066L, minus_zero); + TEST_c_c (cacos, 0.5L, minus_zero, 1.047197551196597746154214461093167628066L, plus_zero); + TEST_c_c (cacos, 1.0L, plus_zero, plus_zero, minus_zero); + TEST_c_c (cacos, 1.0L, minus_zero, plus_zero, plus_zero); + TEST_c_c (cacos, 1.5L, plus_zero, plus_zero, -0.9624236501192068949955178268487368462704L); + TEST_c_c (cacos, 1.5L, minus_zero, plus_zero, 0.9624236501192068949955178268487368462704L); + TEST_c_c (cacos, 0.75L, 1.25L, 1.11752014915610270578240049553777969L, -1.13239363160530819522266333696834467L); TEST_c_c (cacos, -2, -3, 2.1414491111159960199416055713254211L, 1.9833870299165354323470769028940395L); @@ -1127,6 +1153,32 @@ cacosh_test (void) TEST_c_c (cacosh, nan_value, nan_value, nan_value, nan_value); + TEST_c_c (cacosh, plus_zero, -1.5L, 1.194763217287109304111930828519090523536L, -M_PI_2l); + TEST_c_c (cacosh, minus_zero, -1.5L, 1.194763217287109304111930828519090523536L, -M_PI_2l); + TEST_c_c (cacosh, plus_zero, -1.0L, 0.8813735870195430252326093249797923090282L, -M_PI_2l); + TEST_c_c (cacosh, minus_zero, -1.0L, 0.8813735870195430252326093249797923090282L, -M_PI_2l); + TEST_c_c (cacosh, plus_zero, -0.5L, 0.4812118250596034474977589134243684231352L, -M_PI_2l); + TEST_c_c (cacosh, minus_zero, -0.5L, 0.4812118250596034474977589134243684231352L, -M_PI_2l); + TEST_c_c (cacosh, plus_zero, 0.5L, 0.4812118250596034474977589134243684231352L, M_PI_2l); + TEST_c_c (cacosh, minus_zero, 0.5L, 0.4812118250596034474977589134243684231352L, M_PI_2l); + TEST_c_c (cacosh, plus_zero, 1.0L, 0.8813735870195430252326093249797923090282L, M_PI_2l); + TEST_c_c (cacosh, minus_zero, 1.0L, 0.8813735870195430252326093249797923090282L, M_PI_2l); + TEST_c_c (cacosh, plus_zero, 1.5L, 1.194763217287109304111930828519090523536L, M_PI_2l); + TEST_c_c (cacosh, minus_zero, 1.5L, 1.194763217287109304111930828519090523536L, M_PI_2l); + + TEST_c_c (cacosh, -1.5L, plus_zero, 0.9624236501192068949955178268487368462704L, M_PIl); + TEST_c_c (cacosh, -1.5L, minus_zero, 0.9624236501192068949955178268487368462704L, -M_PIl); + TEST_c_c (cacosh, -1.0L, plus_zero, plus_zero, M_PIl); + TEST_c_c (cacosh, -1.0L, minus_zero, plus_zero, -M_PIl); + TEST_c_c (cacosh, -0.5L, plus_zero, plus_zero, 2.094395102393195492308428922186335256131L); + TEST_c_c (cacosh, -0.5L, minus_zero, plus_zero, -2.094395102393195492308428922186335256131L); + TEST_c_c (cacosh, 0.5L, plus_zero, plus_zero, 1.047197551196597746154214461093167628066L); + TEST_c_c (cacosh, 0.5L, minus_zero, plus_zero, -1.047197551196597746154214461093167628066L); + TEST_c_c (cacosh, 1.0L, plus_zero, plus_zero, plus_zero); + TEST_c_c (cacosh, 1.0L, minus_zero, plus_zero, minus_zero); + TEST_c_c (cacosh, 1.5L, plus_zero, 0.9624236501192068949955178268487368462704L, plus_zero); + TEST_c_c (cacosh, 1.5L, minus_zero, 0.9624236501192068949955178268487368462704L, minus_zero); + TEST_c_c (cacosh, 0.75L, 1.25L, 1.13239363160530819522266333696834467L, 1.11752014915610270578240049553777969L); TEST_c_c (cacosh, -2, -3, 1.9833870299165354323470769028940395L, -2.1414491111159960199416055713254211L); @@ -1258,6 +1310,32 @@ casin_test (void) TEST_c_c (casin, nan_value, nan_value, nan_value, nan_value); + TEST_c_c (casin, plus_zero, -1.5L, plus_zero, -1.194763217287109304111930828519090523536L); + TEST_c_c (casin, minus_zero, -1.5L, minus_zero, -1.194763217287109304111930828519090523536L); + TEST_c_c (casin, plus_zero, -1.0L, plus_zero, -0.8813735870195430252326093249797923090282L); + TEST_c_c (casin, minus_zero, -1.0L, minus_zero, -0.8813735870195430252326093249797923090282L); + TEST_c_c (casin, plus_zero, -0.5L, plus_zero, -0.4812118250596034474977589134243684231352L); + TEST_c_c (casin, minus_zero, -0.5L, minus_zero, -0.4812118250596034474977589134243684231352L); + TEST_c_c (casin, plus_zero, 0.5L, plus_zero, 0.4812118250596034474977589134243684231352L); + TEST_c_c (casin, minus_zero, 0.5L, minus_zero, 0.4812118250596034474977589134243684231352L); + TEST_c_c (casin, plus_zero, 1.0L, plus_zero, 0.8813735870195430252326093249797923090282L); + TEST_c_c (casin, minus_zero, 1.0L, minus_zero, 0.8813735870195430252326093249797923090282L); + TEST_c_c (casin, plus_zero, 1.5L, plus_zero, 1.194763217287109304111930828519090523536L); + TEST_c_c (casin, minus_zero, 1.5L, minus_zero, 1.194763217287109304111930828519090523536L); + + TEST_c_c (casin, -1.5L, plus_zero, -M_PI_2l, 0.9624236501192068949955178268487368462704L); + TEST_c_c (casin, -1.5L, minus_zero, -M_PI_2l, -0.9624236501192068949955178268487368462704L); + TEST_c_c (casin, -1.0L, plus_zero, -M_PI_2l, plus_zero); + TEST_c_c (casin, -1.0L, minus_zero, -M_PI_2l, minus_zero); + TEST_c_c (casin, -0.5L, plus_zero, -0.5235987755982988730771072305465838140329L, plus_zero); + TEST_c_c (casin, -0.5L, minus_zero, -0.5235987755982988730771072305465838140329L, minus_zero); + TEST_c_c (casin, 0.5L, plus_zero, 0.5235987755982988730771072305465838140329L, plus_zero); + TEST_c_c (casin, 0.5L, minus_zero, 0.5235987755982988730771072305465838140329L, minus_zero); + TEST_c_c (casin, 1.0L, plus_zero, M_PI_2l, plus_zero); + TEST_c_c (casin, 1.0L, minus_zero, M_PI_2l, minus_zero); + TEST_c_c (casin, 1.5L, plus_zero, M_PI_2l, 0.9624236501192068949955178268487368462704L); + TEST_c_c (casin, 1.5L, minus_zero, M_PI_2l, -0.9624236501192068949955178268487368462704L); + TEST_c_c (casin, 0.75L, 1.25L, 0.453276177638793913448921196101971749L, 1.13239363160530819522266333696834467L); TEST_c_c (casin, -2, -3, -0.57065278432109940071028387968566963L, -1.9833870299165354323470769028940395L); @@ -1322,6 +1400,32 @@ casinh_test (void) TEST_c_c (casinh, nan_value, nan_value, nan_value, nan_value); + TEST_c_c (casinh, plus_zero, -1.5L, 0.9624236501192068949955178268487368462704L, -M_PI_2l); + TEST_c_c (casinh, minus_zero, -1.5L, -0.9624236501192068949955178268487368462704L, -M_PI_2l); + TEST_c_c (casinh, plus_zero, -1.0L, plus_zero, -M_PI_2l); + TEST_c_c (casinh, minus_zero, -1.0L, minus_zero, -M_PI_2l); + TEST_c_c (casinh, plus_zero, -0.5L, plus_zero, -0.5235987755982988730771072305465838140329L); + TEST_c_c (casinh, minus_zero, -0.5L, minus_zero, -0.5235987755982988730771072305465838140329L); + TEST_c_c (casinh, plus_zero, 0.5L, plus_zero, 0.5235987755982988730771072305465838140329L); + TEST_c_c (casinh, minus_zero, 0.5L, minus_zero, 0.5235987755982988730771072305465838140329L); + TEST_c_c (casinh, plus_zero, 1.0L, plus_zero, M_PI_2l); + TEST_c_c (casinh, minus_zero, 1.0L, minus_zero, M_PI_2l); + TEST_c_c (casinh, plus_zero, 1.5L, 0.9624236501192068949955178268487368462704L, M_PI_2l); + TEST_c_c (casinh, minus_zero, 1.5L, -0.9624236501192068949955178268487368462704L, M_PI_2l); + + TEST_c_c (casinh, -1.5L, plus_zero, -1.194763217287109304111930828519090523536L, plus_zero); + TEST_c_c (casinh, -1.5L, minus_zero, -1.194763217287109304111930828519090523536L, minus_zero); + TEST_c_c (casinh, -1.0L, plus_zero, -0.8813735870195430252326093249797923090282L, plus_zero); + TEST_c_c (casinh, -1.0L, minus_zero, -0.8813735870195430252326093249797923090282L, minus_zero); + TEST_c_c (casinh, -0.5L, plus_zero, -0.4812118250596034474977589134243684231352L, plus_zero); + TEST_c_c (casinh, -0.5L, minus_zero, -0.4812118250596034474977589134243684231352L, minus_zero); + TEST_c_c (casinh, 0.5L, plus_zero, 0.4812118250596034474977589134243684231352L, plus_zero); + TEST_c_c (casinh, 0.5L, minus_zero, 0.4812118250596034474977589134243684231352L, minus_zero); + TEST_c_c (casinh, 1.0L, plus_zero, 0.8813735870195430252326093249797923090282L, plus_zero); + TEST_c_c (casinh, 1.0L, minus_zero, 0.8813735870195430252326093249797923090282L, minus_zero); + TEST_c_c (casinh, 1.5L, plus_zero, 1.194763217287109304111930828519090523536L, plus_zero); + TEST_c_c (casinh, 1.5L, minus_zero, 1.194763217287109304111930828519090523536L, minus_zero); + TEST_c_c (casinh, 0.75L, 1.25L, 1.03171853444778027336364058631006594L, 0.911738290968487636358489564316731207L); TEST_c_c (casinh, -2, -3, -1.9686379257930962917886650952454982L, -0.96465850440760279204541105949953237L); diff --git a/math/s_cacosh.c b/math/s_cacosh.c index 95bf005cd3..ef49088c3d 100644 --- a/math/s_cacosh.c +++ b/math/s_cacosh.c @@ -1,5 +1,5 @@ /* Return arc hyperbole cosine for double value. - Copyright (C) 1997, 2006, 2011 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -66,9 +66,13 @@ __cacosh (__complex__ double x) } /* The factor 16 is just a guess. */ else if (16.0 * fabs (__imag__ x) < fabs (__real__ x)) - /* Kahan's formula which avoid cancellation through subtraction in - some cases. */ - res = 2.0 * __clog (__csqrt ((x + 1.0) / 2.0) + __csqrt ((x - 1.0) / 2.0)); + { + /* Kahan's formula which avoid cancellation through subtraction in + some cases. */ + res = 2.0 * __clog (__csqrt ((x + 1.0) / 2.0) + __csqrt ((x - 1.0) / 2.0)); + if (signbit (__real__ res)) + __real__ res = 0.0; + } else { __complex__ double y; diff --git a/math/s_cacoshf.c b/math/s_cacoshf.c index d634a1b756..fc716ac519 100644 --- a/math/s_cacoshf.c +++ b/math/s_cacoshf.c @@ -1,5 +1,5 @@ /* Return arc hyperbole cosine for float value. - Copyright (C) 1997, 2006, 2011 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -66,10 +66,14 @@ __cacoshf (__complex__ float x) } /* The factor 16 is just a guess. */ else if (16.0 * fabsf (__imag__ x) < fabsf (__real__ x)) - /* Kahan's formula which avoid cancellation through subtraction in - some cases. */ - res = 2.0 * __clogf (__csqrtf ((x + 1.0) / 2.0) - + __csqrtf ((x - 1.0) / 2.0)); + { + /* Kahan's formula which avoid cancellation through subtraction in + some cases. */ + res = 2.0 * __clogf (__csqrtf ((x + 1.0) / 2.0) + + __csqrtf ((x - 1.0) / 2.0)); + if (signbit (__real__ res)) + __real__ res = 0.0f; + } else { __complex__ float y; diff --git a/math/s_cacoshl.c b/math/s_cacoshl.c index dcdb1d5a64..3bcab1d277 100644 --- a/math/s_cacoshl.c +++ b/math/s_cacoshl.c @@ -1,5 +1,5 @@ /* Return arc hyperbole cosine for long double value. - Copyright (C) 1997, 1998, 2006, 2011 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -66,10 +66,14 @@ __cacoshl (__complex__ long double x) } /* The factor 16 is just a guess. */ else if (16.0L * fabsl (__imag__ x) < fabsl (__real__ x)) - /* Kahan's formula which avoid cancellation through subtraction in - some cases. */ - res = 2.0L * __clogl (__csqrtl ((x + 1.0L) / 2.0L) - + __csqrtl ((x - 1.0L) / 2.0L)); + { + /* Kahan's formula which avoid cancellation through subtraction in + some cases. */ + res = 2.0L * __clogl (__csqrtl ((x + 1.0L) / 2.0L) + + __csqrtl ((x - 1.0L) / 2.0L)); + if (signbit (__real__ res)) + __real__ res = 0.0L; + } else { __complex__ long double y; diff --git a/math/s_casinh.c b/math/s_casinh.c index e06be1cdc6..24ae676a8f 100644 --- a/math/s_casinh.c +++ b/math/s_casinh.c @@ -1,5 +1,5 @@ /* Return arc hyperbole sine for double value. - Copyright (C) 1997, 2011 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -73,6 +73,11 @@ __casinh (__complex__ double x) __imag__ y += __imag__ x; res = __clog (y); + + /* Ensure zeros have correct sign and results are correct if + very close to branch cuts. */ + __real__ res = __copysign (__real__ res, __real__ x); + __imag__ res = __copysign (__imag__ res, __imag__ x); } return res; diff --git a/math/s_casinhf.c b/math/s_casinhf.c index 37c67401a3..c7098ef309 100644 --- a/math/s_casinhf.c +++ b/math/s_casinhf.c @@ -1,5 +1,5 @@ /* Return arc hyperbole sine for float value. - Copyright (C) 1997, 2011 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -73,6 +73,11 @@ __casinhf (__complex__ float x) __imag__ y += __imag__ x; res = __clogf (y); + + /* Ensure zeros have correct sign and results are correct if + very close to branch cuts. */ + __real__ res = __copysignf (__real__ res, __real__ x); + __imag__ res = __copysignf (__imag__ res, __imag__ x); } return res; diff --git a/math/s_casinhl.c b/math/s_casinhl.c index de41cb8999..80d7bf500d 100644 --- a/math/s_casinhl.c +++ b/math/s_casinhl.c @@ -1,5 +1,5 @@ /* Return arc hyperbole sine for long double value. - Copyright (C) 1997, 1998, 2011 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -73,6 +73,11 @@ __casinhl (__complex__ long double x) __imag__ y += __imag__ x; res = __clogl (y); + + /* Ensure zeros have correct sign and results are correct if + very close to branch cuts. */ + __real__ res = __copysignl (__real__ res, __real__ x); + __imag__ res = __copysignl (__imag__ res, __imag__ x); } return res; diff --git a/sysdeps/i386/fpu/libm-test-ulps b/sysdeps/i386/fpu/libm-test-ulps index c5568b9832..977a3abd14 100644 --- a/sysdeps/i386/fpu/libm-test-ulps +++ b/sysdeps/i386/fpu/libm-test-ulps @@ -28,13 +28,147 @@ ildouble: 2 ldouble: 1 # cacos +Test "Imaginary part of: cacos (+0 + 0.5 i) == pi/2 - 0.4812118250596034474977589134243684231352 i": +double: 2 +idouble: 2 +Test "Imaginary part of: cacos (+0 + 1.0 i) == pi/2 - 0.8813735870195430252326093249797923090282 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: cacos (+0 + 1.5 i) == pi/2 - 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Imaginary part of: cacos (+0 - 0.5 i) == pi/2 + 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacos (+0 - 1.0 i) == pi/2 + 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacos (+0 - 1.5 i) == pi/2 + 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacos (-0 + 0.5 i) == pi/2 - 0.4812118250596034474977589134243684231352 i": +double: 2 +idouble: 2 +Test "Imaginary part of: cacos (-0 + 1.0 i) == pi/2 - 0.8813735870195430252326093249797923090282 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: cacos (-0 + 1.5 i) == pi/2 - 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Imaginary part of: cacos (-0 - 0.5 i) == pi/2 + 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacos (-0 - 1.0 i) == pi/2 + 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacos (-0 - 1.5 i) == pi/2 + 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacos (-1.5 + +0 i) == pi - 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacos (-1.5 - 0 i) == pi + 0.9624236501192068949955178268487368462704 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacos (0.5 + +0 i) == 1.047197551196597746154214461093167628066 - 0 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacos (0.5 - 0 i) == 1.047197551196597746154214461093167628066 + +0 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 Test "Imaginary part of: cacos (0.75 + 1.25 i) == 1.11752014915610270578240049553777969 - 1.13239363160530819522266333696834467 i": float: 1 ifloat: 1 ildouble: 2 ldouble: 2 +Test "Imaginary part of: cacos (1.5 + +0 i) == +0 - 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacos (1.5 - 0 i) == +0 + 0.9624236501192068949955178268487368462704 i": +ildouble: 1 +ldouble: 1 # cacosh +Test "Real part of: cacosh (+0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (+0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (-0.5 + +0 i) == +0 + 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (-0.5 - 0 i) == +0 - 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + pi i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - pi i": +float: 1 +ifloat: 1 Test "Real part of: cacosh (-2 - 3 i) == 1.9833870299165354323470769028940395 - 2.1414491111159960199416055713254211 i": double: 1 float: 9 @@ -52,8 +186,74 @@ ldouble: 1 Test "Real part of: cacosh (0.75 + 1.25 i) == 1.13239363160530819522266333696834467 + 1.11752014915610270578240049553777969 i": ildouble: 1 ldouble: 1 +Test "Real part of: cacosh (1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + +0 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - 0 i": +float: 1 +ifloat: 1 # casin +Test "Imaginary part of: casin (+0 + 0.5 i) == +0 + 0.4812118250596034474977589134243684231352 i": +double: 2 +idouble: 2 +Test "Imaginary part of: casin (+0 + 1.0 i) == +0 + 0.8813735870195430252326093249797923090282 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: casin (+0 + 1.5 i) == +0 + 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Imaginary part of: casin (+0 - 0.5 i) == +0 - 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: casin (+0 - 1.0 i) == +0 - 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: casin (+0 - 1.5 i) == +0 - 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +Test "Imaginary part of: casin (-0 + 0.5 i) == -0 + 0.4812118250596034474977589134243684231352 i": +double: 2 +idouble: 2 +Test "Imaginary part of: casin (-0 + 1.0 i) == -0 + 0.8813735870195430252326093249797923090282 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: casin (-0 + 1.5 i) == -0 + 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Imaginary part of: casin (-0 - 0.5 i) == -0 - 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: casin (-0 - 1.0 i) == -0 - 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: casin (-0 - 1.5 i) == -0 - 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +Test "Imaginary part of: casin (-1.5 + +0 i) == -pi/2 + 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: casin (-1.5 - 0 i) == -pi/2 - 0.9624236501192068949955178268487368462704 i": +ildouble: 1 +ldouble: 1 Test "Real part of: casin (0.75 + 1.25 i) == 0.453276177638793913448921196101971749 + 1.13239363160530819522266333696834467 i": double: 1 float: 1 @@ -66,8 +266,62 @@ float: 1 ifloat: 1 ildouble: 2 ldouble: 2 +Test "Imaginary part of: casin (1.5 + +0 i) == pi/2 + 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: casin (1.5 - 0 i) == pi/2 - 0.9624236501192068949955178268487368462704 i": +ildouble: 1 +ldouble: 1 # casinh +Test "Real part of: casinh (+0 + 1.5 i) == 0.9624236501192068949955178268487368462704 + pi/2 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (+0 - 1.5 i) == 0.9624236501192068949955178268487368462704 - pi/2 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (-0 + 1.5 i) == -0.9624236501192068949955178268487368462704 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: casinh (-0 - 1.5 i) == -0.9624236501192068949955178268487368462704 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: casinh (-0.5 + +0 i) == -0.4812118250596034474977589134243684231352 + +0 i": +double: 2 +idouble: 2 +Test "Real part of: casinh (-0.5 - 0 i) == -0.4812118250596034474977589134243684231352 - 0 i": +double: 2 +idouble: 2 +Test "Real part of: casinh (-1.0 + +0 i) == -0.8813735870195430252326093249797923090282 + +0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Real part of: casinh (-1.0 - 0 i) == -0.8813735870195430252326093249797923090282 - 0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Real part of: casinh (-1.5 + +0 i) == -1.194763217287109304111930828519090523536 + +0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Real part of: casinh (-1.5 - 0 i) == -1.194763217287109304111930828519090523536 - 0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 Test "Real part of: casinh (-2 - 3 i) == -1.9686379257930962917886650952454982 - 0.96465850440760279204541105949953237 i": double: 5 float: 1 @@ -82,6 +336,12 @@ idouble: 3 ifloat: 6 ildouble: 5 ldouble: 5 +Test "Real part of: casinh (0.5 + +0 i) == 0.4812118250596034474977589134243684231352 + +0 i": +float: 1 +ifloat: 1 +Test "Real part of: casinh (0.5 - 0 i) == 0.4812118250596034474977589134243684231352 - 0 i": +float: 1 +ifloat: 1 Test "Real part of: casinh (0.75 + 1.25 i) == 1.03171853444778027336364058631006594 + 0.911738290968487636358489564316731207 i": float: 1 ifloat: 1 @@ -92,6 +352,22 @@ idouble: 1 ifloat: 1 ildouble: 1 ldouble: 1 +Test "Real part of: casinh (1.0 + +0 i) == 0.8813735870195430252326093249797923090282 + +0 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: casinh (1.0 - 0 i) == 0.8813735870195430252326093249797923090282 - 0 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: casinh (1.5 + +0 i) == 1.194763217287109304111930828519090523536 + +0 i": +double: 1 +idouble: 1 +Test "Real part of: casinh (1.5 - 0 i) == 1.194763217287109304111930828519090523536 - 0 i": +double: 1 +idouble: 1 # catan Test "Imaginary part of: catan (-2 - 3 i) == -1.4099210495965755225306193844604208 - 0.22907268296853876629588180294200276 i": @@ -1544,8 +1820,16 @@ Function: "atanh": ildouble: 2 ldouble: 1 +Function: Real part of "cacos": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 + Function: Imaginary part of "cacos": +double: 2 float: 1 +idouble: 2 ifloat: 1 ildouble: 2 ldouble: 2 @@ -1575,7 +1859,9 @@ ildouble: 2 ldouble: 2 Function: Imaginary part of "casin": +double: 2 float: 1 +idouble: 2 ifloat: 1 ildouble: 2 ldouble: 2 diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps index 269dca6d03..867e8dd41f 100644 --- a/sysdeps/x86_64/fpu/libm-test-ulps +++ b/sysdeps/x86_64/fpu/libm-test-ulps @@ -41,13 +41,151 @@ ildouble: 1 ldouble: 1 # cacos +Test "Imaginary part of: cacos (+0 + 0.5 i) == pi/2 - 0.4812118250596034474977589134243684231352 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Imaginary part of: cacos (+0 + 1.0 i) == pi/2 - 0.8813735870195430252326093249797923090282 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: cacos (+0 + 1.5 i) == pi/2 - 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Imaginary part of: cacos (+0 - 0.5 i) == pi/2 + 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacos (+0 - 1.0 i) == pi/2 + 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacos (+0 - 1.5 i) == pi/2 + 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacos (-0 + 0.5 i) == pi/2 - 0.4812118250596034474977589134243684231352 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Imaginary part of: cacos (-0 + 1.0 i) == pi/2 - 0.8813735870195430252326093249797923090282 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: cacos (-0 + 1.5 i) == pi/2 - 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Imaginary part of: cacos (-0 - 0.5 i) == pi/2 + 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacos (-0 - 1.0 i) == pi/2 + 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacos (-0 - 1.5 i) == pi/2 + 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacos (-1.5 + +0 i) == pi - 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacos (-1.5 - 0 i) == pi + 0.9624236501192068949955178268487368462704 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacos (0.5 + +0 i) == 1.047197551196597746154214461093167628066 - 0 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacos (0.5 - 0 i) == 1.047197551196597746154214461093167628066 + +0 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 Test "Imaginary part of: cacos (0.75 + 1.25 i) == 1.11752014915610270578240049553777969 - 1.13239363160530819522266333696834467 i": float: 1 ifloat: 1 ildouble: 2 ldouble: 2 +Test "Imaginary part of: cacos (1.5 + +0 i) == +0 - 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacos (1.5 - 0 i) == +0 + 0.9624236501192068949955178268487368462704 i": +ildouble: 1 +ldouble: 1 # cacosh +Test "Real part of: cacosh (+0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (+0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (-0.5 + +0 i) == +0 + 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (-0.5 - 0 i) == +0 - 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + pi i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - pi i": +float: 1 +ifloat: 1 Test "Real part of: cacosh (-2 - 3 i) == 1.9833870299165354323470769028940395 - 2.1414491111159960199416055713254211 i": double: 1 float: 7 @@ -65,8 +203,78 @@ ldouble: 1 Test "Real part of: cacosh (0.75 + 1.25 i) == 1.13239363160530819522266333696834467 + 1.11752014915610270578240049553777969 i": ildouble: 1 ldouble: 1 +Test "Real part of: cacosh (1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + +0 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - 0 i": +float: 1 +ifloat: 1 # casin +Test "Imaginary part of: casin (+0 + 0.5 i) == +0 + 0.4812118250596034474977589134243684231352 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Imaginary part of: casin (+0 + 1.0 i) == +0 + 0.8813735870195430252326093249797923090282 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: casin (+0 + 1.5 i) == +0 + 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Imaginary part of: casin (+0 - 0.5 i) == +0 - 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: casin (+0 - 1.0 i) == +0 - 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: casin (+0 - 1.5 i) == +0 - 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +Test "Imaginary part of: casin (-0 + 0.5 i) == -0 + 0.4812118250596034474977589134243684231352 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Imaginary part of: casin (-0 + 1.0 i) == -0 + 0.8813735870195430252326093249797923090282 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: casin (-0 + 1.5 i) == -0 + 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Imaginary part of: casin (-0 - 0.5 i) == -0 - 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: casin (-0 - 1.0 i) == -0 - 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: casin (-0 - 1.5 i) == -0 - 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +Test "Imaginary part of: casin (-1.5 + +0 i) == -pi/2 + 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: casin (-1.5 - 0 i) == -pi/2 - 0.9624236501192068949955178268487368462704 i": +ildouble: 1 +ldouble: 1 Test "Real part of: casin (0.75 + 1.25 i) == 0.453276177638793913448921196101971749 + 1.13239363160530819522266333696834467 i": double: 1 float: 1 @@ -79,8 +287,66 @@ float: 1 ifloat: 1 ildouble: 2 ldouble: 2 +Test "Imaginary part of: casin (1.5 + +0 i) == pi/2 + 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: casin (1.5 - 0 i) == pi/2 - 0.9624236501192068949955178268487368462704 i": +ildouble: 1 +ldouble: 1 # casinh +Test "Real part of: casinh (+0 + 1.5 i) == 0.9624236501192068949955178268487368462704 + pi/2 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (+0 - 1.5 i) == 0.9624236501192068949955178268487368462704 - pi/2 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (-0 + 1.5 i) == -0.9624236501192068949955178268487368462704 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: casinh (-0 - 1.5 i) == -0.9624236501192068949955178268487368462704 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: casinh (-0.5 + +0 i) == -0.4812118250596034474977589134243684231352 + +0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Real part of: casinh (-0.5 - 0 i) == -0.4812118250596034474977589134243684231352 - 0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Real part of: casinh (-1.0 + +0 i) == -0.8813735870195430252326093249797923090282 + +0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Real part of: casinh (-1.0 - 0 i) == -0.8813735870195430252326093249797923090282 - 0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Real part of: casinh (-1.5 + +0 i) == -1.194763217287109304111930828519090523536 + +0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +Test "Real part of: casinh (-1.5 - 0 i) == -1.194763217287109304111930828519090523536 - 0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 Test "Real part of: casinh (-2 - 3 i) == -1.9686379257930962917886650952454982 - 0.96465850440760279204541105949953237 i": double: 5 float: 1 @@ -95,6 +361,12 @@ idouble: 3 ifloat: 6 ildouble: 5 ldouble: 5 +Test "Real part of: casinh (0.5 + +0 i) == 0.4812118250596034474977589134243684231352 + +0 i": +float: 1 +ifloat: 1 +Test "Real part of: casinh (0.5 - 0 i) == 0.4812118250596034474977589134243684231352 - 0 i": +float: 1 +ifloat: 1 Test "Real part of: casinh (0.75 + 1.25 i) == 1.03171853444778027336364058631006594 + 0.911738290968487636358489564316731207 i": float: 1 ifloat: 1 @@ -105,6 +377,22 @@ idouble: 1 ifloat: 1 ildouble: 1 ldouble: 1 +Test "Real part of: casinh (1.0 + +0 i) == 0.8813735870195430252326093249797923090282 + +0 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: casinh (1.0 - 0 i) == 0.8813735870195430252326093249797923090282 - 0 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: casinh (1.5 + +0 i) == 1.194763217287109304111930828519090523536 + +0 i": +double: 1 +idouble: 1 +Test "Real part of: casinh (1.5 - 0 i) == 1.194763217287109304111930828519090523536 - 0 i": +double: 1 +idouble: 1 # catan Test "Real part of: catan (-2 - 3 i) == -1.4099210495965755225306193844604208 - 0.22907268296853876629588180294200276 i": @@ -1498,8 +1786,16 @@ ifloat: 1 ildouble: 1 ldouble: 1 +Function: Real part of "cacos": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 + Function: Imaginary part of "cacos": +double: 2 float: 1 +idouble: 2 ifloat: 1 ildouble: 2 ldouble: 2 @@ -1529,7 +1825,9 @@ ildouble: 2 ldouble: 2 Function: Imaginary part of "casin": +double: 2 float: 1 +idouble: 2 ifloat: 1 ildouble: 2 ldouble: 2 -- cgit 1.4.1 From e7dbb1bec3be35897acb18aa277807ed276384c5 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Wed, 7 Mar 2012 19:34:22 +0000 Subject: Weaken two NPTL configure link tests to compile tests. --- NEWS | 8 ++++---- nptl/ChangeLog | 9 +++++++++ nptl/sysdeps/pthread/configure | 40 +++++++++++++++------------------------ nptl/sysdeps/pthread/configure.in | 8 ++++---- 4 files changed, 32 insertions(+), 33 deletions(-) diff --git a/NEWS b/NEWS index 180aec41c9..9e94458a8e 100644 --- a/NEWS +++ b/NEWS @@ -11,10 +11,10 @@ Version 2.16 174, 350, 411, 2541, 2547, 2548, 3335, 3976, 3992, 4026, 4108, 4596, 4822, 5077, 5461, 5805, 5993, 6884, 6907, 9739, 9902, 10110, 10135, 10140, - 10210, 10716, 11174, 11322, 11365, 11494, 12047, 13058, 13525, 13526, - 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551, 13552, - 13553, 13555, 13559, 13583, 13618, 13637, 13656, 13695, 13704, 13706, - 13726, 13738, 13786, 13792 + 10210, 10545, 10716, 11174, 11322, 11365, 11494, 12047, 13058, 13525, + 13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551, + 13552, 13553, 13555, 13559, 13583, 13618, 13637, 13656, 13695, 13704, + 13706, 13726, 13738, 13786, 13792 * ISO C11 support: diff --git a/nptl/ChangeLog b/nptl/ChangeLog index eb2e38daf9..dd6f334a3d 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,12 @@ +2012-03-07 Joseph Myers + + [BZ #10545] + * sysdeps/pthread/configure.in (libc_cv_forced_unwind): Change + link test to a compile test. + (libc_cv_c_cleanup): Likewise. Declare puts rather than including + . + * sysdeps/pthread/configure: Regenerated. + 2012-03-07 Ulrich Drepper * Makefile (distribute): Remove variable. diff --git a/nptl/sysdeps/pthread/configure b/nptl/sysdeps/pthread/configure index 6b3c79b8f4..221ce9bbb1 100644 --- a/nptl/sysdeps/pthread/configure +++ b/nptl/sysdeps/pthread/configure @@ -81,21 +81,21 @@ $as_echo X/"$0" | } -# ac_fn_c_try_link LINENO -# ----------------------- -# Try to link conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_link () +# ac_fn_c_try_compile LINENO +# -------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext conftest$ac_exeext - if { { ac_try="$ac_link" + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>conftest.err + (eval "$ac_compile") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 @@ -106,10 +106,7 @@ $as_echo "$ac_try_echo"; } >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then : + } && test -s conftest.$ac_objext; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 @@ -117,15 +114,10 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi - # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information - # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would - # interfere with the next link command; also delete a directory that is - # left behind by Apple's compiler. We do this before executing the actions. - rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval -} # ac_fn_c_try_link +} # ac_fn_c_try_compile # This file is generated from configure.in by Autoconf. DO NOT EDIT! if test "x$libc_cv_gcc___thread" != xyes; then @@ -165,13 +157,12 @@ _Unwind_GetCFA (context) return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO"; then : libc_cv_forced_unwind=yes else libc_cv_forced_unwind=no fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_forced_unwind" >&5 $as_echo "$libc_cv_forced_unwind" >&6; } @@ -188,25 +179,24 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +extern void some_function (void); void cl (void *a) { } int main () { int a __attribute__ ((cleanup (cl))); - puts ("test") + some_function () ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : +if ac_fn_c_try_compile "$LINENO"; then : libc_cv_c_cleanup=yes else libc_cv_c_cleanup=no fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_c_cleanup" >&5 $as_echo "$libc_cv_c_cleanup" >&6; } diff --git a/nptl/sysdeps/pthread/configure.in b/nptl/sysdeps/pthread/configure.in index 17f18f0fbf..413af96799 100644 --- a/nptl/sysdeps/pthread/configure.in +++ b/nptl/sysdeps/pthread/configure.in @@ -23,7 +23,7 @@ dnl Iff is available, make sure it is the right one and it dnl contains struct _Unwind_Exception. AC_CACHE_CHECK(dnl for forced unwind support, libc_cv_forced_unwind, [dnl -AC_TRY_LINK([#include ], [ +AC_TRY_COMPILE([#include ], [ struct _Unwind_Exception exc; struct _Unwind_Context *context; _Unwind_GetCFA (context)], @@ -34,11 +34,11 @@ dnl Check for C cleanup handling. old_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -Werror -fexceptions" AC_CACHE_CHECK([for C cleanup handling], libc_cv_c_cleanup, [dnl - AC_TRY_LINK([ -#include + AC_TRY_COMPILE([ +extern void some_function (void); void cl (void *a) { }], [ int a __attribute__ ((cleanup (cl))); - puts ("test")], + some_function ()], libc_cv_c_cleanup=yes, libc_cv_c_cleanup=no)]) CFLAGS="$old_CFLAGS" if test $libc_cv_c_cleanup = no; then -- cgit 1.4.1 From af6a1e37554a1245d468ffe44d2c981998a4e0eb Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Wed, 7 Mar 2012 20:51:54 +0000 Subject: Fix sysdeps/i386/configure.in cpuid.h test for bootstrapping. --- ChangeLog | 4 + sysdeps/i386/configure | 480 +--------------------------------------------- sysdeps/i386/configure.in | 5 +- 3 files changed, 8 insertions(+), 481 deletions(-) diff --git a/ChangeLog b/ChangeLog index e3842807df..d5b96fb828 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2012-03-07 Joseph Myers + * sysdeps/i386/configure.in (cpuid.h): Use AC_CHECK_HEADER with no + default includes instead of AC_HEADER_CHECK. + * sysdeps/i386/configure: Regenerated. + [BZ #10716] * math/s_cacosh.c (__cacosh): Convert negative log results to 0. * math/s_cacoshf.c (__cacoshf): Likewise. diff --git a/sysdeps/i386/configure b/sysdeps/i386/configure index bc7900ee2e..49330e389d 100644 --- a/sysdeps/i386/configure +++ b/sysdeps/i386/configure @@ -16,23 +16,6 @@ as_fn_exit () as_fn_set_status $1 exit $1 } # as_fn_exit -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr @@ -97,42 +80,6 @@ $as_echo X/"$0" | exit } -# Factoring default headers for most tests. -ac_includes_default="\ -#include -#ifdef HAVE_SYS_TYPES_H -# include -#endif -#ifdef HAVE_SYS_STAT_H -# include -#endif -#ifdef STDC_HEADERS -# include -# include -#else -# ifdef HAVE_STDLIB_H -# include -# endif -#endif -#ifdef HAVE_STRING_H -# if !defined STDC_HEADERS && defined HAVE_MEMORY_H -# include -# endif -# include -#endif -#ifdef HAVE_STRINGS_H -# include -#endif -#ifdef HAVE_INTTYPES_H -# include -#endif -#ifdef HAVE_STDINT_H -# include -#endif -#ifdef HAVE_UNISTD_H -# include -#endif" - # ac_fn_c_try_compile LINENO # -------------------------- @@ -172,172 +119,6 @@ fi } # ac_fn_c_try_compile -# ac_fn_c_try_cpp LINENO -# ---------------------- -# Try to preprocess conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_cpp () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if { { ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } > conftest.i && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_cpp - -# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES -# ------------------------------------------------------- -# Tests whether HEADER exists, giving a warning if it cannot be compiled using -# the include files in INCLUDES and setting the cache variable VAR -# accordingly. -ac_fn_c_check_header_mongrel () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if eval \${$3+:} false; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -else - # Is the header compilable? -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 -$as_echo_n "checking $2 usability... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -#include <$2> -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_header_compiler=yes -else - ac_header_compiler=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 -$as_echo "$ac_header_compiler" >&6; } - -# Is the header present? -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 -$as_echo_n "checking $2 presence... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <$2> -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - ac_header_preproc=yes -else - ac_header_preproc=no -fi -rm -f conftest.err conftest.i conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 -$as_echo "$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( - yes:no: ) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} - ;; - no:yes:* ) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} - ;; -esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - eval "$3=\$ac_header_compiler" -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_header_mongrel - -# ac_fn_c_try_run LINENO -# ---------------------- -# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes -# that executables *can* be run. -ac_fn_c_try_run () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' - { { case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then : - ac_retval=0 -else - $as_echo "$as_me: program exited with status $ac_status" >&5 - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=$ac_status -fi - rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_run - # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES # ------------------------------------------------------- # Tests whether HEADER exists and can be compiled using the include files in @@ -372,267 +153,8 @@ $as_echo "$ac_res" >&6; } # Local configure fragment for sysdeps/i386. - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 -$as_echo_n "checking for grep that handles long lines and -e... " >&6; } -if ${ac_cv_path_GREP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -z "$GREP"; then - ac_path_GREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in grep ggrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" - { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue -# Check for GNU ac_path_GREP and select it if it is found. - # Check for GNU $ac_path_GREP -case `"$ac_path_GREP" --version 2>&1` in -*GNU*) - ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo 'GREP' >> "conftest.nl" - "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_GREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_GREP="$ac_path_GREP" - ac_path_GREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_GREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_GREP"; then - as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_GREP=$GREP -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 -$as_echo "$ac_cv_path_GREP" >&6; } - GREP="$ac_cv_path_GREP" - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 -$as_echo_n "checking for egrep... " >&6; } -if ${ac_cv_path_EGREP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 - then ac_cv_path_EGREP="$GREP -E" - else - if test -z "$EGREP"; then - ac_path_EGREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in egrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" - { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue -# Check for GNU ac_path_EGREP and select it if it is found. - # Check for GNU $ac_path_EGREP -case `"$ac_path_EGREP" --version 2>&1` in -*GNU*) - ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo 'EGREP' >> "conftest.nl" - "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_EGREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_EGREP="$ac_path_EGREP" - ac_path_EGREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_EGREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_EGREP"; then - as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_EGREP=$EGREP -fi - - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 -$as_echo "$ac_cv_path_EGREP" >&6; } - EGREP="$ac_cv_path_EGREP" - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 -$as_echo_n "checking for ANSI C header files... " >&6; } -if ${ac_cv_header_stdc+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#include - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_stdc=yes -else - ac_cv_header_stdc=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - return 2; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - -else - ac_cv_header_stdc=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 -$as_echo "$ac_cv_header_stdc" >&6; } -if test $ac_cv_header_stdc = yes; then - -$as_echo "#define STDC_HEADERS 1" >>confdefs.h - -fi - -# On IRIX 5.3, sys/types and inttypes.h are conflicting. -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default +ac_fn_c_check_header_compile "$LINENO" "cpuid.h" "ac_cv_header_cpuid_h" "/* No default includes. */ " -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - -ac_fn_c_check_header_mongrel "$LINENO" "cpuid.h" "ac_cv_header_cpuid_h" "$ac_includes_default" if test "x$ac_cv_header_cpuid_h" = xyes; then : else diff --git a/sysdeps/i386/configure.in b/sysdeps/i386/configure.in index 59a4cd6ea1..f769019acf 100644 --- a/sysdeps/i386/configure.in +++ b/sysdeps/i386/configure.in @@ -1,8 +1,9 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. # Local configure fragment for sysdeps/i386. -AC_HEADER_CHECK([cpuid.h], , - [AC_MSG_ERROR([gcc must provide the header])]) +AC_CHECK_HEADER([cpuid.h], , + [AC_MSG_ERROR([gcc must provide the header])], + [/* No default includes. */]) AC_CACHE_CHECK(if -g produces usable source locations for assembler-with-cpp, libc_cv_cpp_asm_debuginfo, [dnl -- cgit 1.4.1 From 07037eeb43ca1e0ac2802e3a1492cecf869c63c6 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Thu, 8 Mar 2012 00:17:27 +0000 Subject: Fix .ctors/.dtors header configure test for bootstrapping. --- ChangeLog | 8 ++++++++ aclocal.m4 | 14 ++++++++++++++ configure | 41 ++++++++++++++++++++++------------------- configure.in | 25 +++++++++---------------- 4 files changed, 53 insertions(+), 35 deletions(-) diff --git a/ChangeLog b/ChangeLog index d5b96fb828..80e2040204 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2012-03-08 Joseph Myers + + * aclocal.m4 (LIBC_TRY_LINK_STATIC): New macro. + * configure.in (libc_cv_preinit_array): Use LIBC_TRY_LINK_STATIC. + (libc_cv_ctors_header): Likewise. Use asm ("") instead of calling + puts. + * configure: Regenerated. + 2012-03-07 Joseph Myers * sysdeps/i386/configure.in (cpuid.h): Use AC_CHECK_HEADER with no diff --git a/aclocal.m4 b/aclocal.m4 index dafa97244d..02ff9bc359 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -113,3 +113,17 @@ AC_CACHE_CHECK(whether $LD is GNU ld, libc_cv_prog_ld_gnu, [LIBC_PROG_FOO_GNU($LD, libc_cv_prog_ld_gnu=yes, libc_cv_prog_ld_gnu=no)]) gnu_ld=$libc_cv_prog_ld_gnu ]) + +dnl Run a static link test with -nostdlib -nostartfiles. +dnl LIBC_TRY_LINK_STATIC([code], [action-if-true], [action-if-false]) +AC_DEFUN([LIBC_TRY_LINK_STATIC], +[cat > conftest.c <&AS_MESSAGE_LOG_FD])], + [$2], [$3]) +rm -f conftest*]) diff --git a/configure b/configure index 7c5acce6bc..f415389a34 100755 --- a/configure +++ b/configure @@ -5999,17 +5999,19 @@ else cat > conftest.c <&5 (eval $ac_try) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } -then + test $ac_status = 0; }; }; then : if $READELF -S conftest | fgrep INIT_ARRAY > /dev/null; then libc_cv_initfini_array=yes else @@ -6019,6 +6021,7 @@ else libc_cv_initfini_array=no fi rm -f conftest* + fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_initfini_array" >&5 $as_echo "$libc_cv_initfini_array" >&6; } @@ -6032,21 +6035,22 @@ if ${libc_cv_ctors_header+:} false; then : $as_echo_n "(cached) " >&6 else libc_cv_ctors_header=yes - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ + cat > conftest.c <&5 + (eval $ac_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : if $READELF -WS conftest$ac_exeext | $AWK ' { gsub(/\[ */, "[") } $2 == ".ctors" || $2 == ".dtors" { @@ -6068,8 +6072,7 @@ else as_fn_error $? "missing __attribute__ ((constructor)) support??" "$LINENO" 5 fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_ctors_header" >&5 diff --git a/configure.in b/configure.in index 7ebeba4df8..ee9e3d8eb4 100644 --- a/configure.in +++ b/configure.in @@ -1349,24 +1349,17 @@ fi AC_CACHE_CHECK(for .preinit_array/.init_array/.fini_array support, libc_cv_initfini_array, [dnl -cat > conftest.c <&AS_MESSAGE_LOG_FD]) -then - if $READELF -S conftest | fgrep INIT_ARRAY > /dev/null; then +], + [if $READELF -S conftest | fgrep INIT_ARRAY > /dev/null; then libc_cv_initfini_array=yes else libc_cv_initfini_array=no - fi -else - libc_cv_initfini_array=no -fi -rm -f conftest*]) + fi], + [libc_cv_initfini_array=no]) +]) if test $libc_cv_initfini_array != yes; then AC_MSG_ERROR([Need linker with .init_array/.fini_array support.]) fi @@ -1374,9 +1367,9 @@ fi AC_CACHE_CHECK(whether to use .ctors/.dtors header and trailer, libc_cv_ctors_header, [dnl libc_cv_ctors_header=yes - AC_TRY_LINK([], [ -__attribute__ ((constructor)) void ctor (void) { puts("ctor"); } -__attribute__ ((destructor)) void dtor (void) { puts("dtor"); } + LIBC_TRY_LINK_STATIC([ +__attribute__ ((constructor)) void ctor (void) { asm (""); } +__attribute__ ((destructor)) void dtor (void) { asm (""); } ], [dnl AS_IF([$READELF -WS conftest$ac_exeext | $AWK ' -- cgit 1.4.1 From a7a93d5086103f52367d3e9776976eb0b0bc6c7b Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Thu, 8 Mar 2012 01:27:38 +0000 Subject: Clean up glibc manual references to "GNU system" (bug 6911). --- ChangeLog | 44 ++++++++++++++++++++++++++++++++++++++++++++ INSTALL | 13 +++++++------ manual/charset.texi | 8 ++++---- manual/conf.texi | 4 ++-- manual/errno.texi | 35 ++++++++++++++++++----------------- manual/filesys.texi | 29 +++++++++++++++-------------- manual/install.texi | 13 +++++++------ manual/intro.texi | 2 +- manual/io.texi | 18 +++++++++--------- manual/job.texi | 2 +- manual/llio.texi | 42 ++++++++++++++++++++++-------------------- manual/macros.texi | 30 ++++++++++++++++++++++++++++++ manual/maint.texi | 2 +- manual/memory.texi | 6 +++--- manual/pattern.texi | 2 +- manual/pipe.texi | 4 ++-- manual/process.texi | 8 ++++---- manual/resource.texi | 3 --- manual/setjmp.texi | 2 +- manual/signal.texi | 20 ++++++++++---------- manual/startup.texi | 4 ++-- manual/stdio.texi | 18 +++++++++--------- manual/terminal.texi | 51 +++++++++++++++++++++++++++++---------------------- manual/time.texi | 12 ++++++------ manual/users.texi | 26 +++++++++++++------------- sysdeps/gnu/errlist.c | 20 ++++++++++---------- 26 files changed, 251 insertions(+), 167 deletions(-) diff --git a/ChangeLog b/ChangeLog index 80e2040204..9b1fe0ca51 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,49 @@ 2012-03-08 Joseph Myers + [BZ #6911] + * manual/macros.texi (gnusystems): New macro. + (nongnusystems): Likewise. + (gnulinuxhurdsystems): Likewise. + (gnuhurdsystems): Likewise.. + (gnulinuxsystems): Likewise. + * manual/charset.texi: Use new macros or @theglibc{} to refer to + variants of the GNU system, not "GNU system". + * manual/conf.texi: Likewise. + * manual/errno.texi: Likewise. Update example of errno macro + expansion. + * manual/filesys.texi: Likewise. + (getumask): Document as specific to GNU/Hurd. + * manual/install.texi: Likewise. Reword some references to + GNU/Linux. + * manual/intro.texi: Likewise. + * manual/io.texi: Likewise. + (File Name Portability): Detail which constraints are inapplicable + to all GNU systems and which are only inapplicable to GNU/Hurd. + * manual/job.texi: Likewise. + * manual/llio.texi: Likewise. + (O_NOCTTY): Document as present on GNU/Linux. + * manual/maint.texi: Likewise. + * manual/memory.texi: Likewise. + * manual/pattern.texi: Likewise. + * manual/pipe.texi: Likewise. + * manual/process.texi: Likewise. + * manual/resource.texi: Likewise. + (RUSAGE_CHILDREN): Remove statement about specifying a particular + child on GNU/Hurd. + * manual/setjmp.texi: Likewise. + * manual/signal.texi: Likewise. + * manual/startup.texi: Likewise. + * manual/stdio.texi: Likewise. + * manual/terminal.texi: Likewise. + (ONLCR): Document as POSIX. + (OXTABS): Document availability on GNU/Linux as XTABS. + (ONOEOT): Document availability separately from other bits. + (VLNEXT, VDISCARD, VSTATUS): Document availability individually. + * manual/time.texi: Likewise. + * manual/users.texi: Likewise. + * INSTALL: Regenerated. + * sysdeps/gnu/errlist.c: Regenerated. + * aclocal.m4 (LIBC_TRY_LINK_STATIC): New macro. * configure.in (libc_cv_preinit_array): Use LIBC_TRY_LINK_STATIC. (libc_cv_ctors_header): Likewise. Use asm ("") instead of calling diff --git a/INSTALL b/INSTALL index 737a44d462..e0433d459b 100644 --- a/INSTALL +++ b/INSTALL @@ -339,7 +339,7 @@ patches, although we try to avoid this. Specific advice for GNU/Linux systems ===================================== -If you are installing the GNU C Library on a GNU/Linux system, you need +If you are installing the GNU C Library on GNU/Linux systems, you need to have the header files from a 2.6.19.1 or newer kernel around for reference. These headers must be installed using `make headers_install'; the headers present in the kernel source directory @@ -370,11 +370,12 @@ required if not compiling programs using those interfaces. You do not need to copy kernel headers if you did not specify an alternate kernel header source using `--with-headers'. - GNU/Linux expects some components of the GNU C Library installation -to be in `/lib' and some in `/usr/lib'. This is handled automatically -if you configure the GNU C Library with `--prefix=/usr'. If you set -some other prefix or allow it to default to `/usr/local', then all the -components are installed there. + The Filesystem Hierarchy Standard for GNU/Linux systems expects some +components of the GNU C Library installation to be in `/lib' and some +in `/usr/lib'. This is handled automatically if you configure the GNU +C Library with `--prefix=/usr'. If you set some other prefix or allow +it to default to `/usr/local', then all the components are installed +there. You cannot use `nscd' with 2.0 kernels, due to bugs in the kernel-side thread support. `nscd' happens to hit these bugs diff --git a/manual/charset.texi b/manual/charset.texi index 610db90858..97fb2bed2d 100644 --- a/manual/charset.texi +++ b/manual/charset.texi @@ -112,7 +112,7 @@ this type is capable of storing all elements of the basic character set. Therefore it would be legitimate to define @code{wchar_t} as @code{char}, which might make sense for embedded systems. -But for GNU systems @code{wchar_t} is always 32 bits wide and, therefore, +But in @theglibc{} @code{wchar_t} is always 32 bits wide and, therefore, capable of representing all UCS-4 values and, therefore, covering all of @w{ISO 10646}. Some Unix systems define @code{wchar_t} as a 16-bit type and thereby follow Unicode very strictly. This definition is perfectly @@ -393,7 +393,7 @@ We already said above that the currently selected locale for the by the functions we are about to describe. Each locale uses its own character set (given as an argument to @code{localedef}) and this is the one assumed as the external multibyte encoding. The wide character -set is always UCS-4, at least on GNU systems. +set is always UCS-4 in @theglibc{}. A characteristic of each multibyte character set is the maximum number of bytes that can be necessary to represent one character. This @@ -537,8 +537,8 @@ Code using @code{mbsinit} often looks similar to this: The code to emit the escape sequence to get back to the initial state is interesting. The @code{wcsrtombs} function can be used to determine the -necessary output code (@pxref{Converting Strings}). Please note that on -GNU systems it is not necessary to perform this extra action for the +necessary output code (@pxref{Converting Strings}). Please note that with +@theglibc{} it is not necessary to perform this extra action for the conversion from multibyte text to wide character text since the wide character encoding is not stateful. But there is nothing mentioned in any standard that prohibits making @code{wchar_t} using a stateful diff --git a/manual/conf.texi b/manual/conf.texi index bc5b9282a7..2cd41f6c73 100644 --- a/manual/conf.texi +++ b/manual/conf.texi @@ -1185,7 +1185,7 @@ represents the maximum length of a file name string. It is defined in Unlike @code{PATH_MAX}, this macro is defined even if there is no actual limit imposed. In such a case, its value is typically a very large -number. @strong{This is always the case on the GNU system.} +number. @strong{This is always the case on @gnuhurdsystems{}.} @strong{Usage Note:} Don't use @code{FILENAME_MAX} as the size of an array in which to store a file name! You can't possibly make an array @@ -1252,7 +1252,7 @@ particular file, call @code{pathconf} or @code{fpathconf}. Here are the names for the POSIX minimum upper bounds for some of the above parameters. The significance of these values is that you can safely push to these limits without checking whether the particular -system you are using can go that far. In most cases GNU systems do not +system you are using can go that far. In most cases @gnusystems{} do not have these strict limitations. The actual limit should be requested if necessary. diff --git a/manual/errno.texi b/manual/errno.texi index f155db749f..fa88b1e8a1 100644 --- a/manual/errno.texi +++ b/manual/errno.texi @@ -66,8 +66,9 @@ function returns an error. @strong{Portability Note:} @w{ISO C} specifies @code{errno} as a ``modifiable lvalue'' rather than as a variable, permitting it to be implemented as a macro. For example, its expansion might involve a -function call, like @w{@code{*_errno ()}}. In fact, that is what it is -on the GNU system itself. @Theglibc{}, on non-GNU systems, does +function call, like @w{@code{*__errno_location ()}}. In fact, that is +what it is +on @gnulinuxhurdsystems{}. @Theglibc{}, on each system, does whatever is right for the particular system. There are a few library functions, like @code{sqrt} and @code{atan}, @@ -96,10 +97,10 @@ codes of their own for other situations. The only values that are guaranteed to be meaningful for a particular library function are the ones that this manual lists for that function. -On non-GNU systems, almost any system call can return @code{EFAULT} if +Except on @gnuhurdsystems{}, almost any system call can return @code{EFAULT} if it is given an invalid pointer as an argument. Since this could only happen as a result of a bug in your program, and since it will not -happen on the GNU system, we have saved space by not mentioning +happen on @gnuhurdsystems{}, we have saved space by not mentioning @code{EFAULT} in the descriptions of individual functions. In some Unix systems, many system calls can also return @code{EFAULT} if @@ -114,7 +115,7 @@ allocated memory instead of stack memory on that system. @pindex errno.h The error code macros are defined in the header file @file{errno.h}. All of them expand into integer constant values. Some of these error -codes can't occur on the GNU system, but they can occur using @theglibc{} +codes can't occur on @gnusystems{}, but they can occur using @theglibc{} on other systems. @comment errno.h @@ -178,8 +179,8 @@ computer. @comment errno 7 @c DO NOT REMOVE Argument list too long; used when the arguments passed to a new program being executed with one of the @code{exec} functions (@pxref{Executing a -File}) occupy too much memory space. This condition never arises in the -GNU system. +File}) occupy too much memory space. This condition never arises on +@gnuhurdsystems{}. @end deftypevr @comment errno.h @@ -238,7 +239,7 @@ Permission denied; the file permissions do not allow the attempted operation. @deftypevr Macro int EFAULT @comment errno 14 @c DO NOT REMOVE Bad address; an invalid pointer was detected. -In the GNU system, this error never happens; you get a signal instead. +On @gnuhurdsystems{}, this error never happens; you get a signal instead. @end deftypevr @comment errno.h @@ -326,7 +327,7 @@ want to increase the @code{RLIMIT_NOFILE} limit or make it unlimited; @comment errno 23 @c DO NOT REMOVE There are too many distinct file openings in the entire system. Note that any number of linked channels count as just one file opening; see -@ref{Linked Channels}. This error never occurs in the GNU system. +@ref{Linked Channels}. This error never occurs on @gnuhurdsystems{}. @end deftypevr @comment errno.h @@ -345,7 +346,7 @@ An attempt to execute a file that is currently open for writing, or write to a file that is currently being executed. Often using a debugger to run a program is considered having it open for writing and will cause this error. (The name stands for ``text file busy''.) This -is not an error in the GNU system; the text is copied as necessary. +is not an error on @gnuhurdsystems{}; the text is copied as necessary. @end deftypevr @comment errno.h @@ -533,7 +534,7 @@ The socket type is not supported. @comment errno 45 @c DO NOT REMOVE The operation you requested is not supported. Some socket functions don't make sense for all types of sockets, and others may not be -implemented for all communications protocols. In the GNU system, this +implemented for all communications protocols. On @gnuhurdsystems{}, this error can happen for many calls when the object does not support the particular operation; it is a generic indication that the server knows nothing to do for that call. @@ -754,7 +755,7 @@ the NFS file system on the local host. An attempt was made to NFS-mount a remote file system with a file name that already specifies an NFS-mounted file. (This is an error on some operating systems, but we expect it to work -properly on the GNU system, making this error code impossible.) +properly on @gnuhurdsystems{}, making this error code impossible.) @end deftypevr @comment errno.h @@ -797,7 +798,7 @@ properly on the GNU system, making this error code impossible.) @deftypevr Macro int ENOLCK @comment errno 77 @c DO NOT REMOVE No locks available. This is used by the file locking facilities; see -@ref{File Locks}. This error is never generated by the GNU system, but +@ref{File Locks}. This error is never generated by @gnuhurdsystems{}, but it can result from an operation to an NFS server running another operating system. @end deftypevr @@ -868,7 +869,7 @@ or an incomplete sequence of bytes or the given wide character is invalid. @comment GNU: Inappropriate operation for background process @deftypevr Macro int EBACKGROUND @comment errno 100 @c DO NOT REMOVE -In the GNU system, servers supporting the @code{term} protocol return +On @gnuhurdsystems{}, servers supporting the @code{term} protocol return this error for certain operations when the caller is not in the foreground process group of the terminal. Users do not usually see this error because functions such as @code{read} and @code{write} translate @@ -880,7 +881,7 @@ for information on process groups and these signals. @comment GNU: Translator died @deftypevr Macro int EDIED @comment errno 101 @c DO NOT REMOVE -In the GNU system, opening a file returns this error when the file is +On @gnuhurdsystems{}, opening a file returns this error when the file is translated by a program and the translator program dies while starting up, before it has connected to the file. @end deftypevr @@ -1346,8 +1347,8 @@ The function @code{perror} is declared in @file{stdio.h}. @end deftypefun @code{strerror} and @code{perror} produce the exact same message for any -given error code; the precise text varies from system to system. On the -GNU system, the messages are fairly short; there are no multi-line +given error code; the precise text varies from system to system. With +@theglibc{}, the messages are fairly short; there are no multi-line messages or embedded newlines. Each error message begins with a capital letter and does not include any terminating punctuation. diff --git a/manual/filesys.texi b/manual/filesys.texi index 872e3710a0..dc570df181 100644 --- a/manual/filesys.texi +++ b/manual/filesys.texi @@ -121,8 +121,8 @@ the buffer. @Theglibc{} provides @code{getwd} only for backwards compatibility with BSD. The @var{buffer} argument should be a pointer to an array at least -@code{PATH_MAX} bytes long (@pxref{Limits for Files}). In the GNU -system there is no limit to the size of a file name, so this is not +@code{PATH_MAX} bytes long (@pxref{Limits for Files}). On @gnuhurdsystems{} +there is no limit to the size of a file name, so this is not necessarily enough space to contain the directory name. That is why this function is deprecated. @end deftypefn @@ -242,7 +242,7 @@ field you can count on in all POSIX systems. @item ino_t d_fileno This is the file serial number. For BSD compatibility, you can also -refer to this member as @code{d_ino}. In the GNU system and most POSIX +refer to this member as @code{d_ino}. On @gnulinuxhurdsystems{} and most POSIX systems, for most files this the same as the @code{st_ino} member that @code{stat} will return for the file. @xref{File Attributes}. @@ -354,7 +354,7 @@ The process has too many files open. @item ENFILE The entire system, or perhaps the file system which contains the directory, cannot support any additional open files at the moment. -(This problem cannot happen on the GNU system.) +(This problem cannot happen on @gnuhurdsystems{}.) @item ENOMEM Not enough memory available. @@ -1075,7 +1075,8 @@ The directory or file system that would contain the new link is full and cannot be extended. @item EPERM -In the GNU system and some others, you cannot make links to directories. +On @gnulinuxhurdsystems{} and some others, you cannot make links to +directories. Many systems allow only privileged users to do so. This error is used to report the problem. @@ -1099,7 +1100,7 @@ A hardware error occurred while trying to read or write the to filesystem. @cindex symbolic link @cindex link, symbolic -The GNU system supports @dfn{soft links} or @dfn{symbolic links}. This +@gnusystems{} support @dfn{soft links} or @dfn{symbolic links}. This is a kind of ``file'' that is essentially a pointer to another file name. Unlike hard links, symbolic links can be made to directories or across file systems with no restrictions. You can also make a symbolic @@ -1352,8 +1353,8 @@ The file name to be deleted doesn't exist. @item EPERM On some systems @code{unlink} cannot be used to delete the name of a directory, or at least can only be used this way by a privileged user. -To avoid such problems, use @code{rmdir} to delete directories. (In the -GNU system @code{unlink} can never delete the name of a directory.) +To avoid such problems, use @code{rmdir} to delete directories. (On +@gnulinuxhurdsystems{} @code{unlink} can never delete the name of a directory.) @item EROFS The directory containing the file name to be deleted is on a read-only @@ -1381,7 +1382,7 @@ The directory to be deleted is not empty. @end table These two error codes are synonymous; some systems use one, and some use -the other. The GNU system always uses @code{ENOTEMPTY}. +the other. @gnulinuxhurdsystems{} always use @code{ENOTEMPTY}. The prototype for this function is declared in the header file @file{unistd.h}. @@ -1458,7 +1459,7 @@ that are the current working directories of processes. @item ENOTEMPTY @itemx EEXIST -The directory @var{newname} isn't empty. The GNU system always returns +The directory @var{newname} isn't empty. @gnulinuxhurdsystems{} always return @code{ENOTEMPTY} for this, but some other systems return @code{EEXIST}. @item EINVAL @@ -2480,16 +2481,16 @@ read_umask (void) @end smallexample @noindent -However, it is better to use @code{getumask} if you just want to read -the mask value, because it is reentrant (at least if you use the GNU -operating system). +However, on @gnuhurdsystems{} it is better to use @code{getumask} if +you just want to read the mask value, because it is reentrant. @end deftypefun @comment sys/stat.h @comment GNU @deftypefun mode_t getumask (void) Return the current value of the file creation mask for the current -process. This function is a GNU extension. +process. This function is a GNU extension and is only available on +@gnuhurdsystems{}. @end deftypefun @comment sys/stat.h diff --git a/manual/install.texi b/manual/install.texi index 03cab71845..00db2b8478 100644 --- a/manual/install.texi +++ b/manual/install.texi @@ -58,8 +58,8 @@ directory, especially some files in the manual subdirectory. mandatory is @samp{--prefix}. This option tells @code{configure} where you want @theglibc{} installed. This defaults to @file{/usr/local}, but the normal setting to install as the standard system library is -@samp{--prefix=/usr} for GNU/Linux systems and @samp{--prefix=} (an -empty prefix) for GNU/Hurd systems. +@samp{--prefix=/usr} for @gnulinuxsystems{} and @samp{--prefix=} (an +empty prefix) for @gnuhurdsystems{}. It may also be useful to set the @var{CC} and @var{CFLAGS} variables in the environment when running @code{configure}. @var{CC} selects the C @@ -104,7 +104,7 @@ relative to the build directory (that is, the current working directory). For example, @samp{--enable-add-ons=nptl,../glibc-libidn-@var{version}}. @item --enable-kernel=@var{version} -This option is currently only useful on GNU/Linux systems. The +This option is currently only useful on @gnulinuxsystems{}. The @var{version} parameter should have the form X.Y.Z and describes the smallest version of the Linux kernel the generated library is expected to support. The higher the @var{version} number is, the less @@ -386,10 +386,10 @@ You may also need these packages if you upgrade your source tree using patches, although we try to avoid this. @node Linux -@appendixsec Specific advice for GNU/Linux systems +@appendixsec Specific advice for @gnulinuxsystems{} @cindex kernel header files -If you are installing @theglibc{} on a GNU/Linux system, you need to have +If you are installing @theglibc{} on @gnulinuxsystems{}, you need to have the header files from a 2.6.19.1 or newer kernel around for reference. These headers must be installed using @samp{make headers_install}; the headers present in the kernel source directory are not suitable for @@ -421,7 +421,8 @@ are not required if not compiling programs using those interfaces. You do not need to copy kernel headers if you did not specify an alternate kernel header source using @samp{--with-headers}. -GNU/Linux expects some components of the @glibcadj{} installation to be in +The Filesystem Hierarchy Standard for @gnulinuxsystems{} expects some +components of the @glibcadj{} installation to be in @file{/lib} and some in @file{/usr/lib}. This is handled automatically if you configure @theglibc{} with @samp{--prefix=/usr}. If you set some other prefix or allow it to default to @file{/usr/local}, then all the diff --git a/manual/intro.texi b/manual/intro.texi index bfe30d76e0..4a709edf72 100644 --- a/manual/intro.texi +++ b/manual/intro.texi @@ -12,7 +12,7 @@ programs. @Theglibc{}, described in this document, defines all of the library functions that are specified by the @w{ISO C} standard, as well as additional features specific to POSIX and other derivatives of the Unix -operating system, and extensions specific to the GNU system. +operating system, and extensions specific to @gnusystems{}. The purpose of this manual is to tell you how to use the facilities of @theglibc{}. We have mentioned which features belong to which diff --git a/manual/io.texi b/manual/io.texi index 0286fa4bf9..bd82f76ee8 100644 --- a/manual/io.texi +++ b/manual/io.texi @@ -121,7 +121,7 @@ and formatted output functions (@pxref{Formatted Output}). If you are concerned about portability of your programs to systems other than GNU, you should also be aware that file descriptors are not as portable as streams. You can expect any system running @w{ISO C} to -support streams, but non-GNU systems may not support file descriptors at +support streams, but @nongnusystems{} may not support file descriptors at all, or may only implement a subset of the GNU functions that operate on file descriptors. Most of the file descriptor functions in @theglibc{} are included in the POSIX.1 standard, however. @@ -131,7 +131,7 @@ are included in the POSIX.1 standard, however. One of the attributes of an open file is its @dfn{file position} that keeps track of where in the file the next character is to be read or -written. In the GNU system, and all POSIX.1 systems, the file position +written. On @gnusystems{}, and all POSIX.1 systems, the file position is simply an integer representing the number of bytes from the beginning of the file. @@ -304,7 +304,7 @@ but the empty string is not a meaningful file name. If you want to refer to the current working directory, use a file name of @file{.} or @file{./}. -Unlike some other operating systems, the GNU system doesn't have any +Unlike some other operating systems, @gnusystems{} don't have any built-in support for file types (or extensions) or file versions as part of its file name syntax. Many programs and utilities use conventions for file names---for example, files containing C source code usually @@ -332,7 +332,7 @@ This error is used when either the total length of a file name is greater than @code{PATH_MAX}, or when an individual file name component has a length greater than @code{NAME_MAX}. @xref{Limits for Files}. -In the GNU system, there is no imposed limit on overall file name +On @gnuhurdsystems{}, there is no imposed limit on overall file name length, but some file systems may place limits on the length of a component. @@ -357,7 +357,7 @@ way to detect loops. @xref{Symbolic Links}. @subsection Portability of File Names The rules for the syntax of file names discussed in @ref{File Names}, -are the rules normally used by the GNU system and by other POSIX +are the rules normally used by @gnusystems{} and by other POSIX systems. However, other operating systems may use other conventions. There are two reasons why it can be important for you to be aware of @@ -389,7 +389,7 @@ some operating systems and not by others. The POSIX.1 standard allows implementations to put additional restrictions on file name syntax, concerning what characters are permitted in file names and on the length of file name and file name -component strings. However, in the GNU system, you do not need to worry -about these restrictions; any character except the null character is -permitted in a file name string, and there are no limits on the length -of file name strings. +component strings. However, on @gnusystems{}, any character except +the null character is permitted in a file name string, and +on @gnuhurdsystems{} there are no limits on the length of file name +strings. diff --git a/manual/job.texi b/manual/job.texi index cd16c6c74e..4efeed3451 100644 --- a/manual/job.texi +++ b/manual/job.texi @@ -106,7 +106,7 @@ controlling terminal, @section Job Control is Optional @cindex job control is optional -Not all operating systems support job control. The GNU system does +Not all operating systems support job control. @gnusystems{} do support job control, but if you are using @theglibc{} on some other system, that system may not support job control itself. diff --git a/manual/llio.texi b/manual/llio.texi index f3ed542724..d75fe71502 100644 --- a/manual/llio.texi +++ b/manual/llio.texi @@ -120,7 +120,7 @@ The maximum number of file descriptors is controlled by the @item ENFILE The entire system, or perhaps the file system which contains the directory, cannot support any additional open files at the moment. -(This problem cannot happen on the GNU system.) +(This problem cannot happen on @gnuhurdsystems{}.) @item ENOENT The named file does not exist, and @code{O_CREAT} is not specified. @@ -341,8 +341,8 @@ file can also fail with @code{EAGAIN} if the kernel cannot find enough physical memory to lock down the user's pages. This is limited to devices that transfer with direct memory access into the user's memory, which means it does not include terminals, since they always use -separate buffers inside the kernel. This problem never happens in the -GNU system. +separate buffers inside the kernel. This problem never happens on +@gnuhurdsystems{}. Any condition that could result in @code{EAGAIN} can instead result in a successful @code{read} which returns fewer bytes than requested. @@ -492,8 +492,8 @@ file can also fail with @code{EAGAIN} if the kernel cannot find enough physical memory to lock down the user's pages. This is limited to devices that transfer with direct memory access into the user's memory, which means it does not include terminals, since they always use -separate buffers inside the kernel. This problem does not arise in the -GNU system. +separate buffers inside the kernel. This problem does not arise on +@gnuhurdsystems{}. @item EBADF The @var{filedes} argument is not a valid file descriptor, @@ -687,7 +687,7 @@ file offset is not valid. A file offset is invalid. @item ESPIPE The @var{filedes} corresponds to an object that cannot be positioned, such as a pipe, FIFO or terminal device. (POSIX.1 specifies this error -only for pipes and FIFOs, but in the GNU system, you always get +only for pipes and FIFOs, but on @gnusystems{}, you always get @code{ESPIPE} if the object is not seekable.) @end table @@ -830,7 +830,7 @@ The @code{fdopen} function returns a new stream for the file descriptor The @var{opentype} argument is interpreted in the same way as for the @code{fopen} function (@pxref{Opening Streams}), except that -the @samp{b} option is not permitted; this is because GNU makes no +the @samp{b} option is not permitted; this is because @gnusystems{} make no distinction between text and binary files. Also, @code{"w"} and @code{"w+"} do not cause truncation of the file; these have an effect only when opening a file, and in this case the file has already been opened. @@ -2154,7 +2154,7 @@ the moment. The error status for each element of @var{list} must be checked to determine which request failed. Another reason could be that the system wide limit of AIO requests is -exceeded. This cannot be the case for the implementation on GNU systems +exceeded. This cannot be the case for the implementation on @gnusystems{} since no arbitrary limits exist. @item EINVAL The @var{mode} parameter is invalid or @var{nent} is larger than @@ -2895,7 +2895,7 @@ The symbols in this section are defined in the header file @subsection File Access Modes The file access modes allow a file descriptor to be used for reading, -writing, or both. (In the GNU system, they can also allow none of these, +writing, or both. (On @gnuhurdsystems{}, they can also allow none of these, and allow execution of the file as a program.) The access modes are chosen when the file is opened, and never change. @@ -2917,13 +2917,13 @@ Open the file for write access. Open the file for both reading and writing. @end deftypevr -In the GNU system (and not in other systems), @code{O_RDONLY} and +On @gnuhurdsystems{} (and not on other systems), @code{O_RDONLY} and @code{O_WRONLY} are independent bits that can be bitwise-ORed together, and it is valid for either bit to be set or clear. This means that @code{O_RDWR} is the same as @code{O_RDONLY|O_WRONLY}. A file access mode of zero is permissible; it allows no operations that do input or output to the file, but does allow other operations such as -@code{fchmod}. On the GNU system, since ``read-only'' or ``write-only'' +@code{fchmod}. On @gnuhurdsystems{}, since ``read-only'' or ``write-only'' is a misnomer, @file{fcntl.h} defines additional names for the file access modes. These names are preferred when writing GNU-specific code. But most programs will want to be portable to other POSIX.1 systems and @@ -2948,8 +2948,9 @@ Open the file for executing. Only defined on GNU. @end deftypevr To determine the file access mode with @code{fcntl}, you must extract -the access mode bits from the retrieved file status flags. In the GNU -system, you can just test the @code{O_READ} and @code{O_WRITE} bits in +the access mode bits from the retrieved file status flags. On +@gnuhurdsystems{}, +you can just test the @code{O_READ} and @code{O_WRITE} bits in the flags word. But in other POSIX.1 systems, reading and writing access modes are not stored as distinct bit flags. The portable way to extract the file access mode bits is with @code{O_ACCMODE}. @@ -2960,7 +2961,7 @@ extract the file access mode bits is with @code{O_ACCMODE}. This macro stands for a mask that can be bitwise-ANDed with the file status flag value to produce a value representing the file access mode. The mode will be @code{O_RDONLY}, @code{O_WRONLY}, or @code{O_RDWR}. -(In the GNU system it could also be zero, and it never includes the +(On @gnuhurdsystems{} it could also be zero, and it never includes the @code{O_EXEC} bit.) @end deftypevr @@ -3033,15 +3034,16 @@ If the named file is a terminal device, don't make it the controlling terminal for the process. @xref{Job Control}, for information about what it means to be the controlling terminal. -In the GNU system and 4.4 BSD, opening a file never makes it the -controlling terminal and @code{O_NOCTTY} is zero. However, other -systems may use a nonzero value for @code{O_NOCTTY} and set the +On @gnuhurdsystems{} and 4.4 BSD, opening a file never makes it the +controlling terminal and @code{O_NOCTTY} is zero. However, @gnulinuxsystems{} +and some other systems use a nonzero value for @code{O_NOCTTY} and set the controlling terminal when you open a file that is a terminal device; so to be portable, use @code{O_NOCTTY} when it is important to avoid this. @cindex controlling terminal, setting @end deftypevr -The following three file name translation flags exist only in the GNU system. +The following three file name translation flags exist only on +@gnuhurdsystems{}. @comment fcntl.h @comment GNU @@ -3417,7 +3419,7 @@ function: The lock cannot be set because it is blocked by an existing lock on the file. Some systems use @code{EAGAIN} in this case, and other systems use @code{EACCES}; your program should treat them alike, after -@code{F_SETLK}. (The GNU system always uses @code{EAGAIN}.) +@code{F_SETLK}. (@gnulinuxhurdsystems{} always use @code{EAGAIN}.) @item EBADF Either: the @var{filedes} argument is invalid; you requested a read lock @@ -3594,7 +3596,7 @@ There is no process or process group corresponding to @var{pid}. @cindex generic i/o control operations @cindex IOCTLs -The GNU system can handle most input/output operations on many different +@gnusystems{} can handle most input/output operations on many different devices and objects in terms of a few file primitives - @code{read}, @code{write} and @code{lseek}. However, most devices also have a few peculiar operations which do not fit into this model. Such as: diff --git a/manual/macros.texi b/manual/macros.texi index c9b73d3c56..daaf1c0aad 100644 --- a/manual/macros.texi +++ b/manual/macros.texi @@ -17,4 +17,34 @@ the GNU C Library GNU C Library @end macro +@c Description applying to all GNU systems; that is, used in +@c describing a property of a system such that no system without that +@c property would be considered a variant of the GNU system. +@macro gnusystems +GNU systems +@end macro + +@c Systems that are not GNU systems. +@macro nongnusystems +non-GNU systems +@end macro + +@c Description applying to GNU/Linux and GNU/Hurd systems, but not +@c necessarily to other variants of the GNU system. +@macro gnulinuxhurdsystems +GNU/Linux and GNU/Hurd systems +@end macro + +@c Descrption applying to GNU/Hurd systems; that is, systems using the +@c GNU Hurd with the GNU C Library. +@macro gnuhurdsystems +GNU/Hurd systems +@end macro + +@c Descrption applying to GNU/Linux systems; that is, systems using +@c the Linux kernel with the GNU C Library. +@macro gnulinuxsystems +GNU/Linux systems +@end macro + @end ifclear diff --git a/manual/maint.texi b/manual/maint.texi index 0c2ed5923e..e1fdbdbd2c 100644 --- a/manual/maint.texi +++ b/manual/maint.texi @@ -399,7 +399,7 @@ This directory is for @code{socket} and related functions on Unix systems. @item mach This is the directory for things based on the Mach microkernel from CMU -(including the GNU operating system). Other basic operating systems +(including @gnuhurdsystems{}). Other basic operating systems (VMS, for example) would have their own directories at the top level of the @file{sysdeps} hierarchy, parallel to @file{unix} and @file{mach}. @end table diff --git a/manual/memory.texi b/manual/memory.texi index ce32af066b..35fed23c7f 100644 --- a/manual/memory.texi +++ b/manual/memory.texi @@ -379,7 +379,7 @@ savestring (const char *ptr, size_t len) @end smallexample The block that @code{malloc} gives you is guaranteed to be aligned so -that it can hold any type of data. In the GNU system, the address is +that it can hold any type of data. On @gnusystems{}, the address is always a multiple of eight on most systems, and a multiple of 16 on 64-bit systems. Only rarely is any higher boundary (such as a page boundary) necessary; for those cases, use @code{memalign}, @@ -614,7 +614,7 @@ after calling @code{free} wastes memory. The size threshold for @cindex alignment (with @code{malloc}) @pindex stdlib.h The address of a block returned by @code{malloc} or @code{realloc} in -the GNU system is always a multiple of eight (or sixteen on 64-bit +@gnusystems{} is always a multiple of eight (or sixteen on 64-bit systems). If you need a block whose address is a multiple of a higher power of two than that, use @code{memalign}, @code{posix_memalign}, or @code{valloc}. @code{memalign} is declared in @file{malloc.h} and @@ -2295,7 +2295,7 @@ the one you would get from an infinite recursion; probably a segmentation violation (@pxref{Program Error Signals}). @item -Some non-GNU systems fail to support @code{alloca}, so it is less +Some @nongnusystems{} fail to support @code{alloca}, so it is less portable. However, a slower emulation of @code{alloca} written in C is available for use on systems with this deficiency. @end itemize diff --git a/manual/pattern.texi b/manual/pattern.texi index 48eba75cd4..28b1d74b9f 100644 --- a/manual/pattern.texi +++ b/manual/pattern.texi @@ -670,7 +670,7 @@ type @code{glob64_t} which were allocated by @code{glob64}. @Theglibc{} supports two interfaces for matching regular expressions. One is the standard POSIX.2 interface, and the other is -what the GNU system has had for many years. +what @theglibc{} has had for many years. Both interfaces are declared in the header file @file{regex.h}. If you define @w{@code{_POSIX_C_SOURCE}}, then only the POSIX.2 diff --git a/manual/pipe.texi b/manual/pipe.texi index 67e446f2d1..21a8a34978 100644 --- a/manual/pipe.texi +++ b/manual/pipe.texi @@ -74,8 +74,8 @@ The process has too many files open. @item ENFILE There are too many open files in the entire system. @xref{Error Codes}, -for more information about @code{ENFILE}. This error never occurs in -the GNU system. +for more information about @code{ENFILE}. This error never occurs on +@gnuhurdsystems{}. @end table @end deftypefun diff --git a/manual/process.texi b/manual/process.texi index 45d3ed45b9..e962941503 100644 --- a/manual/process.texi +++ b/manual/process.texi @@ -350,8 +350,8 @@ file name searching as the @code{execvp} function. @end deftypefun The size of the argument list and environment list taken together must -not be greater than @code{ARG_MAX} bytes. @xref{General Limits}. In -the GNU system, the size (which compares against @code{ARG_MAX}) +not be greater than @code{ARG_MAX} bytes. @xref{General Limits}. On +@gnuhurdsystems{}, the size (which compares against @code{ARG_MAX}) includes, for each string, the number of characters in the string, plus the size of a @code{char *}, plus one, rounded up to a multiple of the size of a @code{char *}. Other systems may have somewhat different @@ -366,7 +366,7 @@ usual file name errors (@pxref{File Name Errors}), the following @table @code @item E2BIG The combined size of the new program's argument list and environment -list is larger than @code{ARG_MAX} bytes. The GNU system has no +list is larger than @code{ARG_MAX} bytes. @gnuhurdsystems{} have no specific limit on the argument list size, so this error code cannot result, but you may get @code{ENOMEM} instead if the arguments are too big for available memory. @@ -406,7 +406,7 @@ Pending alarms. @xref{Setting an Alarm}. @item Current working directory and root directory. @xref{Working -Directory}. In the GNU system, the root directory is not copied when +Directory}. On @gnuhurdsystems{}, the root directory is not copied when executing a setuid program; instead the system default root directory is used for the new program. diff --git a/manual/resource.texi b/manual/resource.texi index 1e2fcaf958..cb25d2440c 100644 --- a/manual/resource.texi +++ b/manual/resource.texi @@ -42,9 +42,6 @@ Just the current process. All child processes (direct and indirect) that have already terminated. @end table -In the GNU system, you can also inquire about a particular child process -by specifying its process ID. - The return value of @code{getrusage} is zero for success, and @code{-1} for failure. diff --git a/manual/setjmp.texi b/manual/setjmp.texi index cc76352553..b0cd91ad1d 100644 --- a/manual/setjmp.texi +++ b/manual/setjmp.texi @@ -182,7 +182,7 @@ behavior. The behavior of @code{setjmp} and @code{longjmp} in @theglibc{} is controlled by feature test macros; see @ref{Feature Test Macros}. The -default in the GNU system is the POSIX.1 behavior rather than the BSD +default in @theglibc{} is the POSIX.1 behavior rather than the BSD behavior. The facilities in this section are declared in the header file diff --git a/manual/signal.texi b/manual/signal.texi index 9d5e26ce3d..18db3d2266 100644 --- a/manual/signal.texi +++ b/manual/signal.texi @@ -274,7 +274,7 @@ When one of these program error signals terminates a process, it also writes a @dfn{core dump file} which records the state of the process at the time of termination. The core dump file is named @file{core} and is written in whichever directory is current in the process at the time. -(On the GNU system, you can specify the file name for core dumps with +(On @gnuhurdsystems{}, you can specify the file name for core dumps with the environment variable @code{COREFILE}.) The purpose of core dump files is so that you can examine them with a debugger to investigate what caused the error. @@ -309,7 +309,7 @@ this argument, you must define the handler to accept two arguments, which means you must cast it to a one-argument function type in order to establish the handler. @Theglibc{} does provide this extra argument, but the value is meaningful only on operating systems that -provide the information (BSD systems and GNU systems). +provide the information (BSD systems and @gnusystems{}). @table @code @comment signal.h @@ -625,7 +625,7 @@ On most operating systems, terminals and sockets are the only kinds of files that can generate @code{SIGIO}; other kinds, including ordinary files, never generate @code{SIGIO} even if you ask them to. -In the GNU system @code{SIGIO} will always be generated properly +On @gnusystems{} @code{SIGIO} will always be generated properly if you successfully set asynchronous mode with @code{fcntl}. @end deftypevr @@ -759,14 +759,14 @@ process would probably not be very useful, since there is no shell program that will notice it stop and allow the user to continue it. What happens instead depends on the operating system you are using. Some systems may do nothing; others may deliver another signal instead, -such as @code{SIGKILL} or @code{SIGHUP}. In the GNU system, the process +such as @code{SIGKILL} or @code{SIGHUP}. On @gnuhurdsystems{}, the process dies with @code{SIGKILL}; this avoids the problem of many stopped, orphaned processes lying around the system. @ignore -On the GNU system, it is possible to reattach to the orphaned process +On @gnuhurdsystems{}, it is possible to reattach to the orphaned process group and continue it, so stop signals do stop the process as usual on -a GNU system unless you have requested POSIX compatibility ``till it +@gnuhurdsystems{} unless you have requested POSIX compatibility ``till it hurts.'' @end ignore @@ -805,7 +805,7 @@ that isn't connected. @xref{Sending Data}. Resource lost. This signal is generated when you have an advisory lock on an NFS file, and the NFS server reboots and forgets about your lock. -In the GNU system, @code{SIGLOST} is generated when any server program +On @gnuhurdsystems{}, @code{SIGLOST} is generated when any server program dies unexpectedly. It is usually fine to ignore the signal; whatever call was made to the server that died just returns an error. @end deftypevr @@ -864,7 +864,7 @@ reformat its display accordingly. @comment signal.h @comment BSD @deftypevr Macro int SIGINFO -Information request. In 4.4 BSD and the GNU system, this signal is sent +Information request. On 4.4 BSD and @gnuhurdsystems{}, this signal is sent to all the processes in the foreground process group of the controlling terminal when the user types the STATUS character in canonical mode; @pxref{Signal Characters}. @@ -1223,7 +1223,7 @@ examine it with @code{sigaction}, the handler address that you get may not be the same as what you specified with @code{signal}. It may not even be suitable for use as an action argument with @code{signal}. But you can rely on using it as an argument to @code{sigaction}. This -problem never happens on the GNU system. +problem never happens on @gnusystems{}. So, you're better off using one or the other of the mechanisms consistently within a single program. @@ -1894,7 +1894,7 @@ could ``lose'' one of the objects. @ignore !!! not true -On the GNU system, @code{malloc} and @code{free} are safe to use in +In @theglibc{}, @code{malloc} and @code{free} are safe to use in signal handlers because they block signals. As a result, the library functions that allocate space for a result are also safe in signal handlers. The obstack allocation functions are safe as long as you diff --git a/manual/startup.texi b/manual/startup.texi index caf8156a95..93dca303ca 100644 --- a/manual/startup.texi +++ b/manual/startup.texi @@ -169,7 +169,7 @@ To specify an argument for a long option, write @samp{--@var{name}=@var{value}}. This syntax enables a long option to accept an argument that is itself optional. -Eventually, the GNU system will provide completion for long option names +Eventually, @gnusystems{} will provide completion for long option names in the shell. @node Parsing Program Arguments, , Argument Syntax, Program Arguments @@ -423,7 +423,7 @@ If you just want to get the value of an environment variable, use @code{getenv}. @end deftypevar -Unix systems, and the GNU system, pass the initial value of +Unix systems, and @gnusystems{}, pass the initial value of @code{environ} as the third argument to @code{main}. @xref{Program Arguments}. diff --git a/manual/stdio.texi b/manual/stdio.texi index dd4d064c4b..0d23daae2c 100644 --- a/manual/stdio.texi +++ b/manual/stdio.texi @@ -110,7 +110,7 @@ diagnostics issued by the program. @end deftypevar @cindex standard error stream -In the GNU system, you can specify what files or processes correspond to +On @gnusystems{}, you can specify what files or processes correspond to these streams using the pipe and redirection facilities provided by the shell. (The primitives shells use to implement these facilities are described in @ref{File System Interface}.) Most other operating systems @@ -206,7 +206,7 @@ Closing Files}). The character @samp{b} in @var{opentype} has a standard meaning; it requests a binary stream rather than a text stream. But this makes no -difference in POSIX systems (including the GNU system). If both +difference in POSIX systems (including @gnusystems{}). If both @samp{+} and @samp{b} are specified, they can appear in either order. @xref{Binary Streams}. @@ -2174,7 +2174,7 @@ The @samp{%p} conversion prints a pointer value. The corresponding argument must be of type @code{void *}. In practice, you can use any type of pointer. -In the GNU system, non-null pointers are printed as unsigned integers, +In @theglibc{}, non-null pointers are printed as unsigned integers, as if a @samp{%#x} conversion were used. Null pointers print as @samp{(nil)}. (Pointers might print differently in other systems.) @@ -4045,7 +4045,7 @@ descriptor is not usually advisable. @node Binary Streams @section Text and Binary Streams -The GNU system and other POSIX-compatible operating systems organize all +@gnusystems{} and other POSIX-compatible operating systems organize all files as uniform sequences of characters. However, some other systems make a distinction between files containing text and files containing binary data, and the input and output facilities of @w{ISO C} provide for @@ -4108,7 +4108,7 @@ restrictions that text streams sometimes have. The @dfn{file position} of a stream describes where in the file the stream is currently reading or writing. I/O on the stream advances the -file position through the file. In the GNU system, the file position is +file position through the file. On @gnusystems{}, the file position is represented as an integer, which counts the number of bytes from the beginning of the file. @xref{File Position}. @@ -4301,7 +4301,7 @@ An alias for @code{SEEK_END}. @node Portable Positioning @section Portable File-Position Functions -On the GNU system, the file position is truly a character count. You +On @gnusystems{}, the file position is truly a character count. You can specify any character count value as an argument to @code{fseek} or @code{fseeko} and get reliable results for any random access file. However, some @w{ISO C} systems do not represent file positions in this @@ -4361,7 +4361,7 @@ This is the type of an object that can encode information about the file position of a stream, for use by the functions @code{fgetpos} and @code{fsetpos}. -In the GNU system, @code{fpos_t} is an opaque data structure that +In @theglibc{}, @code{fpos_t} is an opaque data structure that contains internal data to represent file offset and conversion state information. In other systems, it might have a different internal representation. @@ -4378,7 +4378,7 @@ This is the type of an object that can encode information about the file position of a stream, for use by the functions @code{fgetpos64} and @code{fsetpos64}. -In the GNU system, @code{fpos64_t} is an opaque data structure that +In @theglibc{}, @code{fpos64_t} is an opaque data structure that contains internal data to represent file offset and conversion state information. In other systems, it might have a different internal representation. @@ -4578,7 +4578,7 @@ This function is declared in the @file{stdio_ext.h} header. been known to be so thoroughly fixated on line-oriented input and output that flushing a line buffered stream causes a newline to be written! Fortunately, this ``feature'' seems to be becoming less common. You do -not need to worry about this in the GNU system. +not need to worry about this with @theglibc{}. In some situations it might be useful to not flush the output pending for a stream but instead simply forget it. If transmission is costly diff --git a/manual/terminal.texi b/manual/terminal.texi index c93082dfe1..8321237f60 100644 --- a/manual/terminal.texi +++ b/manual/terminal.texi @@ -319,7 +319,7 @@ This is like @code{TCSADRAIN}, but also discards any queued input. This is a flag bit that you can add to any of the above alternatives. Its meaning is to inhibit alteration of the state of the terminal hardware. It is a BSD extension; it is only supported on BSD systems -and the GNU system. +and @gnuhurdsystems{}. Using @code{TCSASOFT} is exactly the same as setting the @code{CIGNORE} bit in the @code{c_cflag} member of the structure @var{termios-p} points @@ -574,7 +574,8 @@ If this bit is set, any input character restarts output when output has been suspended with the STOP character. Otherwise, only the START character restarts output. -This is a BSD extension; it exists only on BSD systems and the GNU system. +This is a BSD extension; it exists only on BSD systems and +@gnulinuxhurdsystems{}. @end deftypevr @comment termios.h @@ -611,12 +612,10 @@ carriage return and linefeed pairs. If this bit isn't set, the characters are transmitted as-is. @end deftypevr -The following three bits are BSD features, and they exist only BSD -systems and the GNU system. They are effective only if @code{OPOST} is -set. +The following three bits are effective only if @code{OPOST} is set. @comment termios.h -@comment BSD +@comment POSIX.1 @deftypevr Macro tcflag_t ONLCR If this bit is set, convert the newline character on output into a pair of characters, carriage return followed by linefeed. @@ -626,7 +625,9 @@ of characters, carriage return followed by linefeed. @comment BSD @deftypevr Macro tcflag_t OXTABS If this bit is set, convert tab characters on output into the appropriate -number of spaces to emulate a tab stop every eight columns. +number of spaces to emulate a tab stop every eight columns. This bit +exists only on BSD systems and @gnuhurdsystems{}; on +@gnulinuxsystems{} it is available as @code{XTABS}. @end deftypevr @comment termios.h @@ -634,6 +635,7 @@ number of spaces to emulate a tab stop every eight columns. @deftypevr Macro tcflag_t ONOEOT If this bit is set, discard @kbd{C-d} characters (code @code{004}) on output. These characters cause many dial-up terminals to disconnect. +This bit exists only on BSD systems and @gnuhurdsystems{}. @end deftypevr @node Control Modes @@ -747,8 +749,8 @@ This specifies seven bits per byte. This specifies eight bits per byte. @end deftypevr -The following four bits are BSD extensions; this exist only on BSD -systems and the GNU system. +The following four bits are BSD extensions; these exist only on BSD +systems and @gnuhurdsystems{}. @comment termios.h @comment BSD @@ -839,8 +841,8 @@ character erased. Typing the ERASE character again just prints the next character erased. Then, the next time you type a normal character, a @samp{/} character is printed before the character echoes. -This is a BSD extension, and exists only in BSD systems and the -GNU system. +This is a BSD extension, and exists only in BSD systems and +@gnulinuxhurdsystems{}. @end deftypevr @comment termios.h @@ -865,8 +867,8 @@ input, without which @code{ECHOK} is simply irrelevant. @deftypevr Macro tcflag_t ECHOKE This bit is similar to @code{ECHOK}. It enables special display of the KILL character by erasing on the screen the entire line that has been -killed. This is a BSD extension, and exists only in BSD systems and the -GNU system. +killed. This is a BSD extension, and exists only in BSD systems and +@gnulinuxhurdsystems{}. @end deftypevr @comment termios.h @@ -886,8 +888,8 @@ Thus, control-A echoes as @samp{^A}. This is usually the preferred mode for interactive input, because echoing a control character back to the terminal could have some undesired effect on the terminal. -This is a BSD extension, and exists only in BSD systems and the -GNU system. +This is a BSD extension, and exists only in BSD systems and +@gnulinuxhurdsystems{}. @end deftypevr @comment termios.h @@ -914,7 +916,8 @@ signals associated with these characters, or to escape from the program. POSIX.1 gives @code{IEXTEN} implementation-defined meaning, so you cannot rely on this interpretation on all systems. -On BSD systems and the GNU system, it enables the LNEXT and DISCARD characters. +On BSD systems and @gnulinuxhurdsystems{}, it enables the LNEXT and +DISCARD characters. @xref{Other Special}. @end deftypevr @@ -934,8 +937,8 @@ If this bit is set and the system supports job control, then attempt to write to the terminal. @xref{Access to the Terminal}. @end deftypevr -The following bits are BSD extensions; they exist only in BSD systems -and the GNU system. +The following bits are BSD extensions; they exist only on BSD systems +and @gnuhurdsystems{}. @comment termios.h @comment BSD @@ -1245,7 +1248,7 @@ terminate an input line, by setting EOL to one of them and EOL2 to the other. The EOL2 character is a BSD extension; it exists only on BSD systems -and the GNU system. +and @gnulinuxhurdsystems{}. @end deftypevr @comment termios.h @@ -1404,7 +1407,7 @@ The DSUSP (suspend) character is recognized only if the implementation supports job control (@pxref{Job Control}). It sends a @code{SIGTSTP} signal, like the SUSP character, but not right away---only when the program tries to read it as input. Not all systems with job control -support DSUSP; only BSD-compatible systems (including the GNU system). +support DSUSP; only BSD-compatible systems (including @gnuhurdsystems{}). @xref{Signal Handling}, for more information about signals. @@ -1461,8 +1464,6 @@ regardless of what you specify. @node Other Special @subsubsection Other Special Characters -These special characters exist only in BSD systems and the GNU system. - @comment termios.h @comment BSD @deftypevr Macro int VLNEXT @@ -1479,6 +1480,8 @@ signal, it is read as a plain character. This is the analogue of the @kbd{C-q} command in Emacs. ``LNEXT'' stands for ``literal next.'' The LNEXT character is usually @kbd{C-v}. + +This character is available on BSD systems and @gnulinuxhurdsystems{}. @end deftypevr @comment termios.h @@ -1494,6 +1497,8 @@ in both canonical and noncanonical mode. Its effect is to toggle the discard-output flag. When this flag is set, all program output is discarded. Setting the flag also discards all output currently in the output buffer. Typing any other character resets the flag. + +This character is available on BSD systems and @gnulinuxhurdsystems{}. @end deftypevr @comment termios.h @@ -1509,6 +1514,8 @@ the current process is running. The STATUS character is recognized only in canonical mode, and only if @code{NOKERNINFO} is not set. + +This character is available only on BSD systems and @gnuhurdsystems{}. @end deftypevr @node Noncanonical Input diff --git a/manual/time.texi b/manual/time.texi index a2e11a1a9d..a410def3eb 100644 --- a/manual/time.texi +++ b/manual/time.texi @@ -84,7 +84,7 @@ time between calendar time @var{time1} and calendar time @var{time0}, as a value of type @code{double}. The difference ignores leap seconds unless leap second support is enabled. -In the GNU system, you can simply subtract @code{time_t} values. But on +In @theglibc{}, you can simply subtract @code{time_t} values. But on other systems, the @code{time_t} data type might use some other encoding where subtraction doesn't work directly. @end deftypefun @@ -163,7 +163,7 @@ you can get the information with the functions in this section. CPU time (@pxref{Time Basics}) is represented by the data type @code{clock_t}, which is a number of @dfn{clock ticks}. It gives the total amount of time a process has actively used a CPU since some -arbitrary event. On the GNU system, that event is the creation of the +arbitrary event. On @gnusystems{}, that event is the creation of the process. While arbitrary in general, the event is always the same event for any particular process, so you can always measure how much time on the CPU a particular computation takes by examining the process' CPU @@ -172,7 +172,7 @@ time before and after the computation. @cindex clock ticks @cindex ticks, clock -In the GNU system, @code{clock_t} is equivalent to @code{long int} and +On @gnulinuxhurdsystems{}, @code{clock_t} is equivalent to @code{long int} and @code{CLOCKS_PER_SEC} is an integer value. But in other systems, both @code{clock_t} and the macro @code{CLOCKS_PER_SEC} can be either integer or floating-point types. Casting CPU time values to @code{double}, as @@ -319,7 +319,7 @@ indicate failure. @strong{Portability Note:} The @code{clock} function described in @ref{CPU Time} is specified by the @w{ISO C} standard. The -@code{times} function is a feature of POSIX.1. In the GNU system, the +@code{times} function is a feature of POSIX.1. On @gnusystems{}, the CPU time is defined to be equivalent to the sum of the @code{tms_utime} and @code{tms_stime} fields returned by @code{times}. @@ -487,7 +487,7 @@ following @code{errno} error condition is defined for this function: @table @code @item ENOSYS The operating system does not support getting time zone information, and -@var{tzp} is not a null pointer. The GNU operating system does not +@var{tzp} is not a null pointer. @gnusystems{} do not support using @w{@code{struct timezone}} to represent time zone information; that is an obsolete feature of 4.3 BSD. Instead, use the facilities described in @ref{Time Zone Functions}. @@ -2462,7 +2462,7 @@ handler. And, if @code{sleep} is interrupted by delivery of a signal whose handler requests an alarm or alters the handling of @code{SIGALRM}, this handler and @code{sleep} will interfere. -On the GNU system, it is safe to use @code{sleep} and @code{SIGALRM} in +On @gnusystems{}, it is safe to use @code{sleep} and @code{SIGALRM} in the same program, because @code{sleep} does not work by means of @code{SIGALRM}. diff --git a/manual/users.texi b/manual/users.texi index 819d35fcc4..1ee5a0b178 100644 --- a/manual/users.texi +++ b/manual/users.texi @@ -884,7 +884,7 @@ The exit status of the process. @deftp {Data Type} {struct utmp} The @code{utmp} data structure is used to hold information about entries -in the user accounting database. On the GNU system it has the following +in the user accounting database. On @gnusystems{} it has the following members: @table @code @@ -1217,7 +1217,7 @@ database specified by @var{wtmp_file}. For possible values for the subset of these functions, they are not standardized. There are often subtle differences in the return types, and there are considerable differences between the various definitions of @code{struct utmp}. When -programming for the GNU system, it is probably best to stick +programming for @theglibc{}, it is probably best to stick with the functions described in this section. If however, you want your program to be portable, consider using the XPG functions described in @ref{XPG Functions}, or take a look at the BSD compatible functions in @@ -1257,14 +1257,14 @@ Time the entry was made. For entries of type @code{OLD_TIME} this is the time when the system clock changed, and for entries of type @code{NEW_TIME} this is the time the system clock was set to. @end table -On the GNU system, @code{struct utmpx} is identical to @code{struct +In @theglibc{}, @code{struct utmpx} is identical to @code{struct utmp} except for the fact that including @file{utmpx.h} does not make visible the declaration of @code{struct exit_status}. @end deftp The following macros are defined for use as values for the @code{ut_type} member of the @code{utmpx} structure. The values are -integer constants and are, on the GNU system, identical to the +integer constants and are, in @theglibc{}, identical to the definitions in @file{utmp.h}. @table @code @@ -1330,7 +1330,7 @@ can be found using the @code{sizeof} operator. @comment utmpx.h @comment XPG4.2 @deftypefun void setutxent (void) -This function is similar to @code{setutent}. On the GNU system it is +This function is similar to @code{setutent}. In @theglibc{} it is simply an alias for @code{setutent}. @end deftypefun @@ -1338,14 +1338,14 @@ simply an alias for @code{setutent}. @comment XPG4.2 @deftypefun {struct utmpx *} getutxent (void) The @code{getutxent} function is similar to @code{getutent}, but returns -a pointer to a @code{struct utmpx} instead of @code{struct utmp}. On -the GNU system it simply is an alias for @code{getutent}. +a pointer to a @code{struct utmpx} instead of @code{struct utmp}. In +@theglibc{} it simply is an alias for @code{getutent}. @end deftypefun @comment utmpx.h @comment XPG4.2 @deftypefun void endutxent (void) -This function is similar to @code{endutent}. On the GNU system it is +This function is similar to @code{endutent}. In @theglibc{} it is simply an alias for @code{endutent}. @end deftypefun @@ -1353,7 +1353,7 @@ simply an alias for @code{endutent}. @comment XPG4.2 @deftypefun {struct utmpx *} getutxid (const struct utmpx *@var{id}) This function is similar to @code{getutid}, but uses @code{struct utmpx} -instead of @code{struct utmp}. On the GNU system it is simply an alias +instead of @code{struct utmp}. In @theglibc{} it is simply an alias for @code{getutid}. @end deftypefun @@ -1361,7 +1361,7 @@ for @code{getutid}. @comment XPG4.2 @deftypefun {struct utmpx *} getutxline (const struct utmpx *@var{line}) This function is similar to @code{getutid}, but uses @code{struct utmpx} -instead of @code{struct utmp}. On the GNU system it is simply an alias +instead of @code{struct utmp}. In @theglibc{} it is simply an alias for @code{getutline}. @end deftypefun @@ -1370,7 +1370,7 @@ for @code{getutline}. @deftypefun {struct utmpx *} pututxline (const struct utmpx *@var{utmp}) The @code{pututxline} function is functionally identical to @code{pututline}, but uses @code{struct utmpx} instead of @code{struct -utmp}. On the GNU system, @code{pututxline} is simply an alias for +utmp}. In @theglibc{}, @code{pututxline} is simply an alias for @code{pututline}. @end deftypefun @@ -1378,12 +1378,12 @@ utmp}. On the GNU system, @code{pututxline} is simply an alias for @comment XPG4.2 @deftypefun int utmpxname (const char *@var{file}) The @code{utmpxname} function is functionally identical to -@code{utmpname}. On the GNU system, @code{utmpxname} is simply an +@code{utmpname}. In @theglibc{}, @code{utmpxname} is simply an alias for @code{utmpname}. @end deftypefun You can translate between a traditional @code{struct utmp} and an XPG -@code{struct utmpx} with the following functions. On the GNU system, +@code{struct utmpx} with the following functions. In @theglibc{}, these functions are merely copies, since the two structures are identical. diff --git a/sysdeps/gnu/errlist.c b/sysdeps/gnu/errlist.c index 62613ff891..e3d2faf56e 100644 --- a/sysdeps/gnu/errlist.c +++ b/sysdeps/gnu/errlist.c @@ -89,8 +89,8 @@ TRANS computer. */ /* TRANS Argument list too long; used when the arguments passed to a new program TRANS being executed with one of the @code{exec} functions (@pxref{Executing a -TRANS File}) occupy too much memory space. This condition never arises in the -TRANS GNU system. */ +TRANS File}) occupy too much memory space. This condition never arises on +TRANS @gnuhurdsystems{}. */ [ERR_REMAP (E2BIG)] = N_("Argument list too long"), # if E2BIG > ERR_MAX # undef ERR_MAX @@ -163,7 +163,7 @@ TRANS Permission denied; the file permissions do not allow the attempted operati #ifdef EFAULT /* TRANS Bad address; an invalid pointer was detected. -TRANS In the GNU system, this error never happens; you get a signal instead. */ +TRANS On @gnuhurdsystems{}, this error never happens; you get a signal instead. */ [ERR_REMAP (EFAULT)] = N_("Bad address"), # if EFAULT > ERR_MAX # undef ERR_MAX @@ -271,7 +271,7 @@ TRANS @pxref{Limits on Resources}. */ /* TRANS There are too many distinct file openings in the entire system. Note TRANS that any number of linked channels count as just one file opening; see -TRANS @ref{Linked Channels}. This error never occurs in the GNU system. */ +TRANS @ref{Linked Channels}. This error never occurs on @gnuhurdsystems{}. */ [ERR_REMAP (ENFILE)] = N_("Too many open files in system"), # if ENFILE > ERR_MAX # undef ERR_MAX @@ -294,7 +294,7 @@ TRANS An attempt to execute a file that is currently open for writing, or TRANS write to a file that is currently being executed. Often using a TRANS debugger to run a program is considered having it open for writing and TRANS will cause this error. (The name stands for ``text file busy''.) This -TRANS is not an error in the GNU system; the text is copied as necessary. */ +TRANS is not an error on @gnuhurdsystems{}; the text is copied as necessary. */ [ERR_REMAP (ETXTBSY)] = N_("Text file busy"), # if ETXTBSY > ERR_MAX # undef ERR_MAX @@ -520,7 +520,7 @@ TRANS The socket type is not supported. */ /* TRANS The operation you requested is not supported. Some socket functions TRANS don't make sense for all types of sockets, and others may not be -TRANS implemented for all communications protocols. In the GNU system, this +TRANS implemented for all communications protocols. On @gnuhurdsystems{}, this TRANS error can happen for many calls when the object does not support the TRANS particular operation; it is a generic indication that the server knows TRANS nothing to do for that call. */ @@ -795,7 +795,7 @@ TRANS the NFS file system on the local host. */ TRANS An attempt was made to NFS-mount a remote file system with a file name that TRANS already specifies an NFS-mounted file. TRANS (This is an error on some operating systems, but we expect it to work -TRANS properly on the GNU system, making this error code impossible.) */ +TRANS properly on @gnuhurdsystems{}, making this error code impossible.) */ [ERR_REMAP (EREMOTE)] = N_("Object is remote"), # if EREMOTE > ERR_MAX # undef ERR_MAX @@ -850,7 +850,7 @@ TRANS ??? */ #ifdef ENOLCK /* TRANS No locks available. This is used by the file locking facilities; see -TRANS @ref{File Locks}. This error is never generated by the GNU system, but +TRANS @ref{File Locks}. This error is never generated by @gnuhurdsystems{}, but TRANS it can result from an operation to an NFS server running another TRANS operating system. */ [ERR_REMAP (ENOLCK)] = N_("No locks available"), @@ -935,7 +935,7 @@ TRANS or an incomplete sequence of bytes or the given wide character is invalid. #endif #ifdef EBACKGROUND /* -TRANS In the GNU system, servers supporting the @code{term} protocol return +TRANS On @gnuhurdsystems{}, servers supporting the @code{term} protocol return TRANS this error for certain operations when the caller is not in the TRANS foreground process group of the terminal. Users do not usually see this TRANS error because functions such as @code{read} and @code{write} translate @@ -949,7 +949,7 @@ TRANS for information on process groups and these signals. */ #endif #ifdef EDIED /* -TRANS In the GNU system, opening a file returns this error when the file is +TRANS On @gnuhurdsystems{}, opening a file returns this error when the file is TRANS translated by a program and the translator program dies while starting TRANS up, before it has connected to the file. */ [ERR_REMAP (EDIED)] = N_("Translator died"), -- cgit 1.4.1 From 6291c00386e7bddf7e2db428174b2aca26ef717b Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Thu, 8 Mar 2012 01:39:16 +0000 Subject: Add bug 6911 to NEWS. --- NEWS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NEWS b/NEWS index 9e94458a8e..5021304441 100644 --- a/NEWS +++ b/NEWS @@ -10,7 +10,7 @@ Version 2.16 * The following bugs are resolved with this release: 174, 350, 411, 2541, 2547, 2548, 3335, 3976, 3992, 4026, 4108, 4596, 4822, - 5077, 5461, 5805, 5993, 6884, 6907, 9739, 9902, 10110, 10135, 10140, + 5077, 5461, 5805, 5993, 6884, 6907, 6911, 9739, 9902, 10110, 10135, 10140, 10210, 10545, 10716, 11174, 11322, 11365, 11494, 12047, 13058, 13525, 13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551, 13552, 13553, 13555, 13559, 13583, 13618, 13637, 13656, 13695, 13704, -- cgit 1.4.1 From 65b81130c5006b1140c3d8b59038a68004ff61c8 Mon Sep 17 00:00:00 2001 From: Marek Polacek Date: Thu, 8 Mar 2012 08:32:47 +0100 Subject: Enhance fphex test. --- ChangeLog | 8 ++++++ NEWS | 2 +- stdio-common/Makefile | 2 +- stdio-common/tst-fphex-wide.c | 30 ++++++++++++++++++++++ stdio-common/tst-fphex.c | 60 ++++++++++++++++++++++++++++++------------- 5 files changed, 82 insertions(+), 20 deletions(-) create mode 100644 stdio-common/tst-fphex-wide.c diff --git a/ChangeLog b/ChangeLog index 43f23dd316..a96f05c7cd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2012-03-08 Marek Polacek + + [BZ #13806] + * stdio-common/Makefile (tests): Add tst-fphex-wide. + * stdio-common/tst-fphex.c: Define a few macros to make the + test reusable. Use them. + * stdio-common/tst-fphex-wide.c: New file. + 2012-03-08 Joseph Myers [BZ #6911] diff --git a/NEWS b/NEWS index 5021304441..fd36632541 100644 --- a/NEWS +++ b/NEWS @@ -14,7 +14,7 @@ Version 2.16 10210, 10545, 10716, 11174, 11322, 11365, 11494, 12047, 13058, 13525, 13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551, 13552, 13553, 13555, 13559, 13583, 13618, 13637, 13656, 13695, 13704, - 13706, 13726, 13738, 13786, 13792 + 13706, 13726, 13738, 13786, 13792, 13806 * ISO C11 support: diff --git a/stdio-common/Makefile b/stdio-common/Makefile index c8a136539a..266147e713 100644 --- a/stdio-common/Makefile +++ b/stdio-common/Makefile @@ -58,7 +58,7 @@ tests := tstscanf test_rdwr test-popen tstgetln test-fseek \ tst-fwrite bug16 bug17 tst-swscanf tst-sprintf2 bug18 bug18a \ bug19 bug19a tst-popen2 scanf13 scanf14 scanf15 bug20 bug21 bug22 \ scanf16 scanf17 tst-setvbuf1 tst-grouping bug23 bug24 \ - bug-vfprintf-nargs tst-long-dbl-fphex + bug-vfprintf-nargs tst-long-dbl-fphex tst-fphex-wide test-srcs = tst-unbputc tst-printf diff --git a/stdio-common/tst-fphex-wide.c b/stdio-common/tst-fphex-wide.c new file mode 100644 index 0000000000..2fd9f6ae3e --- /dev/null +++ b/stdio-common/tst-fphex-wide.c @@ -0,0 +1,30 @@ +/* Test program for %a wprintf formats. + This file is part of the GNU C Library. + Copyright (C) 2012 Free Software Foundation, Inc. + Contributed by Marek Polacek , 2012. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#include + +#define STR_LEN wcslen +#define SPRINT swprintf +#define STR_CMP wcscmp +#define CHAR_T wchar_t +#define PRINT wprintf +#define L_(Str) L##Str +#define L "l" + +#include "tst-fphex.c" diff --git a/stdio-common/tst-fphex.c b/stdio-common/tst-fphex.c index 212e4ed9ec..4465bfb81a 100644 --- a/stdio-common/tst-fphex.c +++ b/stdio-common/tst-fphex.c @@ -3,30 +3,52 @@ #include #include +#ifndef STR_LEN +# define STR_LEN strlen +#endif +#ifndef STR_CMP +# define STR_CMP strcmp +#endif +#ifndef SPRINT +# define SPRINT snprintf +#endif +#ifndef CHAR_T +# define CHAR_T char +#endif +#ifndef PRINT +# define PRINT printf +#endif +#ifndef L_ +# define L_(Str) Str +#endif +#ifndef L +# define L +#endif + struct testcase { double value; - const char *fmt; - const char *expect; + const CHAR_T *fmt; + const CHAR_T *expect; }; static const struct testcase testcases[] = { - { 0x0.0030p+0, "%a", "0x1.8p-11" }, - { 0x0.0040p+0, "%a", "0x1p-10" }, - { 0x0.0030p+0, "%040a", "0x00000000000000000000000000000001.8p-11" }, - { 0x0.0040p+0, "%040a", "0x0000000000000000000000000000000001p-10" }, - { 0x0.0040p+0, "%40a", " 0x1p-10" }, - { 0x0.0040p+0, "%#40a", " 0x1.p-10" }, - { 0x0.0040p+0, "%-40a", "0x1p-10 " }, - { 0x0.0040p+0, "%#-40a", "0x1.p-10 " }, - { 0x0.0030p+0, "%040e", "00000000000000000000000000007.324219e-04" }, - { 0x0.0040p+0, "%040e", "00000000000000000000000000009.765625e-04" }, + { 0x0.0030p+0, L_("%a"), L_("0x1.8p-11") }, + { 0x0.0040p+0, L_("%a"), L_("0x1p-10") }, + { 0x0.0030p+0, L_("%040a"), L_("0x00000000000000000000000000000001.8p-11") }, + { 0x0.0040p+0, L_("%040a"), L_("0x0000000000000000000000000000000001p-10") }, + { 0x0.0040p+0, L_("%40a"), L_(" 0x1p-10") }, + { 0x0.0040p+0, L_("%#40a"), L_(" 0x1.p-10") }, + { 0x0.0040p+0, L_("%-40a"), L_("0x1p-10 ") }, + { 0x0.0040p+0, L_("%#-40a"), L_("0x1.p-10 ") }, + { 0x0.0030p+0, L_("%040e"), L_("00000000000000000000000000007.324219e-04") }, + { 0x0.0040p+0, L_("%040e"), L_("00000000000000000000000000009.765625e-04") }, }; static int -do_test (int argc, char **argv) +do_test (void) { const struct testcase *t; int result = 0; @@ -35,12 +57,13 @@ do_test (int argc, char **argv) t < &testcases[sizeof testcases / sizeof testcases[0]]; ++t) { - char buf[1024]; - int n = snprintf (buf, sizeof buf, t->fmt, t->value); - if (n != strlen (t->expect) || strcmp (buf, t->expect) != 0) + CHAR_T buf[1024]; + int n = SPRINT (buf, sizeof buf / sizeof (buf[0]), t->fmt, t->value); + if (n != STR_LEN (t->expect) || STR_CMP (buf, t->expect) != 0) { - printf ("%s\tExpected \"%s\" (%Zu)\n\tGot \"%s\" (%d, %Zu)\n", - t->fmt, t->expect, strlen (t->expect), buf, n, strlen (buf)); + PRINT (L_("%" L "s\tExpected \"%" L "s\" (%Zu)\n\tGot \"%" L + "s\" (%d, %Zu)\n"), t->fmt, t->expect, STR_LEN (t->expect), + buf, n, STR_LEN (buf)); result = 1; } } @@ -48,4 +71,5 @@ do_test (int argc, char **argv) return result; } +#define TEST_FUNCTION do_test () #include "../test-skeleton.c" -- cgit 1.4.1 From 70bca0a394a2135927210007f1dd6eceafe1aaf5 Mon Sep 17 00:00:00 2001 From: Marek Polacek Date: Thu, 8 Mar 2012 02:46:43 -0500 Subject: Fix up long double fphex test --- ChangeLog | 4 ++++ stdio-common/tst-long-dbl-fphex.c | 29 ++++++++++++++++++++++------- 2 files changed, 26 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index 43f23dd316..98a6457ffc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2012-03-07 Marek Polacek + + * stdio-common/tst-long-dbl-fphex.c: Fix test for non ldbl-96 targets. + 2012-03-08 Joseph Myers [BZ #6911] diff --git a/stdio-common/tst-long-dbl-fphex.c b/stdio-common/tst-long-dbl-fphex.c index b57fb85ad7..d879c98e88 100644 --- a/stdio-common/tst-long-dbl-fphex.c +++ b/stdio-common/tst-long-dbl-fphex.c @@ -24,14 +24,29 @@ static int do_test (void); static int do_test (void) { +#ifndef NO_LONG_DOUBLE + int result = 0; const long double x = 24.5; - wchar_t a[16 * sizeof (wchar_t)]; - swprintf (a, 16 * sizeof (wchar_t), L"%La\n", x); - wchar_t A[16 * sizeof (wchar_t)]; - swprintf (A, 16 * sizeof (wchar_t), L"%LA\n", x); - - return (wmemcmp (a, L"0xc.4p+1", 8) != 0 - || wmemcmp (A, L"0XC.4P+1", 8) != 0); + wchar_t a[16]; + swprintf (a, sizeof (a), L"%La\n", x); + wchar_t A[16]; + swprintf (A, sizeof (A) / sizeof (A[0]), L"%LA\n", x); + + /* Here wprintf can return four valid variants. We must accept all + of them. */ + result |= (wmemcmp (a, L"0xc.4p+1", 8) == 0 + && wmemcmp (A, L"0XC.4P+1", 8) == 0); + result |= (wmemcmp (a, L"0x3.1p+3", 8) == 0 + && wmemcmp (A, L"0X3.1P+3", 8) == 0); + result |= (wmemcmp (a, L"0x6.2p+2", 8) == 0 + && wmemcmp (A, L"0X6.2P+2", 8) == 0); + result |= (wmemcmp (a, L"0x1.88p+4", 8) == 0 + && wmemcmp (A, L"0X1.88P+4", 8) == 0); + + return result != 1; +#else + return 0; +#endif } #define TEST_FUNCTION do_test () -- cgit 1.4.1 From aea5d7277a2ebd2f432bc3196e4a0e2afe8d5878 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 8 Mar 2012 03:02:24 -0500 Subject: Clean up tst-fphex test --- ChangeLog | 8 ++++++++ stdio-common/tst-fphex-wide.c | 8 +------- stdio-common/tst-fphex.c | 29 +++++++++++++---------------- 3 files changed, 22 insertions(+), 23 deletions(-) diff --git a/ChangeLog b/ChangeLog index 483757d58b..698655939c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2012-03-08 Ulrich Drepper + + * stdio-common/tst-fphex.c: Various cleanups. The macros cannot + be defined individually, they must be defined as a block. Define + S for printing a string instead of hidint the different by using a + macro for adding the 'l'. + * stdio-common/tst-fphex-wide.c: Adjust. + 2012-03-07 Marek Polacek * stdio-common/tst-long-dbl-fphex.c: Fix test for non ldbl-96 targets. diff --git a/stdio-common/tst-fphex-wide.c b/stdio-common/tst-fphex-wide.c index 2fd9f6ae3e..04d913561f 100644 --- a/stdio-common/tst-fphex-wide.c +++ b/stdio-common/tst-fphex-wide.c @@ -19,12 +19,6 @@ #include -#define STR_LEN wcslen -#define SPRINT swprintf -#define STR_CMP wcscmp -#define CHAR_T wchar_t -#define PRINT wprintf -#define L_(Str) L##Str -#define L "l" +#define WIDE 1 #include "tst-fphex.c" diff --git a/stdio-common/tst-fphex.c b/stdio-common/tst-fphex.c index 4465bfb81a..c2e8961d62 100644 --- a/stdio-common/tst-fphex.c +++ b/stdio-common/tst-fphex.c @@ -3,26 +3,22 @@ #include #include -#ifndef STR_LEN +#ifndef WIDE # define STR_LEN strlen -#endif -#ifndef STR_CMP # define STR_CMP strcmp -#endif -#ifndef SPRINT # define SPRINT snprintf -#endif -#ifndef CHAR_T # define CHAR_T char -#endif -#ifndef PRINT # define PRINT printf -#endif -#ifndef L_ # define L_(Str) Str -#endif -#ifndef L -# define L +# define S "%s" +#else +# define STR_LEN wcslen +# define SPRINT swprintf +# define STR_CMP wcscmp +# define CHAR_T wchar_t +# define PRINT wprintf +# define L_(Str) L##Str +# define S "%ls" #endif struct testcase @@ -61,8 +57,9 @@ do_test (void) int n = SPRINT (buf, sizeof buf / sizeof (buf[0]), t->fmt, t->value); if (n != STR_LEN (t->expect) || STR_CMP (buf, t->expect) != 0) { - PRINT (L_("%" L "s\tExpected \"%" L "s\" (%Zu)\n\tGot \"%" L - "s\" (%d, %Zu)\n"), t->fmt, t->expect, STR_LEN (t->expect), + PRINT (L_("" S "\tExpected \"" S "\" (%Zu)\n\tGot \"" + S "\" (%d, %Zu)\n"), + t->fmt, t->expect, STR_LEN (t->expect), buf, n, STR_LEN (buf)); result = 1; } -- cgit 1.4.1 From 48aff7765b16851c4c3c5b7beb44c878d0d24ae8 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 8 Mar 2012 09:33:12 +0100 Subject: Fix 9554ebf2d4da22591e974d3cf2ed09a2b8dbdbd8. | Invalid timeouts in i386 sem_timedwait. | | We adjusted nwaiters even though this isn't necessary. --- nptl/ChangeLog | 6 ++++++ .../unix/sysv/linux/i386/i486/sem_timedwait.S | 9 ++++++--- nptl/tst-sem13.c | 23 ++++++++++++++++++++-- 3 files changed, 33 insertions(+), 5 deletions(-) diff --git a/nptl/ChangeLog b/nptl/ChangeLog index dd6f334a3d..6cf6b3fed9 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,9 @@ +2012-03-08 Thomas Schwinge + + * tst-sem13.c (do_test): Add another test case. + * sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S (sem_timedwait): + Fix updating nwaiters. + 2012-03-07 Joseph Myers [BZ #10545] diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S index 4740aee10d..03892437f6 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2005, 2007, 2009, 2011-2012 Free Software Foundation, Inc. +/* Copyright (C) 2002-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 2002. @@ -64,7 +64,7 @@ sem_timedwait: /* Check for invalid nanosecond field. */ cmpl $1000000000, 4(%edi) movl $EINVAL, %esi - jae 6f + jae .Lerrno_exit LOCK incl NWAITERS(%ecx) @@ -146,6 +146,10 @@ sem_timedwait: .Lafter_ret: 3: negl %esi 6: + movl 28(%esp), %ebx /* Load semaphore address. */ + LOCK + decl NWAITERS(%ebx) +.Lerrno_exit: #ifdef PIC SETUP_PIC_REG(bx) #else @@ -162,7 +166,6 @@ sem_timedwait: movl %esi, %gs:(%edx) #endif - movl 28(%esp), %ebx /* Load semaphore address. */ orl $-1, %eax jmp 10b .size sem_timedwait,.-sem_timedwait diff --git a/nptl/tst-sem13.c b/nptl/tst-sem13.c index 8756b2262f..068d79e85e 100644 --- a/nptl/tst-sem13.c +++ b/nptl/tst-sem13.c @@ -30,12 +30,31 @@ do_test (void) } if (errno != EINVAL) { - puts ("sem_timedwait did not fail with EINVAL"); + perror ("sem_timedwait did not fail with EINVAL"); return 1; } if (u.ns.nwaiters != 0) { - puts ("nwaiters modified"); + printf ("sem_timedwait modified nwaiters: %ld\n", u.ns.nwaiters); + return 1; + } + + ts.tv_sec = /* Invalid. */ -2; + ts.tv_nsec = 0; + errno = 0; + if (sem_timedwait (&u.s, &ts) >= 0) + { + puts ("2nd sem_timedwait did not fail"); + return 1; + } + if (errno != ETIMEDOUT) + { + perror ("2nd sem_timedwait did not fail with ETIMEDOUT"); + return 1; + } + if (u.ns.nwaiters != 0) + { + printf ("2nd sem_timedwait modified nwaiters: %ld\n", u.ns.nwaiters); return 1; } -- cgit 1.4.1 From c564a81246d0064eb12bc34cac8996709a0ecbfc Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 8 Mar 2012 10:45:05 +0100 Subject: Invalid timeouts in SH sem_timedwait. We adjusted nwaiters even though this isn't necessary. --- nptl/ChangeLog | 3 +++ nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S | 9 +++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 6cf6b3fed9..cd70329abb 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,5 +1,8 @@ 2012-03-08 Thomas Schwinge + * sysdeps/unix/sysv/linux/sh/sem_timedwait.S (sem_timedwait): Fix + updating nwaiters. + * tst-sem13.c (do_test): Add another test case. * sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S (sem_timedwait): Fix updating nwaiters. diff --git a/nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S b/nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S index d47362fc68..c26e5aa4cb 100644 --- a/nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S +++ b/nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S @@ -1,4 +1,4 @@ -/* Copyright (C) 2003, 2004, 2007, 2011 Free Software Foundation, Inc. +/* Copyright (C) 2003-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -69,8 +69,8 @@ sem_timedwait: mov.l @(4,r9), r0 mov.l .L1g, r1 cmp/hs r1, r0 - bt/s 6f - mov #EINVAL, r0 + bt/s .Lerrno_exit + mov #EINVAL, r10 INC (@(NWAITERS,r8),r2) 7: @@ -168,6 +168,8 @@ sem_timedwait: neg r0, r0 6: mov r0, r10 + DEC (@(NWAITERS,r8), r2) +.Lerrno_exit: mova .Lgot2, r0 mov.l .Lgot2, r12 add r0, r12 @@ -182,7 +184,6 @@ sem_timedwait: .long errno@GOTTPOFF .Lexit: mov.l r10, @r0 - DEC (@(NWAITERS,r8), r2) bra 10b mov #-1, r0 -- cgit 1.4.1 From 2edd9a79e5967e01f9afc3ae1207159a2c53c73f Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 8 Mar 2012 11:22:41 +0100 Subject: Work around kernel rejecting valid absolute timestamps. --- nptl/ChangeLog | 3 +++ nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S | 10 ++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/nptl/ChangeLog b/nptl/ChangeLog index cd70329abb..ddd0ee2027 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,5 +1,8 @@ 2012-03-08 Thomas Schwinge + * sysdeps/unix/sysv/linux/sh/lowlevellock.S (__lll_timedlock_wait): + Check for timestamp before the Epoch. + * sysdeps/unix/sysv/linux/sh/sem_timedwait.S (sem_timedwait): Fix updating nwaiters. diff --git a/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S b/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S index 9327860ac9..fe4e3b628b 100644 --- a/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S +++ b/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S @@ -1,5 +1,4 @@ -/* Copyright (C) 2003, 2004, 2005, 2007, 2008, 2009, 2010 - Free Software Foundation, Inc. +/* Copyright (C) 2003-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -243,6 +242,12 @@ __lll_timedlock_wait: bt .Lreltmo # endif + /* if (timeout->tv_sec < 0) return ETIMEDOUT; */ + mov.l @r6, r1 + cmp/pz r1 + bf/s 5f + mov #ETIMEDOUT, r0 + mov r4, r2 mov r5, r4 mov r7, r5 @@ -278,6 +283,7 @@ __lll_timedlock_wait: neg r0, r3 3: mov r3, r0 +5: rts mov.l @r15+, r12 -- cgit 1.4.1 From 82d86f28445f3231f7f9e94ac6678065ab476a8e Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 8 Mar 2012 11:49:43 +0100 Subject: Fix struct timespec normalization (as used in many other places). --- ChangeLog | 7 +++++++ resolv/gai_misc.c | 4 ++-- rt/tst-cpuclock2.c | 2 +- sysdeps/pthread/aio_misc.c | 5 ++--- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 698655939c..1c2c928ddf 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2012-03-08 Thomas Schwinge + + * resolv/gai_misc.c (handle_requests): Fix struct timespec + normalization. + * rt/tst-cpuclock2.c (test_nanosleep): Likewise. + * sysdeps/pthread/aio_misc.c (handle_fildes_io): Likewise. + 2012-03-08 Ulrich Drepper * stdio-common/tst-fphex.c: Various cleanups. The macros cannot diff --git a/resolv/gai_misc.c b/resolv/gai_misc.c index 33ebd54255..35f1133e69 100644 --- a/resolv/gai_misc.c +++ b/resolv/gai_misc.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 2001-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 2001. @@ -364,7 +364,7 @@ handle_requests (void *arg) gettimeofday (&now, NULL); wakeup_time.tv_sec = now.tv_sec + optim.gai_idle_time; wakeup_time.tv_nsec = now.tv_usec * 1000; - if (wakeup_time.tv_nsec > 1000000000) + if (wakeup_time.tv_nsec >= 1000000000) { wakeup_time.tv_nsec -= 1000000000; ++wakeup_time.tv_sec; diff --git a/rt/tst-cpuclock2.c b/rt/tst-cpuclock2.c index e3545f2e3c..9a74eb014b 100644 --- a/rt/tst-cpuclock2.c +++ b/rt/tst-cpuclock2.c @@ -110,7 +110,7 @@ test_nanosleep (clockid_t clock, const char *which, struct timespec sleeptimeabs = sleeptime; sleeptimeabs.tv_sec += after.tv_sec; sleeptimeabs.tv_nsec += after.tv_nsec; - while (sleeptimeabs.tv_nsec > 1000000000) + while (sleeptimeabs.tv_nsec >= 1000000000) { ++sleeptimeabs.tv_sec; sleeptimeabs.tv_nsec -= 1000000000; diff --git a/sysdeps/pthread/aio_misc.c b/sysdeps/pthread/aio_misc.c index 601feb8980..d5bb95bd49 100644 --- a/sysdeps/pthread/aio_misc.c +++ b/sysdeps/pthread/aio_misc.c @@ -1,6 +1,5 @@ /* Handle general operations. - Copyright (C) 1997-2001, 2003, 2004, 2006, 2007, 2009, 2011 - Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -635,7 +634,7 @@ handle_fildes_io (void *arg) gettimeofday (&now, NULL); wakeup_time.tv_sec = now.tv_sec + optim.aio_idle_time; wakeup_time.tv_nsec = now.tv_usec * 1000; - if (wakeup_time.tv_nsec > 1000000000) + if (wakeup_time.tv_nsec >= 1000000000) { wakeup_time.tv_nsec -= 1000000000; ++wakeup_time.tv_sec; -- cgit 1.4.1 From c64bf5feb39e7ad7235ed140a8cdb142bd28608b Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Thu, 8 Mar 2012 00:46:09 -0800 Subject: Update copyright year after my most recent changes. nptl/ * sysdeps/unix/sysv/linux/sparc/sem_post.c: Update copyright year. / * sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c: Update copyright year. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise. --- ChangeLog | 6 ++++++ nptl/ChangeLog | 4 ++++ nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c | 2 +- sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c | 2 +- sysdeps/unix/sysv/linux/sparc/sysdep.h | 2 +- 5 files changed, 13 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 1c2c928ddf..9b6de42385 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2012-03-08 David S. Miller + + * sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c: Update + copyright year. + * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise. + 2012-03-08 Thomas Schwinge * resolv/gai_misc.c (handle_requests): Fix struct timespec diff --git a/nptl/ChangeLog b/nptl/ChangeLog index ddd0ee2027..6d5f847261 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,7 @@ +2012-03-08 David S. Miller + + * sysdeps/unix/sysv/linux/sparc/sem_post.c: Update copyright year. + 2012-03-08 Thomas Schwinge * sysdeps/unix/sysv/linux/sh/lowlevellock.S (__lll_timedlock_wait): diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c b/nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c index 28e06f6327..f2c2113561 100644 --- a/nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c +++ b/nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c @@ -1,5 +1,5 @@ /* sem_post -- post to a POSIX semaphore. SPARC version. - Copyright (C) 2003, 2004, 2007 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2007, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Jakub Jelinek , 2003. diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c b/sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c index ba44a61c86..e3cea9fb50 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c @@ -1,5 +1,5 @@ /* Get frequency of the system processor. sparc64 version. - Copyright (C) 2001 Free Software Foundation, Inc. + Copyright (C) 2001, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/sysdeps/unix/sysv/linux/sparc/sysdep.h b/sysdeps/unix/sysv/linux/sparc/sysdep.h index 30144b9f6d..542e94040c 100644 --- a/sysdeps/unix/sysv/linux/sparc/sysdep.h +++ b/sysdeps/unix/sysv/linux/sparc/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000, 2002, 2003, 2004, 2007 Free Software Foundation, Inc. +/* Copyright (C) 2000, 2002-2004, 2007, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Jakub Jelinek , 2000. -- cgit 1.4.1 From 38842f4553f5dfebd8c276e07dbbbadc60921fef Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Wed, 7 Mar 2012 09:19:26 -0800 Subject: Use target-specific math_private.h in math_ldbl_opt.h. --- ChangeLog | 5 +++++ sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 9b6de42385..0f89a951c9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2012-03-08 Richard Henderson + + * sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h: Include , + not . + 2012-03-08 David S. Miller * sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c: Update diff --git a/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h b/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h index 77ab26370d..b0b863cba5 100644 --- a/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h +++ b/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h @@ -37,7 +37,7 @@ #ifndef __ASSEMBLER__ # include -# include +# include /* Set temporarily to non-zero if long double should be considered the same as double. */ -- cgit 1.4.1 From 64e21edef13c6d2592f276d599d8eed01a1b1a9a Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Tue, 6 Mar 2012 15:41:14 -0800 Subject: x86_64: Convert __ieee754_sqrt{,f,l} from macros to inlines. --- ChangeLog | 4 +++ sysdeps/x86_64/fpu/math_private.h | 54 +++++++++++++++++++++++---------------- 2 files changed, 36 insertions(+), 22 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0f89a951c9..d8d167aaa2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2012-03-08 Richard Henderson + * sysdeps/x86_64/fpu/math_private.h (__ieee754_sqrt): Convert from + macro to inline function. + (__ieee754_sqrtf, __ieee754_sqrtl): Likewise. + * sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h: Include , not . diff --git a/sysdeps/x86_64/fpu/math_private.h b/sysdeps/x86_64/fpu/math_private.h index 8e79718262..07bc7e30c4 100644 --- a/sysdeps/x86_64/fpu/math_private.h +++ b/sysdeps/x86_64/fpu/math_private.h @@ -1,4 +1,5 @@ -#ifndef _MATH_PRIVATE_H +#ifndef X86_64_MATH_PRIVATE_H +#define X86_64_MATH_PRIVATE_H 1 #define math_opt_barrier(x) \ ({ __typeof(x) __x; \ @@ -67,7 +68,6 @@ f = f__; \ } while (0) -#endif #define __isnan(d) \ ({ long int __di; EXTRACT_WORDS64 (__di, (double) (d)); \ @@ -90,29 +90,37 @@ ({ int __di; GET_FLOAT_WORD (__di, (float) d); \ (__di & 0x7fffffff) < 0x7f800000; }) +extern __always_inline double +__ieee754_sqrt (double d) +{ + double res; #if defined __AVX__ || defined SSE2AVX -# define __ieee754_sqrt(d) \ - ({ double __res; \ - asm ("vsqrtsd %1, %0, %0" : "=x" (__res) : "xm" ((double) (d))); \ - __res; }) -# define __ieee754_sqrtf(d) \ - ({ float __res; \ - asm ("vsqrtss %1, %0, %0" : "=x" (__res) : "xm" ((float) (d))); \ - __res; }) + asm ("vsqrtsd %1, %0, %0" : "=x" (res) : "xm" (d)); #else -# define __ieee754_sqrt(d) \ - ({ double __res; \ - asm ("sqrtsd %1, %0" : "=x" (__res) : "xm" ((double) (d))); \ - __res; }) -# define __ieee754_sqrtf(d) \ - ({ float __res; \ - asm ("sqrtss %1, %0" : "=x" (__res) : "xm" ((float) (d))); \ - __res; }) + asm ("sqrtsd %1, %0" : "=x" (res) : "xm" (d)); #endif -#define __ieee754_sqrtl(d) \ - ({ long double __res; \ - asm ("fsqrt" : "=t" (__res) : "0" ((long double) (d))); \ - __res; }) + return res; +} + +extern __always_inline float +__ieee754_sqrtf (float d) +{ + float res; +#if defined __AVX__ || defined SSE2AVX + asm ("vsqrtss %1, %0, %0" : "=x" (res) : "xm" (d)); +#else + asm ("sqrtss %1, %0" : "=x" (res) : "xm" (d)); +#endif + return res; +} + +extern __always_inline long double +__ieee754_sqrtl (long double d) +{ + long double res; + asm ("fsqrt" : "=t" (res) : "0" (d)); + return res; +} #ifdef __SSE4_1__ # ifndef __rint @@ -226,3 +234,5 @@ #undef libc_feupdateenvf #define libc_feupdateenvf(e) libc_feupdateenv (e) // #define libc_feupdateenvl(e) (void) feupdateenv (e) + +#endif /* X86_64_MATH_PRIVATE_H */ -- cgit 1.4.1 From 15194b4b3d39e3d2099f9159f3a8abb52d37cc00 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Tue, 6 Mar 2012 15:58:51 -0800 Subject: x86_64: Convert __rint* and __floor* from macros to inlines. --- ChangeLog | 4 ++ sysdeps/x86_64/fpu/math_private.h | 92 ++++++++++++++++++--------------------- 2 files changed, 47 insertions(+), 49 deletions(-) diff --git a/ChangeLog b/ChangeLog index d8d167aaa2..59d7e9e822 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2012-03-08 Richard Henderson + * sysdeps/x86_64/fpu/math_private.h (__rint): Convert from macro + to inline function. + (__rintf, __floor, __floorf): Likewise. + * sysdeps/x86_64/fpu/math_private.h (__ieee754_sqrt): Convert from macro to inline function. (__ieee754_sqrtf, __ieee754_sqrtl): Likewise. diff --git a/sysdeps/x86_64/fpu/math_private.h b/sysdeps/x86_64/fpu/math_private.h index 07bc7e30c4..9b8d31de87 100644 --- a/sysdeps/x86_64/fpu/math_private.h +++ b/sysdeps/x86_64/fpu/math_private.h @@ -123,60 +123,54 @@ __ieee754_sqrtl (long double d) } #ifdef __SSE4_1__ -# ifndef __rint -# if defined __AVX__ || defined SSE2AVX -# define __rint(d) \ - ({ double __res; \ - asm ("vroundsd $4, %1, %0, %0" : "=x" (__res) : "xm" ((double) (d))); \ - __res; }) -# else -# define __rint(d) \ - ({ double __res; \ - asm ("roundsd $4, %1, %0" : "=x" (__res) : "xm" ((double) (d))); \ - __res; }) -# endif +extern __always_inline double +__rint (double d) +{ + double res; +# if defined __AVX__ || defined SSE2AVX + asm ("vroundsd $4, %1, %0, %0" : "=x" (res) : "xm" (d)); +# else + asm ("roundsd $4, %1, %0" : "=x" (res) : "xm" (d)); # endif -# ifndef __rintf -# if defined __AVX__ || defined SSE2AVX -# define __rintf(d) \ - ({ float __res; \ - asm ("vroundss $4, %1, %0, %0" : "=x" (__res) : "xm" ((float) (d))); \ - __res; }) -# else -# define __rintf(d) \ - ({ float __res; \ - asm ("roundss $4, %1, %0" : "=x" (__res) : "xm" ((float) (d))); \ - __res; }) -# endif + return res; +} + +extern __always_inline float +__rintf (float d) +{ + float res; +# if defined __AVX__ || defined SSE2AVX + asm ("vroundss $4, %1, %0, %0" : "=x" (res) : "xm" (d)); +# else + asm ("roundss $4, %1, %0" : "=x" (res) : "xm" (d)); # endif + return res; +} -# ifndef __floor -# if defined __AVX__ || defined SSE2AVX -# define __floor(d) \ - ({ double __res; \ - asm ("vroundsd $1, %1, %0, %0" : "=x" (__res) : "xm" ((double) (d))); \ - __res; }) -# else -# define __floor(d) \ - ({ double __res; \ - asm ("roundsd $1, %1, %0" : "=x" (__res) : "xm" ((double) (d))); \ - __res; }) -# endif +extern __always_inline double +__floor (double d) +{ + double res; +# if defined __AVX__ || defined SSE2AVX + asm ("vroundsd $1, %1, %0, %0" : "=x" (res) : "xm" (d)); +# else + asm ("roundsd $1, %1, %0" : "=x" (res) : "xm" (d)); # endif -# ifndef __floorf -# if defined __AVX__ || defined SSE2AVX -# define __floorf(d) \ - ({ float __res; \ - asm ("vroundss $1, %1, %0, %0" : "=x" (__res) : "xm" ((float) (d))); \ - __res; }) -# else -# define __floorf(d) \ - ({ float __res; \ - asm ("roundss $1, %1, %0" : "=x" (__res) : "xm" ((float) (d))); \ - __res; }) + return res; +} + +extern __always_inline float +__floorf (float d) +{ + float res; +# if defined __AVX__ || defined SSE2AVX + asm ("vroundss $1, %1, %0, %0" : "=x" (res) : "xm" (d)); +# else + asm ("roundss $1, %1, %0" : "=x" (res) : "xm" (d)); # endif -# endif -#endif + return res; +} +#endif /* __SSE4_1__ */ /* Specialized variants of the interfaces which only handle -- cgit 1.4.1 From 67bb6da6798d55fff7ed759af51799dfeca740d3 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Wed, 7 Mar 2012 09:16:59 -0800 Subject: powerpc: Convert __ieee754_sqrt{,f} from macros to inlines. --- ChangeLog | 5 ++ sysdeps/powerpc/fpu/math_private.h | 106 +++++++++++++------------------------ 2 files changed, 41 insertions(+), 70 deletions(-) diff --git a/ChangeLog b/ChangeLog index 59d7e9e822..3cc0d2dab6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2012-03-08 Richard Henderson + * sysdeps/powerpc/fpu/math_private.h (__ieee754_sqrt): Convert + from macro to inline function; merge with the + !__LIBC_INTERNAL_MATH_INLINES version. + (__ieee754_sqrtf): Likewise. + * sysdeps/x86_64/fpu/math_private.h (__rint): Convert from macro to inline function. (__rintf, __floor, __floorf): Likewise. diff --git a/sysdeps/powerpc/fpu/math_private.h b/sysdeps/powerpc/fpu/math_private.h index 7bacecb245..28628f0540 100644 --- a/sysdeps/powerpc/fpu/math_private.h +++ b/sysdeps/powerpc/fpu/math_private.h @@ -23,35 +23,49 @@ #include #include #include - #include # if __WORDSIZE == 64 || defined _ARCH_PWR4 # define __CPU_HAS_FSQRT 1 - -#ifndef __ieee754_sqrt -# define __ieee754_sqrt(x) \ - ({ double __z; \ - __asm __volatile ( \ - " fsqrt %0,%1\n" \ - : "=f" (__z) \ - : "f"(x)); \ - __z; }) -#endif -#ifndef __ieee754_sqrtf -# define __ieee754_sqrtf(x) \ - ({ float __z; \ - __asm __volatile ( \ - " fsqrts %0,%1\n" \ - : "=f" (__z) \ - : "f"(x)); \ - __z; }) -#endif - # else # define __CPU_HAS_FSQRT ((GLRO(dl_hwcap) & PPC_FEATURE_64) != 0) -# endif // __WORDSIZE == 64 || defined _ARCH_PWR4 +# endif + +extern double __slow_ieee754_sqrt (double); +extern __always_inline double +__ieee754_sqrt (double __x) +{ + double __z; + if (__CPU_HAS_FSQRT) + { + /* Volatile is required to prevent the compiler from moving the + fsqrt instruction above the branch. */ + __asm __volatile ("fsqrt %0,%1" : "=f" (__z) : "f" (__x)); + } + else + __z = __slow_ieee754_sqrt(__x); + + return __z; +} + +extern float __slow_ieee754_sqrtf (float); +extern __always_inline float +__ieee754_sqrtf (float __x) +{ + float __z; + + if (__CPU_HAS_FSQRT) + { + /* Volatile is required to prevent the compiler from moving the + fsqrts instruction above the branch. */ + __asm __volatile ("fsqrts %0,%1" : "=f" (__z) : "f" (__x)); + } + else + __z = __slow_ieee754_sqrtf(__x); + + return __z; +} #if defined _ARCH_PWR5X @@ -162,52 +176,4 @@ #endif /* defined _ARCH_PWR6 */ - -# ifndef __LIBC_INTERNAL_MATH_INLINES -extern double __slow_ieee754_sqrt (double); -__inline double -__ieee754_sqrt (double __x) -{ - double __z; - - /* If the CPU is 64-bit we can use the optional FP instructions. */ - if (__CPU_HAS_FSQRT) - { - /* Volatile is required to prevent the compiler from moving the - fsqrt instruction above the branch. */ - __asm __volatile ( - " fsqrt %0,%1\n" - : "=f" (__z) - : "f" (__x)); - } - else - __z = __slow_ieee754_sqrt(__x); - - return __z; -} - -extern float __slow_ieee754_sqrtf (float); - -__inline float -__ieee754_sqrtf (float __x) -{ - float __z; - - /* If the CPU is 64-bit we can use the optional FP instructions. */ - if (__CPU_HAS_FSQRT) - { - /* Volatile is required to prevent the compiler from moving the - fsqrts instruction above the branch. */ - __asm __volatile ( - " fsqrts %0,%1\n" - : "=f" (__z) - : "f" (__x)); - } - else - __z = __slow_ieee754_sqrtf(__x); - - return __z; -} -#endif /* __LIBC_INTERNAL_MATH_INLINES */ - #endif /* _PPC_MATH_PRIVATE_H_ */ -- cgit 1.4.1 From 90ad551f732ab70f0f1fca3d12d60c3d2d0e118c Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Fri, 9 Mar 2012 21:10:45 +0000 Subject: Make pthread.h define all symbols from time.h. See: http://www.pasc.org/interps/unofficial/db/p1003.1c/pasc-1003.1c-46.html http://www.pasc.org/interps/unofficial/db/p1003.1/pasc-1003.1-86.html https://www.opengroup.org/sophocles/show_mail.tpl?CALLER=index.tpl&source=L&listname=austin-group-l&id=17302 (Geoff Clare, austin-group-l, 9 Mar 2012) --- nptl/ChangeLog | 5 +++++ nptl/sysdeps/pthread/pthread.h | 4 ---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 6d5f847261..3f70b0a295 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,8 @@ +2012-03-09 Joseph Myers + + * sysdeps/pthread/pthread.h (__need_clockid_t, __need_timespec): + Do not define before including . + 2012-03-08 David S. Miller * sysdeps/unix/sysv/linux/sparc/sem_post.c: Update copyright year. diff --git a/nptl/sysdeps/pthread/pthread.h b/nptl/sysdeps/pthread/pthread.h index 0d33cbdb9e..bd97e8556f 100644 --- a/nptl/sysdeps/pthread/pthread.h +++ b/nptl/sysdeps/pthread/pthread.h @@ -21,10 +21,6 @@ #include #include #include -#ifdef __USE_XOPEN2K -# define __need_clockid_t -#endif -#define __need_timespec #include #include -- cgit 1.4.1 From 4962050e9783502ec0465ae1b6a4103563385198 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Fri, 9 Mar 2012 22:05:49 +0000 Subject: Install bits/stdio_lim.h in install-headers. --- ChangeLog | 7 +++++++ Makerules | 4 +++- stdio-common/Makefile | 7 +------ 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3cc0d2dab6..79d9dc2665 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2012-03-09 Joseph Myers + + * Makerules ($(inst_includedir)/%.h): New rule. + * stdio-common/Makefile (headers): Add bits/stdio_lim.h. + (install-others): Remove variable setting. + ($(inst_includedir)/bits/stdio_lim.h): Remove rule. + 2012-03-08 Richard Henderson * sysdeps/powerpc/fpu/math_private.h (__ieee754_sqrt): Convert diff --git a/Makerules b/Makerules index 7d18f890fd..f1807c2ee8 100644 --- a/Makerules +++ b/Makerules @@ -1,4 +1,4 @@ -# Copyright (C) 1991-2010, 2011 Free Software Foundation, Inc. +# Copyright (C) 1991-2012 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -1068,6 +1068,8 @@ ifdef headers # headers in the sysdeps tree. $(inst_includedir)/%.h: $(objpfx)%.h $(+force) $(do-install) +$(inst_includedir)/%.h: $(common-objpfx)%.h $(+force) + $(do-install) $(inst_includedir)/%.h: %.h $(+force) $(do-install) $(inst_includedir)/%.h: $(..)include/%.h $(+force) diff --git a/stdio-common/Makefile b/stdio-common/Makefile index 266147e713..8cf6335bb5 100644 --- a/stdio-common/Makefile +++ b/stdio-common/Makefile @@ -20,7 +20,7 @@ # subdir := stdio-common -headers := stdio_ext.h printf.h bits/printf-ldbl.h +headers := stdio_ext.h printf.h bits/printf-ldbl.h bits/stdio_lim.h routines := \ ctermid cuserid \ @@ -39,8 +39,6 @@ routines := \ isoc99_vsscanf \ psiginfo -install-others = $(inst_includedir)/bits/stdio_lim.h - include ../Makeconfig aux := errlist siglist printf-parsemb printf-parsewc fxprintf @@ -64,9 +62,6 @@ test-srcs = tst-unbputc tst-printf include ../Rules -$(inst_includedir)/bits/stdio_lim.h: $(common-objpfx)bits/stdio_lim.h $(+force) - $(do-install) - ifeq ($(cross-compiling),no) .PHONY: do-tst-unbputc do-tst-printf tests: do-tst-unbputc do-tst-printf -- cgit 1.4.1 From c6e013c15e0091edc49affd6ce26562845000dcd Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Fri, 9 Mar 2012 22:08:39 +0000 Subject: Always declare gets for C++ up to C++11 without checking __USE_GNU. --- ChangeLog | 4 ++++ libio/stdio.h | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 79d9dc2665..d2e15f0a8e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2012-03-09 Joseph Myers + [BZ #13566] + * libio/stdio.h (gets): Always declare for C++ up to C++11 without + checking __USE_GNU. + * Makerules ($(inst_includedir)/%.h): New rule. * stdio-common/Makefile (headers): Add bits/stdio_lim.h. (install-others): Remove variable setting. diff --git a/libio/stdio.h b/libio/stdio.h index c69b382da1..9ca3ad3a28 100644 --- a/libio/stdio.h +++ b/libio/stdio.h @@ -623,7 +623,7 @@ extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream) __wur; #if !defined __USE_ISOC11 \ - || (defined __cplusplus && __cplusplus <= 201103L && !defined __USE_GNU) + || (defined __cplusplus && __cplusplus <= 201103L) /* Get a newline-terminated string from stdin, removing the newline. DO NOT USE THIS FUNCTION!! There is no limit on how much it will read. -- cgit 1.4.1 From 02a6f887cb3e2c048937111eb4cf150d397609de Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Fri, 9 Mar 2012 22:36:06 +0000 Subject: Split enum __socket_type from bits/socket.h to bits/socket_type.h. --- ChangeLog | 9 + sysdeps/unix/sysv/linux/Makefile | 3 +- sysdeps/unix/sysv/linux/bits/socket.h | 35 +- sysdeps/unix/sysv/linux/bits/socket_type.h | 55 +++ sysdeps/unix/sysv/linux/sparc/bits/socket.h | 438 ----------------------- sysdeps/unix/sysv/linux/sparc/bits/socket_type.h | 55 +++ 6 files changed, 123 insertions(+), 472 deletions(-) create mode 100644 sysdeps/unix/sysv/linux/bits/socket_type.h delete mode 100644 sysdeps/unix/sysv/linux/sparc/bits/socket.h create mode 100644 sysdeps/unix/sysv/linux/sparc/bits/socket_type.h diff --git a/ChangeLog b/ChangeLog index d2e15f0a8e..1fed786c7f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,14 @@ 2012-03-09 Joseph Myers + * sysdeps/unix/sysv/linux/bits/socket_type.h: New file. + * sysdeps/unix/sysv/linux/sparc/bits/socket_type.h: Likewise. + * sysdeps/unix/sysv/linux/bits/socket.h: Get enum __socket_type + from . + (enum __socket_type): Don't define here. + * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Remove. + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + bits/socket_type.h. + [BZ #13566] * libio/stdio.h (gets): Always declare for C++ up to C++11 without checking __USE_GNU. diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile index 458658df29..a97487fbc9 100644 --- a/sysdeps/unix/sysv/linux/Makefile +++ b/sysdeps/unix/sysv/linux/Makefile @@ -33,7 +33,8 @@ sysdep_headers += sys/mount.h sys/acct.h sys/sysctl.h \ sys/ultrasound.h sys/raw.h sys/personality.h sys/epoll.h \ bits/a.out.h sys/inotify.h sys/signalfd.h sys/eventfd.h \ sys/timerfd.h sys/fanotify.h bits/eventfd.h bits/inotify.h \ - bits/signalfd.h bits/timerfd.h bits/epoll.h + bits/signalfd.h bits/timerfd.h bits/epoll.h \ + bits/socket_type.h install-others += $(inst_includedir)/bits/syscall.h diff --git a/sysdeps/unix/sysv/linux/bits/socket.h b/sysdeps/unix/sysv/linux/bits/socket.h index 0b052a4a66..7fa7eea6cf 100644 --- a/sysdeps/unix/sysv/linux/bits/socket.h +++ b/sysdeps/unix/sysv/linux/bits/socket.h @@ -35,39 +35,8 @@ typedef __socklen_t socklen_t; # define __socklen_t_defined #endif -/* Types of sockets. */ -enum __socket_type -{ - SOCK_STREAM = 1, /* Sequenced, reliable, connection-based - byte streams. */ -#define SOCK_STREAM SOCK_STREAM - SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams - of fixed maximum length. */ -#define SOCK_DGRAM SOCK_DGRAM - SOCK_RAW = 3, /* Raw protocol interface. */ -#define SOCK_RAW SOCK_RAW - SOCK_RDM = 4, /* Reliably-delivered messages. */ -#define SOCK_RDM SOCK_RDM - SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, - datagrams of fixed maximum length. */ -#define SOCK_SEQPACKET SOCK_SEQPACKET - SOCK_DCCP = 6, /* Datagram Congestion Control Protocol. */ -#define SOCK_DCCP SOCK_DCCP - SOCK_PACKET = 10, /* Linux specific way of getting packets - at the dev level. For writing rarp and - other similar things on the user level. */ -#define SOCK_PACKET SOCK_PACKET - - /* Flags to be ORed into the type parameter of socket and socketpair and - used for the flags parameter of paccept. */ - - SOCK_CLOEXEC = 02000000, /* Atomically set close-on-exec flag for the - new descriptor(s). */ -#define SOCK_CLOEXEC SOCK_CLOEXEC - SOCK_NONBLOCK = 04000 /* Atomically mark descriptor(s) as - non-blocking. */ -#define SOCK_NONBLOCK SOCK_NONBLOCK -}; +/* Get the architecture-dependent definition of enum __socket_type. */ +#include /* Protocol families. */ #define PF_UNSPEC 0 /* Unspecified. */ diff --git a/sysdeps/unix/sysv/linux/bits/socket_type.h b/sysdeps/unix/sysv/linux/bits/socket_type.h new file mode 100644 index 0000000000..7df2b18f8e --- /dev/null +++ b/sysdeps/unix/sysv/linux/bits/socket_type.h @@ -0,0 +1,55 @@ +/* Define enum __socket_type for generic Linux. + Copyright (C) 1991-2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SYS_SOCKET_H +# error "Never include directly; use instead." +#endif + +/* Types of sockets. */ +enum __socket_type +{ + SOCK_STREAM = 1, /* Sequenced, reliable, connection-based + byte streams. */ +#define SOCK_STREAM SOCK_STREAM + SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams + of fixed maximum length. */ +#define SOCK_DGRAM SOCK_DGRAM + SOCK_RAW = 3, /* Raw protocol interface. */ +#define SOCK_RAW SOCK_RAW + SOCK_RDM = 4, /* Reliably-delivered messages. */ +#define SOCK_RDM SOCK_RDM + SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, + datagrams of fixed maximum length. */ +#define SOCK_SEQPACKET SOCK_SEQPACKET + SOCK_DCCP = 6, /* Datagram Congestion Control Protocol. */ +#define SOCK_DCCP SOCK_DCCP + SOCK_PACKET = 10, /* Linux specific way of getting packets + at the dev level. For writing rarp and + other similar things on the user level. */ +#define SOCK_PACKET SOCK_PACKET + + /* Flags to be ORed into the type parameter of socket and socketpair and + used for the flags parameter of paccept. */ + + SOCK_CLOEXEC = 02000000, /* Atomically set close-on-exec flag for the + new descriptor(s). */ +#define SOCK_CLOEXEC SOCK_CLOEXEC + SOCK_NONBLOCK = 00004000 /* Atomically mark descriptor(s) as + non-blocking. */ +#define SOCK_NONBLOCK SOCK_NONBLOCK +}; diff --git a/sysdeps/unix/sysv/linux/sparc/bits/socket.h b/sysdeps/unix/sysv/linux/sparc/bits/socket.h deleted file mode 100644 index 221009e796..0000000000 --- a/sysdeps/unix/sysv/linux/sparc/bits/socket.h +++ /dev/null @@ -1,438 +0,0 @@ -/* System-specific socket constants and types. Linux/SPARC version. - Copyright (C) 1991, 1992, 1994-2001, 2004, 2006, 2007, 2008, 2009, 2011, 2012 - Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef __BITS_SOCKET_H -#define __BITS_SOCKET_H - -#ifndef _SYS_SOCKET_H -# error "Never include directly; use instead." -#endif - -#define __need_size_t -#include - -#include - -/* Type for length arguments in socket calls. */ -#ifndef __socklen_t_defined -typedef __socklen_t socklen_t; -# define __socklen_t_defined -#endif - -/* Types of sockets. */ -enum __socket_type -{ - SOCK_STREAM = 1, /* Sequenced, reliable, connection-based - byte streams. */ -#define SOCK_STREAM SOCK_STREAM - SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams - of fixed maximum length. */ -#define SOCK_DGRAM SOCK_DGRAM - SOCK_RAW = 3, /* Raw protocol interface. */ -#define SOCK_RAW SOCK_RAW - SOCK_RDM = 4, /* Reliably-delivered messages. */ -#define SOCK_RDM SOCK_RDM - SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, - datagrams of fixed maximum length. */ -#define SOCK_SEQPACKET SOCK_SEQPACKET - SOCK_DCCP = 6, /* Datagram Congestion Control Protocol. */ -#define SOCK_DCCP SOCK_DCCP - SOCK_PACKET = 10, /* Linux specific way of getting packets - at the dev level. For writing rarp and - other similar things on the user level. */ -#define SOCK_PACKET SOCK_PACKET - - /* Flags to be ORed into the type parameter of socket and socketpair and - used for the flags parameter of paccept. */ - - SOCK_CLOEXEC = 0x400000, /* Atomically set close-on-exec flag for the - new descriptor(s). */ -#define SOCK_CLOEXEC SOCK_CLOEXEC - SOCK_NONBLOCK = 0x4000 /* Atomically mark descriptor(s) as - non-blocking. */ -#define SOCK_NONBLOCK SOCK_NONBLOCK -}; - -/* Protocol families. */ -#define PF_UNSPEC 0 /* Unspecified. */ -#define PF_LOCAL 1 /* Local to host (pipes and file-domain). */ -#define PF_UNIX PF_LOCAL /* POSIX name for PF_LOCAL. */ -#define PF_FILE PF_LOCAL /* Another non-standard name for PF_LOCAL. */ -#define PF_INET 2 /* IP protocol family. */ -#define PF_AX25 3 /* Amateur Radio AX.25. */ -#define PF_IPX 4 /* Novell Internet Protocol. */ -#define PF_APPLETALK 5 /* Appletalk DDP. */ -#define PF_NETROM 6 /* Amateur radio NetROM. */ -#define PF_BRIDGE 7 /* Multiprotocol bridge. */ -#define PF_ATMPVC 8 /* ATM PVCs. */ -#define PF_X25 9 /* Reserved for X.25 project. */ -#define PF_INET6 10 /* IP version 6. */ -#define PF_ROSE 11 /* Amateur Radio X.25 PLP. */ -#define PF_DECnet 12 /* Reserved for DECnet project. */ -#define PF_NETBEUI 13 /* Reserved for 802.2LLC project. */ -#define PF_SECURITY 14 /* Security callback pseudo AF. */ -#define PF_KEY 15 /* PF_KEY key management API. */ -#define PF_NETLINK 16 -#define PF_ROUTE PF_NETLINK /* Alias to emulate 4.4BSD. */ -#define PF_PACKET 17 /* Packet family. */ -#define PF_ASH 18 /* Ash. */ -#define PF_ECONET 19 /* Acorn Econet. */ -#define PF_ATMSVC 20 /* ATM SVCs. */ -#define PF_RDS 21 /* RDS sockets. */ -#define PF_SNA 22 /* Linux SNA Project */ -#define PF_IRDA 23 /* IRDA sockets. */ -#define PF_PPPOX 24 /* PPPoX sockets. */ -#define PF_WANPIPE 25 /* Wanpipe API sockets. */ -#define PF_LLC 26 /* Linux LLC. */ -#define PF_CAN 29 /* Controller Area Network. */ -#define PF_TIPC 30 /* TIPC sockets. */ -#define PF_BLUETOOTH 31 /* Bluetooth sockets. */ -#define PF_IUCV 32 /* IUCV sockets. */ -#define PF_RXRPC 33 /* RxRPC sockets. */ -#define PF_ISDN 34 /* mISDN sockets. */ -#define PF_PHONET 35 /* Phonet sockets. */ -#define PF_IEEE802154 36 /* IEEE 802.15.4 sockets. */ -#define PF_CAIF 37 /* CAIF sockets. */ -#define PF_ALG 38 /* Algorithm sockets. */ -#define PF_NFC 39 /* NFC sockets. */ -#define PF_MAX 40 /* For now.. */ - -/* Address families. */ -#define AF_UNSPEC PF_UNSPEC -#define AF_LOCAL PF_LOCAL -#define AF_UNIX PF_UNIX -#define AF_FILE PF_FILE -#define AF_INET PF_INET -#define AF_AX25 PF_AX25 -#define AF_IPX PF_IPX -#define AF_APPLETALK PF_APPLETALK -#define AF_NETROM PF_NETROM -#define AF_BRIDGE PF_BRIDGE -#define AF_ATMPVC PF_ATMPVC -#define AF_X25 PF_X25 -#define AF_INET6 PF_INET6 -#define AF_ROSE PF_ROSE -#define AF_DECnet PF_DECnet -#define AF_NETBEUI PF_NETBEUI -#define AF_SECURITY PF_SECURITY -#define AF_KEY PF_KEY -#define AF_NETLINK PF_NETLINK -#define AF_ROUTE PF_ROUTE -#define AF_PACKET PF_PACKET -#define AF_ASH PF_ASH -#define AF_ECONET PF_ECONET -#define AF_ATMSVC PF_ATMSVC -#define AF_RDS PF_RDS -#define AF_SNA PF_SNA -#define AF_IRDA PF_IRDA -#define AF_PPPOX PF_PPPOX -#define AF_WANPIPE PF_WANPIPE -#define AF_LLC PF_LLC -#define AF_CAN PF_CAN -#define AF_TIPC PF_TIPC -#define AF_BLUETOOTH PF_BLUETOOTH -#define AF_IUCV PF_IUCV -#define AF_RXRPC PF_RXRPC -#define AF_ISDN PF_ISDN -#define AF_PHONET PF_PHONET -#define AF_IEEE802154 PF_IEEE802154 -#define AF_CAIF PF_CAIF -#define AF_ALG PF_ALG -#define AF_NFC PF_NFC -#define AF_MAX PF_MAX - -/* Socket level values. Others are defined in the appropriate headers. - - XXX These definitions also should go into the appropriate headers as - far as they are available. */ -#define SOL_RAW 255 -#define SOL_DECNET 261 -#define SOL_X25 262 -#define SOL_PACKET 263 -#define SOL_ATM 264 /* ATM layer (cell level). */ -#define SOL_AAL 265 /* ATM Adaption Layer (packet level). */ -#define SOL_IRDA 266 - -/* Maximum queue length specifiable by listen. */ -#define SOMAXCONN 128 - -/* Get the definition of the macro to define the common sockaddr members. */ -#include - -/* Structure describing a generic socket address. */ -struct sockaddr - { - __SOCKADDR_COMMON (sa_); /* Common data: address family and length. */ - char sa_data[14]; /* Address data. */ - }; - - -/* Structure large enough to hold any socket address (with the historical - exception of AF_UNIX). We reserve 128 bytes. */ -#define __ss_aligntype unsigned long int -#define _SS_SIZE 128 -#define _SS_PADSIZE (_SS_SIZE - (2 * sizeof (__ss_aligntype))) - -struct sockaddr_storage - { - __SOCKADDR_COMMON (ss_); /* Address family, etc. */ - __ss_aligntype __ss_align; /* Force desired alignment. */ - char __ss_padding[_SS_PADSIZE]; - }; - - -/* Bits in the FLAGS argument to `send', `recv', et al. */ -enum - { - MSG_OOB = 0x01, /* Process out-of-band data. */ -#define MSG_OOB MSG_OOB - MSG_PEEK = 0x02, /* Peek at incoming messages. */ -#define MSG_PEEK MSG_PEEK - MSG_DONTROUTE = 0x04, /* Don't use local routing. */ -#define MSG_DONTROUTE MSG_DONTROUTE -#ifdef __USE_GNU - /* DECnet uses a different name. */ - MSG_TRYHARD = MSG_DONTROUTE, -# define MSG_TRYHARD MSG_DONTROUTE -#endif - MSG_CTRUNC = 0x08, /* Control data lost before delivery. */ -#define MSG_CTRUNC MSG_CTRUNC - MSG_PROXY = 0x10, /* Supply or ask second address. */ -#define MSG_PROXY MSG_PROXY - MSG_TRUNC = 0x20, -#define MSG_TRUNC MSG_TRUNC - MSG_DONTWAIT = 0x40, /* Nonblocking IO. */ -#define MSG_DONTWAIT MSG_DONTWAIT - MSG_EOR = 0x80, /* End of record. */ -#define MSG_EOR MSG_EOR - MSG_WAITALL = 0x100, /* Wait for a full request. */ -#define MSG_WAITALL MSG_WAITALL - MSG_FIN = 0x200, -#define MSG_FIN MSG_FIN - MSG_SYN = 0x400, -#define MSG_SYN MSG_SYN - MSG_CONFIRM = 0x800, /* Confirm path validity. */ -#define MSG_CONFIRM MSG_CONFIRM - MSG_RST = 0x1000, -#define MSG_RST MSG_RST - MSG_ERRQUEUE = 0x2000, /* Fetch message from error queue. */ -#define MSG_ERRQUEUE MSG_ERRQUEUE - MSG_NOSIGNAL = 0x4000, /* Do not generate SIGPIPE. */ -#define MSG_NOSIGNAL MSG_NOSIGNAL - MSG_MORE = 0x8000, /* Sender will send more. */ -#define MSG_MORE MSG_MORE - MSG_WAITFORONE = 0x10000, /* Wait for at least one packet to return.*/ -#define MSG_WAITFORONE MSG_WAITFORONE - - MSG_CMSG_CLOEXEC = 0x40000000 /* Set close_on_exit for file - descriptor received through - SCM_RIGHTS. */ -#define MSG_CMSG_CLOEXEC MSG_CMSG_CLOEXEC - }; - - -/* Structure describing messages sent by - `sendmsg' and received by `recvmsg'. */ -struct msghdr - { - void *msg_name; /* Address to send to/receive from. */ - socklen_t msg_namelen; /* Length of address data. */ - - struct iovec *msg_iov; /* Vector of data to send/receive into. */ - size_t msg_iovlen; /* Number of elements in the vector. */ - - void *msg_control; /* Ancillary data (eg BSD filedesc passing). */ - size_t msg_controllen; /* Ancillary data buffer length. - !! The type should be socklen_t but the - definition of the kernel is incompatible - with this. */ - - int msg_flags; /* Flags on received message. */ - }; - -#ifdef __USE_GNU -/* For `recvmmsg'. */ -struct mmsghdr - { - struct msghdr msg_hdr; /* Actual message header. */ - unsigned int msg_len; /* Number of received bytes for the entry. */ - }; -#endif - -/* Structure used for storage of ancillary data object information. */ -struct cmsghdr - { - size_t cmsg_len; /* Length of data in cmsg_data plus length - of cmsghdr structure. - !! The type should be socklen_t but the - definition of the kernel is incompatible - with this. */ - int cmsg_level; /* Originating protocol. */ - int cmsg_type; /* Protocol specific type. */ -#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L - __extension__ unsigned char __cmsg_data __flexarr; /* Ancillary data. */ -#endif - }; - -/* Ancillary data object manipulation macros. */ -#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L -# define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data) -#else -# define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1)) -#endif -#define CMSG_NXTHDR(mhdr, cmsg) __cmsg_nxthdr (mhdr, cmsg) -#define CMSG_FIRSTHDR(mhdr) \ - ((size_t) (mhdr)->msg_controllen >= sizeof (struct cmsghdr) \ - ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) 0) -#define CMSG_ALIGN(len) (((len) + sizeof (size_t) - 1) \ - & (size_t) ~(sizeof (size_t) - 1)) -#define CMSG_SPACE(len) (CMSG_ALIGN (len) \ - + CMSG_ALIGN (sizeof (struct cmsghdr))) -#define CMSG_LEN(len) (CMSG_ALIGN (sizeof (struct cmsghdr)) + (len)) - -extern struct cmsghdr *__cmsg_nxthdr (struct msghdr *__mhdr, - struct cmsghdr *__cmsg) __THROW; -#ifdef __USE_EXTERN_INLINES -# ifndef _EXTERN_INLINE -# define _EXTERN_INLINE __extern_inline -# endif -_EXTERN_INLINE struct cmsghdr * -__NTH (__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg)) -{ - if ((size_t) __cmsg->cmsg_len < sizeof (struct cmsghdr)) - /* The kernel header does this so there may be a reason. */ - return (struct cmsghdr *) 0; - - __cmsg = (struct cmsghdr *) ((unsigned char *) __cmsg - + CMSG_ALIGN (__cmsg->cmsg_len)); - if ((unsigned char *) (__cmsg + 1) > ((unsigned char *) __mhdr->msg_control - + __mhdr->msg_controllen) - || ((unsigned char *) __cmsg + CMSG_ALIGN (__cmsg->cmsg_len) - > ((unsigned char *) __mhdr->msg_control + __mhdr->msg_controllen))) - /* No more entries. */ - return (struct cmsghdr *) 0; - return __cmsg; -} -#endif /* Use `extern inline'. */ - -/* Socket level message types. This must match the definitions in - . */ -enum - { - SCM_RIGHTS = 0x01 /* Transfer file descriptors. */ -#define SCM_RIGHTS SCM_RIGHTS -#ifdef __USE_GNU - , SCM_CREDENTIALS = 0x02 /* Credentials passing. */ -# define SCM_CREDENTIALS SCM_CREDENTIALS -#endif - }; - -#ifdef __USE_GNU -/* User visible structure for SCM_CREDENTIALS message */ -struct ucred -{ - pid_t pid; /* PID of sending process. */ - uid_t uid; /* UID of sending process. */ - gid_t gid; /* GID of sending process. */ -}; -#endif - -/* Ugly workaround for unclean kernel headers. */ -#if !defined __USE_MISC && !defined __USE_GNU -# ifndef FIOGETOWN -# define __SYS_SOCKET_H_undef_FIOGETOWN -# endif -# ifndef FIOSETOWN -# define __SYS_SOCKET_H_undef_FIOSETOWN -# endif -# ifndef SIOCATMARK -# define __SYS_SOCKET_H_undef_SIOCATMARK -# endif -# ifndef SIOCGPGRP -# define __SYS_SOCKET_H_undef_SIOCGPGRP -# endif -# ifndef SIOCGSTAMP -# define __SYS_SOCKET_H_undef_SIOCGSTAMP -# endif -# ifndef SIOCGSTAMPNS -# define __SYS_SOCKET_H_undef_SIOCGSTAMPNS -# endif -# ifndef SIOCSPGRP -# define __SYS_SOCKET_H_undef_SIOCSPGRP -# endif -#endif - -/* Get socket manipulation related informations from kernel headers. */ -#include - -#if !defined __USE_MISC && !defined __USE_GNU -# ifdef __SYS_SOCKET_H_undef_FIOGETOWN -# undef __SYS_SOCKET_H_undef_FIOGETOWN -# undef FIOGETOWN -# endif -# ifdef __SYS_SOCKET_H_undef_FIOSETOWN -# undef __SYS_SOCKET_H_undef_FIOSETOWN -# undef FIOSETOWN -# endif -# ifdef __SYS_SOCKET_H_undef_SIOCATMARK -# undef __SYS_SOCKET_H_undef_SIOCATMARK -# undef SIOCATMARK -# endif -# ifdef __SYS_SOCKET_H_undef_SIOCGPGRP -# undef __SYS_SOCKET_H_undef_SIOCGPGRP -# undef SIOCGPGRP -# endif -# ifdef __SYS_SOCKET_H_undef_SIOCGSTAMP -# undef __SYS_SOCKET_H_undef_SIOCGSTAMP -# undef SIOCGSTAMP -# endif -# ifdef __SYS_SOCKET_H_undef_SIOCGSTAMPNS -# undef __SYS_SOCKET_H_undef_SIOCGSTAMPNS -# undef SIOCGSTAMPNS -# endif -# ifdef __SYS_SOCKET_H_undef_SIOCSPGRP -# undef __SYS_SOCKET_H_undef_SIOCSPGRP -# undef SIOCSPGRP -# endif -#endif - -/* Structure used to manipulate the SO_LINGER option. */ -struct linger - { - int l_onoff; /* Nonzero to linger on close. */ - int l_linger; /* Time to linger. */ - }; - - -__BEGIN_DECLS - -#ifdef __USE_GNU -/* Receive a message as described by MESSAGE from socket FD. - Returns the number of bytes read or -1 for errors. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int recvmmsg (int __fd, struct mmsghdr *__vmessages, - unsigned int __vlen, int __flags, - const struct timespec *__tmo); -#endif - -__END_DECLS - -#endif /* bits/socket.h */ diff --git a/sysdeps/unix/sysv/linux/sparc/bits/socket_type.h b/sysdeps/unix/sysv/linux/sparc/bits/socket_type.h new file mode 100644 index 0000000000..b9f429e80a --- /dev/null +++ b/sysdeps/unix/sysv/linux/sparc/bits/socket_type.h @@ -0,0 +1,55 @@ +/* Define enum __socket_type for Linux/SPARC. + Copyright (C) 1991-2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SYS_SOCKET_H +# error "Never include directly; use instead." +#endif + +/* Types of sockets. */ +enum __socket_type +{ + SOCK_STREAM = 1, /* Sequenced, reliable, connection-based + byte streams. */ +#define SOCK_STREAM SOCK_STREAM + SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams + of fixed maximum length. */ +#define SOCK_DGRAM SOCK_DGRAM + SOCK_RAW = 3, /* Raw protocol interface. */ +#define SOCK_RAW SOCK_RAW + SOCK_RDM = 4, /* Reliably-delivered messages. */ +#define SOCK_RDM SOCK_RDM + SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, + datagrams of fixed maximum length. */ +#define SOCK_SEQPACKET SOCK_SEQPACKET + SOCK_DCCP = 6, /* Datagram Congestion Control Protocol. */ +#define SOCK_DCCP SOCK_DCCP + SOCK_PACKET = 10, /* Linux specific way of getting packets + at the dev level. For writing rarp and + other similar things on the user level. */ +#define SOCK_PACKET SOCK_PACKET + + /* Flags to be ORed into the type parameter of socket and socketpair and + used for the flags parameter of paccept. */ + + SOCK_CLOEXEC = 0x400000, /* Atomically set close-on-exec flag for the + new descriptor(s). */ +#define SOCK_CLOEXEC SOCK_CLOEXEC + SOCK_NONBLOCK = 0x004000 /* Atomically mark descriptor(s) as + non-blocking. */ +#define SOCK_NONBLOCK SOCK_NONBLOCK +}; -- cgit 1.4.1 From 60d6f5a6f50d838bcb4240fcc0223cac445c6c83 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Fri, 9 Mar 2012 14:37:57 -0800 Subject: Fix sparc build after recent math changes. * include/math_private.h: New file. --- ChangeLog | 4 ++++ include/math_private.h | 1 + 2 files changed, 5 insertions(+) create mode 100644 include/math_private.h diff --git a/ChangeLog b/ChangeLog index 1fed786c7f..4cdf4f5e85 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2012-03-09 David S. Miller + + * include/math_private.h: New file. + 2012-03-09 Joseph Myers * sysdeps/unix/sysv/linux/bits/socket_type.h: New file. diff --git a/include/math_private.h b/include/math_private.h new file mode 100644 index 0000000000..cb71bafe8a --- /dev/null +++ b/include/math_private.h @@ -0,0 +1 @@ +#include -- cgit 1.4.1 From 1991fa031c685d5cdcfc07cfea552bd7c33804e9 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Fri, 9 Mar 2012 22:46:12 +0000 Subject: Remove __GNU_LIBRARY__ conditionals from rpcgen. --- ChangeLog | 6 ++++++ sunrpc/rpc_cout.c | 2 -- sunrpc/rpc_main.c | 46 ---------------------------------------------- sunrpc/rpc_svcout.c | 10 +--------- 4 files changed, 7 insertions(+), 57 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4cdf4f5e85..6c0390615b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2012-03-09 Joseph Myers + + * sunrpc/rpc_cout.c: Remove __GNU_LIBRARY__ conditionals. + * sunrpc/rpc_main.c: Likewise. + * sunrpc/rpc_svcout.c: Likewise. + 2012-03-09 David S. Miller * include/math_private.h: New file. diff --git a/sunrpc/rpc_cout.c b/sunrpc/rpc_cout.c index d003ad7dca..db7b571b33 100644 --- a/sunrpc/rpc_cout.c +++ b/sunrpc/rpc_cout.c @@ -416,13 +416,11 @@ emit_union (const definition * def) free (object); f_print (fout, "\t\tbreak;\n"); } -#ifdef __GNU_LIBRARY__ else { f_print (fout, "\tdefault:\n"); f_print (fout, "\t\tbreak;\n"); } -#endif } else { diff --git a/sunrpc/rpc_main.c b/sunrpc/rpc_main.c index ad1b40055d..3096455eec 100644 --- a/sunrpc/rpc_main.c +++ b/sunrpc/rpc_main.c @@ -164,18 +164,10 @@ int indefinitewait; /* If started by port monitors, hang till it wants */ int exitnow; /* If started by port monitors, exit after the call */ int timerflag; /* TRUE if !indefinite && !exitnow */ int newstyle; /* newstyle of passing arguments (by value) */ -#ifdef __GNU_LIBRARY__ int Cflag = 1; /* ANSI C syntax */ -#else -int Cflag; /* ANSI C/C++ syntax */ -#endif int CCflag; /* C++ files */ static int allfiles; /* generate all files */ -#ifdef __GNU_LIBRARY__ int tirpcflag; /* generating code for tirpc, by default */ -#else -int tirpcflag = 1; /* generating code for tirpc, by default */ -#endif xdrfunc *xdrfunc_head; /* xdr function list */ xdrfunc *xdrfunc_tail; /* xdr function list */ @@ -707,37 +699,18 @@ s_output (int argc, const char *argv[], const char *infile, const char *define, } if (!tirpcflag && inetdflag) -#ifdef __GNU_LIBRARY__ fprintf (fout, "#include /* ioctl, TIOCNOTTY */\n"); -#else - fprintf (fout, "#include /* TIOCNOTTY */\n"); -#endif if (Cflag && (inetdflag || pmflag)) { -#ifdef __GNU_LIBRARY__ fprintf (fout, "#include /* open */\n"); fprintf (fout, "#include /* open */\n"); fprintf (fout, "#include /* open */\n"); fprintf (fout, "#include /* getdtablesize */\n"); -#else - fprintf (fout, "#ifdef __cplusplus\n"); - fprintf (fout, "#include /* getdtablesize, open */\n"); - fprintf (fout, "#endif /* __cplusplus */\n"); - if (tirpcflag) - fprintf (fout, "#include /* setsid */\n"); -#endif } -#ifdef __GNU_LIBRARY__ if (tirpcflag && !(Cflag && (inetdflag || pmflag))) -#else - if (tirpcflag) -#endif fprintf (fout, "#include \n"); fprintf (fout, "#include \n"); -#ifndef __GNU_LIBRARY__ - fprintf (fout, "#include \n"); -#endif if (inetdflag || !tirpcflag) { fprintf (fout, "#include \n"); @@ -752,25 +725,13 @@ s_output (int argc, const char *argv[], const char *infile, const char *define, fprintf (fout, "#include /* rlimit */\n"); if (logflag || inetdflag || pmflag) { -#ifdef __GNU_LIBRARY__ fprintf (fout, "#include \n"); -#else - fprintf (fout, "#ifdef SYSLOG\n"); - fprintf (fout, "#include \n"); - fprintf (fout, "#else\n"); - fprintf (fout, "#define LOG_ERR 1\n"); - fprintf (fout, "#define openlog(a, b, c)\n"); - fprintf (fout, "#endif\n"); -#endif } /* for ANSI-C */ if (Cflag) fprintf (fout, "\n#ifndef SIG_PF\n#define SIG_PF void(*)(int)\n#endif\n"); -#ifndef __GNU_LIBRARY__ - fprintf (fout, "\n#ifdef DEBUG\n#define RPC_SVC_FG\n#endif\n"); -#endif if (timerflag) fprintf (fout, "\n#define _RPCSVC_CLOSEDOWN %s\n", svcclosetime); while ((def = get_definition ()) != NULL) @@ -1266,25 +1227,21 @@ parseargs (int argc, const char *argv[], struct commandline *cmd) Cflag = 1; break; -#ifdef __GNU_LIBRARY__ case 'k': /* K&R C syntax */ Cflag = 0; break; -#endif case 'b': /* turn TIRPC flag off for generating backward compatible */ tirpcflag = 0; break; -#ifdef __GNU_LIBRARY__ case '5': /* turn TIRPC flag on for generating SysVr4 compatible */ tirpcflag = 1; break; -#endif case 'I': inetdflag = 1; break; @@ -1405,9 +1362,6 @@ parseargs (int argc, const char *argv[], struct commandline *cmd) else { /* 4.1 mode */ pmflag = 0; /* set pmflag only in tirpcmode */ -#ifndef __GNU_LIBRARY__ - inetdflag = 1; /* inetdflag is TRUE by default */ -#endif if (cmd->nflag) { /* netid needs TIRPC */ f_print (stderr, _("Cannot use netid flag without TIRPC!\n")); diff --git a/sunrpc/rpc_svcout.c b/sunrpc/rpc_svcout.c index 71d9abd97d..be234aee8a 100644 --- a/sunrpc/rpc_svcout.c +++ b/sunrpc/rpc_svcout.c @@ -91,12 +91,8 @@ write_most (const char *infile /* our name */ , int netflag, int nomain) if (inetdflag || pmflag) { const char *var_type; -#ifdef __GNU_LIBRARY__ /* WHY? */ var_type = (nomain ? "extern" : ""); -#else - var_type = (nomain ? "extern" : "static"); -#endif f_print (fout, "%s int _rpcpmstart;", var_type); f_print (fout, "\t\t/* Started by a port monitor ? */\n"); if (!tirpcflag) @@ -133,7 +129,6 @@ write_most (const char *infile /* our name */ , int netflag, int nomain) if (nomain) return; -#ifdef __GNU_LIBRARY__ if (Cflag) f_print (fout, "\nint\nmain (int argc, char **argv)\n"); else @@ -142,9 +137,6 @@ write_most (const char *infile /* our name */ , int netflag, int nomain) f_print (fout, "\tint argc;\n"); f_print (fout, "\tchar **argv;\n"); } -#else - f_print (fout, "\nmain()\n"); -#endif f_print (fout, "{\n"); if (inetdflag) { @@ -812,7 +804,7 @@ write_timeout_func (void) f_print (fout, "closedown (sig)\n\tint sig;\n"); f_print (fout, "{\n"); -#if defined (__GNU_LIBRARY__) && 0 +#if 0 f_print (fout, "\t(void) signal (sig, %s closedown);\n", Cflag ? "(SIG_PF)" : "(void(*)())"); #endif -- cgit 1.4.1 From 1ed0291c3154c25633107d93e122c1b0c0f7c975 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Fri, 9 Mar 2012 11:29:16 -0800 Subject: Use <> for math.h and math_private.h everywhere. Entire tree edited via find | grep | sed. --- ChangeLog | 214 +++++++++++++++++++++++ sysdeps/i386/fpu/s_fpclassifyl.c | 2 +- sysdeps/i386/fpu/s_isinfl.c | 4 +- sysdeps/i386/fpu/s_isnanl.c | 4 +- sysdeps/i386/fpu/s_nextafterl.c | 2 +- sysdeps/i386/fpu/s_nexttoward.c | 2 +- sysdeps/i386/fpu/s_nexttowardf.c | 2 +- sysdeps/ieee754/dbl-64/branred.c | 2 +- sysdeps/ieee754/dbl-64/doasin.c | 2 +- sysdeps/ieee754/dbl-64/dosincos.c | 2 +- sysdeps/ieee754/dbl-64/e_acosh.c | 4 +- sysdeps/ieee754/dbl-64/e_asin.c | 2 +- sysdeps/ieee754/dbl-64/e_atan2.c | 2 +- sysdeps/ieee754/dbl-64/e_atanh.c | 4 +- sysdeps/ieee754/dbl-64/e_cosh.c | 4 +- sysdeps/ieee754/dbl-64/e_exp.c | 2 +- sysdeps/ieee754/dbl-64/e_fmod.c | 4 +- sysdeps/ieee754/dbl-64/e_hypot.c | 4 +- sysdeps/ieee754/dbl-64/e_j0.c | 4 +- sysdeps/ieee754/dbl-64/e_j1.c | 4 +- sysdeps/ieee754/dbl-64/e_jn.c | 4 +- sysdeps/ieee754/dbl-64/e_lgamma_r.c | 4 +- sysdeps/ieee754/dbl-64/e_log.c | 2 +- sysdeps/ieee754/dbl-64/e_log10.c | 4 +- sysdeps/ieee754/dbl-64/e_log2.c | 4 +- sysdeps/ieee754/dbl-64/e_pow.c | 2 +- sysdeps/ieee754/dbl-64/e_rem_pio2.c | 4 +- sysdeps/ieee754/dbl-64/e_remainder.c | 2 +- sysdeps/ieee754/dbl-64/e_sinh.c | 4 +- sysdeps/ieee754/dbl-64/e_sqrt.c | 2 +- sysdeps/ieee754/dbl-64/halfulp.c | 2 +- sysdeps/ieee754/dbl-64/k_rem_pio2.c | 4 +- sysdeps/ieee754/dbl-64/s_asinh.c | 4 +- sysdeps/ieee754/dbl-64/s_atan.c | 2 +- sysdeps/ieee754/dbl-64/s_cbrt.c | 4 +- sysdeps/ieee754/dbl-64/s_ceil.c | 4 +- sysdeps/ieee754/dbl-64/s_copysign.c | 4 +- sysdeps/ieee754/dbl-64/s_erf.c | 4 +- sysdeps/ieee754/dbl-64/s_expm1.c | 4 +- sysdeps/ieee754/dbl-64/s_fabs.c | 4 +- sysdeps/ieee754/dbl-64/s_finite.c | 4 +- sysdeps/ieee754/dbl-64/s_floor.c | 4 +- sysdeps/ieee754/dbl-64/s_fpclassify.c | 2 +- sysdeps/ieee754/dbl-64/s_frexp.c | 4 +- sysdeps/ieee754/dbl-64/s_ilogb.c | 4 +- sysdeps/ieee754/dbl-64/s_isinf.c | 4 +- sysdeps/ieee754/dbl-64/s_isinf_ns.c | 4 +- sysdeps/ieee754/dbl-64/s_isnan.c | 4 +- sysdeps/ieee754/dbl-64/s_llrint.c | 2 +- sysdeps/ieee754/dbl-64/s_llround.c | 2 +- sysdeps/ieee754/dbl-64/s_log1p.c | 4 +- sysdeps/ieee754/dbl-64/s_logb.c | 4 +- sysdeps/ieee754/dbl-64/s_lrint.c | 2 +- sysdeps/ieee754/dbl-64/s_lround.c | 2 +- sysdeps/ieee754/dbl-64/s_modf.c | 4 +- sysdeps/ieee754/dbl-64/s_nearbyint.c | 4 +- sysdeps/ieee754/dbl-64/s_remquo.c | 2 +- sysdeps/ieee754/dbl-64/s_rint.c | 4 +- sysdeps/ieee754/dbl-64/s_round.c | 2 +- sysdeps/ieee754/dbl-64/s_scalbln.c | 4 +- sysdeps/ieee754/dbl-64/s_scalbn.c | 4 +- sysdeps/ieee754/dbl-64/s_signbit.c | 2 +- sysdeps/ieee754/dbl-64/s_sin.c | 2 +- sysdeps/ieee754/dbl-64/s_sincos.c | 2 +- sysdeps/ieee754/dbl-64/s_tan.c | 4 +- sysdeps/ieee754/dbl-64/s_tanh.c | 4 +- sysdeps/ieee754/dbl-64/s_trunc.c | 2 +- sysdeps/ieee754/dbl-64/sincos32.c | 2 +- sysdeps/ieee754/dbl-64/slowexp.c | 2 +- sysdeps/ieee754/dbl-64/slowpow.c | 2 +- sysdeps/ieee754/dbl-64/wordsize-64/e_acosh.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/e_fmod.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/s_isinf.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/s_isinf_ns.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/s_logb.c | 2 +- sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c | 2 +- sysdeps/ieee754/dbl-64/wordsize-64/s_modf.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/s_remquo.c | 2 +- sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/s_round.c | 2 +- sysdeps/ieee754/dbl-64/wordsize-64/s_scalbln.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c | 4 +- sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c | 2 +- sysdeps/ieee754/flt-32/e_acosf.c | 4 +- sysdeps/ieee754/flt-32/e_acoshf.c | 4 +- sysdeps/ieee754/flt-32/e_asinf.c | 4 +- sysdeps/ieee754/flt-32/e_atan2f.c | 4 +- sysdeps/ieee754/flt-32/e_atanhf.c | 4 +- sysdeps/ieee754/flt-32/e_coshf.c | 4 +- sysdeps/ieee754/flt-32/e_fmodf.c | 4 +- sysdeps/ieee754/flt-32/e_hypotf.c | 4 +- sysdeps/ieee754/flt-32/e_j0f.c | 4 +- sysdeps/ieee754/flt-32/e_j1f.c | 4 +- sysdeps/ieee754/flt-32/e_jnf.c | 4 +- sysdeps/ieee754/flt-32/e_lgammaf_r.c | 4 +- sysdeps/ieee754/flt-32/e_log10f.c | 4 +- sysdeps/ieee754/flt-32/e_log2f.c | 4 +- sysdeps/ieee754/flt-32/e_logf.c | 4 +- sysdeps/ieee754/flt-32/e_powf.c | 4 +- sysdeps/ieee754/flt-32/e_rem_pio2f.c | 4 +- sysdeps/ieee754/flt-32/e_remainderf.c | 4 +- sysdeps/ieee754/flt-32/e_sinhf.c | 4 +- sysdeps/ieee754/flt-32/e_sqrtf.c | 4 +- sysdeps/ieee754/flt-32/k_cosf.c | 4 +- sysdeps/ieee754/flt-32/k_rem_pio2f.c | 4 +- sysdeps/ieee754/flt-32/k_sinf.c | 4 +- sysdeps/ieee754/flt-32/k_tanf.c | 4 +- sysdeps/ieee754/flt-32/s_asinhf.c | 4 +- sysdeps/ieee754/flt-32/s_atanf.c | 4 +- sysdeps/ieee754/flt-32/s_cbrtf.c | 4 +- sysdeps/ieee754/flt-32/s_ceilf.c | 4 +- sysdeps/ieee754/flt-32/s_copysignf.c | 4 +- sysdeps/ieee754/flt-32/s_cosf.c | 4 +- sysdeps/ieee754/flt-32/s_erff.c | 4 +- sysdeps/ieee754/flt-32/s_expm1f.c | 4 +- sysdeps/ieee754/flt-32/s_fabsf.c | 4 +- sysdeps/ieee754/flt-32/s_finitef.c | 4 +- sysdeps/ieee754/flt-32/s_floorf.c | 4 +- sysdeps/ieee754/flt-32/s_fpclassifyf.c | 2 +- sysdeps/ieee754/flt-32/s_frexpf.c | 4 +- sysdeps/ieee754/flt-32/s_ilogbf.c | 4 +- sysdeps/ieee754/flt-32/s_isinf_nsf.c | 4 +- sysdeps/ieee754/flt-32/s_isinff.c | 4 +- sysdeps/ieee754/flt-32/s_isnanf.c | 4 +- sysdeps/ieee754/flt-32/s_llrintf.c | 2 +- sysdeps/ieee754/flt-32/s_llroundf.c | 2 +- sysdeps/ieee754/flt-32/s_log1pf.c | 4 +- sysdeps/ieee754/flt-32/s_logbf.c | 4 +- sysdeps/ieee754/flt-32/s_lrintf.c | 2 +- sysdeps/ieee754/flt-32/s_lroundf.c | 2 +- sysdeps/ieee754/flt-32/s_modff.c | 4 +- sysdeps/ieee754/flt-32/s_nearbyintf.c | 4 +- sysdeps/ieee754/flt-32/s_nextafterf.c | 2 +- sysdeps/ieee754/flt-32/s_remquof.c | 2 +- sysdeps/ieee754/flt-32/s_rintf.c | 4 +- sysdeps/ieee754/flt-32/s_roundf.c | 2 +- sysdeps/ieee754/flt-32/s_scalblnf.c | 4 +- sysdeps/ieee754/flt-32/s_scalbnf.c | 4 +- sysdeps/ieee754/flt-32/s_signbitf.c | 2 +- sysdeps/ieee754/flt-32/s_sincosf.c | 2 +- sysdeps/ieee754/flt-32/s_sinf.c | 4 +- sysdeps/ieee754/flt-32/s_tanf.c | 4 +- sysdeps/ieee754/flt-32/s_tanhf.c | 4 +- sysdeps/ieee754/flt-32/s_truncf.c | 2 +- sysdeps/ieee754/k_standard.c | 4 +- sysdeps/ieee754/ldbl-128/e_acoshl.c | 4 +- sysdeps/ieee754/ldbl-128/e_acosl.c | 4 +- sysdeps/ieee754/ldbl-128/e_asinl.c | 4 +- sysdeps/ieee754/ldbl-128/e_atan2l.c | 4 +- sysdeps/ieee754/ldbl-128/e_atanhl.c | 4 +- sysdeps/ieee754/ldbl-128/e_coshl.c | 4 +- sysdeps/ieee754/ldbl-128/e_fmodl.c | 4 +- sysdeps/ieee754/ldbl-128/e_hypotl.c | 4 +- sysdeps/ieee754/ldbl-128/e_j0l.c | 4 +- sysdeps/ieee754/ldbl-128/e_j1l.c | 4 +- sysdeps/ieee754/ldbl-128/e_jnl.c | 4 +- sysdeps/ieee754/ldbl-128/e_lgammal_r.c | 4 +- sysdeps/ieee754/ldbl-128/e_log10l.c | 4 +- sysdeps/ieee754/ldbl-128/e_log2l.c | 4 +- sysdeps/ieee754/ldbl-128/e_logl.c | 2 +- sysdeps/ieee754/ldbl-128/e_powl.c | 4 +- sysdeps/ieee754/ldbl-128/e_rem_pio2l.c | 4 +- sysdeps/ieee754/ldbl-128/e_remainderl.c | 4 +- sysdeps/ieee754/ldbl-128/e_sinhl.c | 4 +- sysdeps/ieee754/ldbl-128/k_cosl.c | 4 +- sysdeps/ieee754/ldbl-128/k_sincosl.c | 4 +- sysdeps/ieee754/ldbl-128/k_sinl.c | 4 +- sysdeps/ieee754/ldbl-128/k_tanl.c | 4 +- sysdeps/ieee754/ldbl-128/s_asinhl.c | 4 +- sysdeps/ieee754/ldbl-128/s_atanl.c | 2 +- sysdeps/ieee754/ldbl-128/s_cbrtl.c | 4 +- sysdeps/ieee754/ldbl-128/s_ceill.c | 4 +- sysdeps/ieee754/ldbl-128/s_copysignl.c | 4 +- sysdeps/ieee754/ldbl-128/s_cosl.c | 4 +- sysdeps/ieee754/ldbl-128/s_erfl.c | 4 +- sysdeps/ieee754/ldbl-128/s_expm1l.c | 4 +- sysdeps/ieee754/ldbl-128/s_fabsl.c | 4 +- sysdeps/ieee754/ldbl-128/s_finitel.c | 4 +- sysdeps/ieee754/ldbl-128/s_floorl.c | 4 +- sysdeps/ieee754/ldbl-128/s_fpclassifyl.c | 2 +- sysdeps/ieee754/ldbl-128/s_frexpl.c | 4 +- sysdeps/ieee754/ldbl-128/s_ilogbl.c | 4 +- sysdeps/ieee754/ldbl-128/s_isinf_nsl.c | 4 +- sysdeps/ieee754/ldbl-128/s_isinfl.c | 4 +- sysdeps/ieee754/ldbl-128/s_isnanl.c | 4 +- sysdeps/ieee754/ldbl-128/s_llrintl.c | 2 +- sysdeps/ieee754/ldbl-128/s_llroundl.c | 2 +- sysdeps/ieee754/ldbl-128/s_log1pl.c | 4 +- sysdeps/ieee754/ldbl-128/s_logbl.c | 4 +- sysdeps/ieee754/ldbl-128/s_lrintl.c | 2 +- sysdeps/ieee754/ldbl-128/s_lroundl.c | 2 +- sysdeps/ieee754/ldbl-128/s_modfl.c | 4 +- sysdeps/ieee754/ldbl-128/s_nearbyintl.c | 4 +- sysdeps/ieee754/ldbl-128/s_nextafterl.c | 2 +- sysdeps/ieee754/ldbl-128/s_nexttoward.c | 2 +- sysdeps/ieee754/ldbl-128/s_nexttowardf.c | 4 +- sysdeps/ieee754/ldbl-128/s_remquol.c | 2 +- sysdeps/ieee754/ldbl-128/s_rintl.c | 4 +- sysdeps/ieee754/ldbl-128/s_roundl.c | 2 +- sysdeps/ieee754/ldbl-128/s_scalblnl.c | 4 +- sysdeps/ieee754/ldbl-128/s_scalbnl.c | 4 +- sysdeps/ieee754/ldbl-128/s_signbitl.c | 2 +- sysdeps/ieee754/ldbl-128/s_sincosl.c | 2 +- sysdeps/ieee754/ldbl-128/s_sinl.c | 4 +- sysdeps/ieee754/ldbl-128/s_tanhl.c | 4 +- sysdeps/ieee754/ldbl-128/s_tanl.c | 4 +- sysdeps/ieee754/ldbl-128/s_truncl.c | 2 +- sysdeps/ieee754/ldbl-128/w_expl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_acoshl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_acosl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_asinl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_atan2l.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_atanhl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_coshl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_fmodl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_hypotl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_jnl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_log10l.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_log2l.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_logl.c | 2 +- sysdeps/ieee754/ldbl-128ibm/e_powl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_remainderl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/e_sinhl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/k_cosl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/k_sincosl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/k_sinl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/k_tanl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_asinhl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_atanl.c | 2 +- sysdeps/ieee754/ldbl-128ibm/s_copysignl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_cosl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_ctanhl.c | 2 +- sysdeps/ieee754/ldbl-128ibm/s_ctanl.c | 2 +- sysdeps/ieee754/ldbl-128ibm/s_erfl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_expm1l.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_fabsl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_finitel.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c | 2 +- sysdeps/ieee754/ldbl-128ibm/s_frexpl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_ilogbl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_isinfl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_isnanl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_log1pl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_logbl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_modfl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c | 2 +- sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c | 2 +- sysdeps/ieee754/ldbl-128ibm/s_remquol.c | 2 +- sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_signbitl.c | 2 +- sysdeps/ieee754/ldbl-128ibm/s_sincosl.c | 2 +- sysdeps/ieee754/ldbl-128ibm/s_sinl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_tanhl.c | 4 +- sysdeps/ieee754/ldbl-128ibm/s_tanl.c | 4 +- sysdeps/ieee754/ldbl-96/e_acoshl.c | 4 +- sysdeps/ieee754/ldbl-96/e_asinl.c | 4 +- sysdeps/ieee754/ldbl-96/e_atan2l.c | 4 +- sysdeps/ieee754/ldbl-96/e_atanhl.c | 4 +- sysdeps/ieee754/ldbl-96/e_coshl.c | 4 +- sysdeps/ieee754/ldbl-96/e_hypotl.c | 4 +- sysdeps/ieee754/ldbl-96/e_j0l.c | 4 +- sysdeps/ieee754/ldbl-96/e_j1l.c | 4 +- sysdeps/ieee754/ldbl-96/e_jnl.c | 4 +- sysdeps/ieee754/ldbl-96/e_lgammal_r.c | 4 +- sysdeps/ieee754/ldbl-96/e_remainderl.c | 4 +- sysdeps/ieee754/ldbl-96/e_sinhl.c | 4 +- sysdeps/ieee754/ldbl-96/s_asinhl.c | 4 +- sysdeps/ieee754/ldbl-96/s_cbrtl.c | 4 +- sysdeps/ieee754/ldbl-96/s_ceill.c | 4 +- sysdeps/ieee754/ldbl-96/s_copysignl.c | 4 +- sysdeps/ieee754/ldbl-96/s_cosl.c | 4 +- sysdeps/ieee754/ldbl-96/s_erfl.c | 4 +- sysdeps/ieee754/ldbl-96/s_fabsl.c | 4 +- sysdeps/ieee754/ldbl-96/s_finitel.c | 4 +- sysdeps/ieee754/ldbl-96/s_floorl.c | 4 +- sysdeps/ieee754/ldbl-96/s_fpclassifyl.c | 2 +- sysdeps/ieee754/ldbl-96/s_frexpl.c | 4 +- sysdeps/ieee754/ldbl-96/s_ilogbl.c | 4 +- sysdeps/ieee754/ldbl-96/s_isinf_nsl.c | 4 +- sysdeps/ieee754/ldbl-96/s_isinfl.c | 4 +- sysdeps/ieee754/ldbl-96/s_isnanl.c | 4 +- sysdeps/ieee754/ldbl-96/s_llrintl.c | 2 +- sysdeps/ieee754/ldbl-96/s_llroundl.c | 2 +- sysdeps/ieee754/ldbl-96/s_logbl.c | 4 +- sysdeps/ieee754/ldbl-96/s_lrintl.c | 2 +- sysdeps/ieee754/ldbl-96/s_lroundl.c | 2 +- sysdeps/ieee754/ldbl-96/s_modfl.c | 4 +- sysdeps/ieee754/ldbl-96/s_nearbyintl.c | 4 +- sysdeps/ieee754/ldbl-96/s_nextafterl.c | 2 +- sysdeps/ieee754/ldbl-96/s_nexttoward.c | 2 +- sysdeps/ieee754/ldbl-96/s_nexttowardf.c | 2 +- sysdeps/ieee754/ldbl-96/s_remquol.c | 2 +- sysdeps/ieee754/ldbl-96/s_rintl.c | 4 +- sysdeps/ieee754/ldbl-96/s_roundl.c | 2 +- sysdeps/ieee754/ldbl-96/s_scalblnl.c | 4 +- sysdeps/ieee754/ldbl-96/s_scalbnl.c | 4 +- sysdeps/ieee754/ldbl-96/s_signbitl.c | 2 +- sysdeps/ieee754/ldbl-96/s_sincosl.c | 2 +- sysdeps/ieee754/ldbl-96/s_sinl.c | 4 +- sysdeps/ieee754/ldbl-96/s_tanhl.c | 4 +- sysdeps/ieee754/ldbl-96/s_tanl.c | 4 +- sysdeps/ieee754/ldbl-96/s_truncl.c | 2 +- sysdeps/ieee754/s_lib_version.c | 4 +- sysdeps/ieee754/s_matherr.c | 4 +- sysdeps/ieee754/s_signgam.c | 4 +- sysdeps/powerpc/fpu/e_hypot.c | 4 +- sysdeps/powerpc/fpu/e_hypotf.c | 4 +- sysdeps/powerpc/fpu/e_rem_pio2f.c | 2 +- sysdeps/powerpc/fpu/k_cosf.c | 4 +- sysdeps/powerpc/fpu/k_rem_pio2f.c | 2 +- sysdeps/powerpc/fpu/k_sinf.c | 4 +- sysdeps/powerpc/fpu/s_cosf.c | 4 +- sysdeps/powerpc/fpu/s_float_bitwise.h | 2 +- sysdeps/powerpc/fpu/s_isnan.c | 2 +- sysdeps/powerpc/fpu/s_rint.c | 2 +- sysdeps/powerpc/fpu/s_rintf.c | 2 +- sysdeps/powerpc/fpu/s_sinf.c | 4 +- sysdeps/powerpc/fpu/w_sqrt.c | 4 +- sysdeps/powerpc/fpu/w_sqrtf.c | 4 +- sysdeps/powerpc/powerpc32/fpu/s_llrintf.c | 2 +- sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c | 2 +- sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c | 2 +- sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c | 2 +- sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c | 2 +- sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c | 4 +- sysdeps/powerpc/powerpc64/power4/fpu/w_sqrtf.c | 4 +- 336 files changed, 790 insertions(+), 576 deletions(-) diff --git a/ChangeLog b/ChangeLog index 6c0390615b..096a32b219 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,217 @@ +2012-03-09 Richard Henderson + + * sysdeps/i386/fpu/s_fpclassifyl.c, sysdeps/i386/fpu/s_isinfl.c, + sysdeps/i386/fpu/s_isnanl.c, sysdeps/i386/fpu/s_nextafterl.c, + sysdeps/i386/fpu/s_nexttoward.c, sysdeps/i386/fpu/s_nexttowardf.c, + sysdeps/ieee754/dbl-64/branred.c, sysdeps/ieee754/dbl-64/doasin.c, + sysdeps/ieee754/dbl-64/dosincos.c, sysdeps/ieee754/dbl-64/e_acosh.c, + sysdeps/ieee754/dbl-64/e_asin.c, sysdeps/ieee754/dbl-64/e_atan2.c, + sysdeps/ieee754/dbl-64/e_atanh.c, sysdeps/ieee754/dbl-64/e_cosh.c, + sysdeps/ieee754/dbl-64/e_exp.c, sysdeps/ieee754/dbl-64/e_fmod.c, + sysdeps/ieee754/dbl-64/e_hypot.c, sysdeps/ieee754/dbl-64/e_j0.c, + sysdeps/ieee754/dbl-64/e_j1.c, sysdeps/ieee754/dbl-64/e_jn.c, + sysdeps/ieee754/dbl-64/e_lgamma_r.c, sysdeps/ieee754/dbl-64/e_log.c, + sysdeps/ieee754/dbl-64/e_log10.c, sysdeps/ieee754/dbl-64/e_log2.c, + sysdeps/ieee754/dbl-64/e_pow.c, sysdeps/ieee754/dbl-64/e_rem_pio2.c, + sysdeps/ieee754/dbl-64/e_remainder.c, sysdeps/ieee754/dbl-64/e_sinh.c, + sysdeps/ieee754/dbl-64/e_sqrt.c, sysdeps/ieee754/dbl-64/halfulp.c, + sysdeps/ieee754/dbl-64/k_rem_pio2.c, sysdeps/ieee754/dbl-64/s_asinh.c, + sysdeps/ieee754/dbl-64/s_atan.c, sysdeps/ieee754/dbl-64/s_cbrt.c, + sysdeps/ieee754/dbl-64/s_ceil.c, sysdeps/ieee754/dbl-64/s_copysign.c, + sysdeps/ieee754/dbl-64/s_erf.c, sysdeps/ieee754/dbl-64/s_expm1.c, + sysdeps/ieee754/dbl-64/s_fabs.c, sysdeps/ieee754/dbl-64/s_finite.c, + sysdeps/ieee754/dbl-64/s_floor.c, sysdeps/ieee754/dbl-64/s_fpclassify.c, + sysdeps/ieee754/dbl-64/s_frexp.c, sysdeps/ieee754/dbl-64/s_ilogb.c, + sysdeps/ieee754/dbl-64/s_isinf.c, sysdeps/ieee754/dbl-64/s_isinf_ns.c, + sysdeps/ieee754/dbl-64/s_isnan.c, sysdeps/ieee754/dbl-64/s_llrint.c, + sysdeps/ieee754/dbl-64/s_llround.c, sysdeps/ieee754/dbl-64/s_log1p.c, + sysdeps/ieee754/dbl-64/s_logb.c, sysdeps/ieee754/dbl-64/s_lrint.c, + sysdeps/ieee754/dbl-64/s_lround.c, sysdeps/ieee754/dbl-64/s_modf.c, + sysdeps/ieee754/dbl-64/s_nearbyint.c, sysdeps/ieee754/dbl-64/s_remquo.c, + sysdeps/ieee754/dbl-64/s_rint.c, sysdeps/ieee754/dbl-64/s_round.c, + sysdeps/ieee754/dbl-64/s_scalbln.c, sysdeps/ieee754/dbl-64/s_scalbn.c, + sysdeps/ieee754/dbl-64/s_signbit.c, sysdeps/ieee754/dbl-64/s_sin.c, + sysdeps/ieee754/dbl-64/s_sincos.c, sysdeps/ieee754/dbl-64/s_tan.c, + sysdeps/ieee754/dbl-64/s_tanh.c, sysdeps/ieee754/dbl-64/s_trunc.c, + sysdeps/ieee754/dbl-64/sincos32.c, sysdeps/ieee754/dbl-64/slowexp.c, + sysdeps/ieee754/dbl-64/slowpow.c, + sysdeps/ieee754/dbl-64/wordsize-64/e_acosh.c, + sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c, + sysdeps/ieee754/dbl-64/wordsize-64/e_fmod.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_isinf.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_isinf_ns.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_logb.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_modf.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_remquo.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_round.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_scalbln.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c, + sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c, + sysdeps/ieee754/flt-32/e_acosf.c, sysdeps/ieee754/flt-32/e_acoshf.c, + sysdeps/ieee754/flt-32/e_asinf.c, sysdeps/ieee754/flt-32/e_atan2f.c, + sysdeps/ieee754/flt-32/e_atanhf.c, sysdeps/ieee754/flt-32/e_coshf.c, + sysdeps/ieee754/flt-32/e_fmodf.c, sysdeps/ieee754/flt-32/e_hypotf.c, + sysdeps/ieee754/flt-32/e_j0f.c, sysdeps/ieee754/flt-32/e_j1f.c, + sysdeps/ieee754/flt-32/e_jnf.c, sysdeps/ieee754/flt-32/e_lgammaf_r.c, + sysdeps/ieee754/flt-32/e_log10f.c, sysdeps/ieee754/flt-32/e_log2f.c, + sysdeps/ieee754/flt-32/e_logf.c, sysdeps/ieee754/flt-32/e_powf.c, + sysdeps/ieee754/flt-32/e_rem_pio2f.c, + sysdeps/ieee754/flt-32/e_remainderf.c, + sysdeps/ieee754/flt-32/e_sinhf.c, sysdeps/ieee754/flt-32/e_sqrtf.c, + sysdeps/ieee754/flt-32/k_cosf.c, sysdeps/ieee754/flt-32/k_rem_pio2f.c, + sysdeps/ieee754/flt-32/k_sinf.c, sysdeps/ieee754/flt-32/k_tanf.c, + sysdeps/ieee754/flt-32/s_asinhf.c, sysdeps/ieee754/flt-32/s_atanf.c, + sysdeps/ieee754/flt-32/s_cbrtf.c, sysdeps/ieee754/flt-32/s_ceilf.c, + sysdeps/ieee754/flt-32/s_copysignf.c, sysdeps/ieee754/flt-32/s_cosf.c, + sysdeps/ieee754/flt-32/s_erff.c, sysdeps/ieee754/flt-32/s_expm1f.c, + sysdeps/ieee754/flt-32/s_fabsf.c, sysdeps/ieee754/flt-32/s_finitef.c, + sysdeps/ieee754/flt-32/s_floorf.c, sysdeps/ieee754/flt-32/s_fpclassifyf.c, + sysdeps/ieee754/flt-32/s_frexpf.c, sysdeps/ieee754/flt-32/s_ilogbf.c, + sysdeps/ieee754/flt-32/s_isinf_nsf.c, sysdeps/ieee754/flt-32/s_isinff.c, + sysdeps/ieee754/flt-32/s_isnanf.c, sysdeps/ieee754/flt-32/s_llrintf.c, + sysdeps/ieee754/flt-32/s_llroundf.c, sysdeps/ieee754/flt-32/s_log1pf.c, + sysdeps/ieee754/flt-32/s_logbf.c, sysdeps/ieee754/flt-32/s_lrintf.c, + sysdeps/ieee754/flt-32/s_lroundf.c, sysdeps/ieee754/flt-32/s_modff.c, + sysdeps/ieee754/flt-32/s_nearbyintf.c, + sysdeps/ieee754/flt-32/s_nextafterf.c, + sysdeps/ieee754/flt-32/s_remquof.c, sysdeps/ieee754/flt-32/s_rintf.c, + sysdeps/ieee754/flt-32/s_roundf.c, sysdeps/ieee754/flt-32/s_scalblnf.c, + sysdeps/ieee754/flt-32/s_scalbnf.c, sysdeps/ieee754/flt-32/s_signbitf.c, + sysdeps/ieee754/flt-32/s_sincosf.c, sysdeps/ieee754/flt-32/s_sinf.c, + sysdeps/ieee754/flt-32/s_tanf.c, sysdeps/ieee754/flt-32/s_tanhf.c, + sysdeps/ieee754/flt-32/s_truncf.c, sysdeps/ieee754/k_standard.c, + sysdeps/ieee754/ldbl-128/e_acoshl.c, sysdeps/ieee754/ldbl-128/e_acosl.c, + sysdeps/ieee754/ldbl-128/e_asinl.c, sysdeps/ieee754/ldbl-128/e_atan2l.c, + sysdeps/ieee754/ldbl-128/e_atanhl.c, sysdeps/ieee754/ldbl-128/e_coshl.c, + sysdeps/ieee754/ldbl-128/e_fmodl.c, sysdeps/ieee754/ldbl-128/e_hypotl.c, + sysdeps/ieee754/ldbl-128/e_j0l.c, sysdeps/ieee754/ldbl-128/e_j1l.c, + sysdeps/ieee754/ldbl-128/e_jnl.c, sysdeps/ieee754/ldbl-128/e_lgammal_r.c, + sysdeps/ieee754/ldbl-128/e_log10l.c, sysdeps/ieee754/ldbl-128/e_log2l.c, + sysdeps/ieee754/ldbl-128/e_logl.c, sysdeps/ieee754/ldbl-128/e_powl.c, + sysdeps/ieee754/ldbl-128/e_rem_pio2l.c, + sysdeps/ieee754/ldbl-128/e_remainderl.c, + sysdeps/ieee754/ldbl-128/e_sinhl.c, sysdeps/ieee754/ldbl-128/k_cosl.c, + sysdeps/ieee754/ldbl-128/k_sincosl.c, sysdeps/ieee754/ldbl-128/k_sinl.c, + sysdeps/ieee754/ldbl-128/k_tanl.c, sysdeps/ieee754/ldbl-128/s_asinhl.c, + sysdeps/ieee754/ldbl-128/s_atanl.c, sysdeps/ieee754/ldbl-128/s_cbrtl.c, + sysdeps/ieee754/ldbl-128/s_ceill.c, sysdeps/ieee754/ldbl-128/s_copysignl.c, + sysdeps/ieee754/ldbl-128/s_cosl.c, sysdeps/ieee754/ldbl-128/s_erfl.c, + sysdeps/ieee754/ldbl-128/s_expm1l.c, sysdeps/ieee754/ldbl-128/s_fabsl.c, + sysdeps/ieee754/ldbl-128/s_finitel.c, sysdeps/ieee754/ldbl-128/s_floorl.c, + sysdeps/ieee754/ldbl-128/s_fpclassifyl.c, + sysdeps/ieee754/ldbl-128/s_frexpl.c, sysdeps/ieee754/ldbl-128/s_ilogbl.c, + sysdeps/ieee754/ldbl-128/s_isinf_nsl.c, + sysdeps/ieee754/ldbl-128/s_isinfl.c, sysdeps/ieee754/ldbl-128/s_isnanl.c, + sysdeps/ieee754/ldbl-128/s_llrintl.c, sysdeps/ieee754/ldbl-128/s_llroundl.c, + sysdeps/ieee754/ldbl-128/s_log1pl.c, sysdeps/ieee754/ldbl-128/s_logbl.c, + sysdeps/ieee754/ldbl-128/s_lrintl.c, sysdeps/ieee754/ldbl-128/s_lroundl.c, + sysdeps/ieee754/ldbl-128/s_modfl.c, sysdeps/ieee754/ldbl-128/s_nearbyintl.c, + sysdeps/ieee754/ldbl-128/s_nextafterl.c, + sysdeps/ieee754/ldbl-128/s_nexttoward.c, + sysdeps/ieee754/ldbl-128/s_nexttowardf.c, + sysdeps/ieee754/ldbl-128/s_remquol.c, sysdeps/ieee754/ldbl-128/s_rintl.c, + sysdeps/ieee754/ldbl-128/s_roundl.c, sysdeps/ieee754/ldbl-128/s_scalblnl.c, + sysdeps/ieee754/ldbl-128/s_scalbnl.c, sysdeps/ieee754/ldbl-128/s_signbitl.c, + sysdeps/ieee754/ldbl-128/s_sincosl.c, sysdeps/ieee754/ldbl-128/s_sinl.c, + sysdeps/ieee754/ldbl-128/s_tanhl.c, sysdeps/ieee754/ldbl-128/s_tanl.c, + sysdeps/ieee754/ldbl-128/s_truncl.c, sysdeps/ieee754/ldbl-128/w_expl.c, + sysdeps/ieee754/ldbl-128ibm/e_acoshl.c, + sysdeps/ieee754/ldbl-128ibm/e_acosl.c, + sysdeps/ieee754/ldbl-128ibm/e_asinl.c, + sysdeps/ieee754/ldbl-128ibm/e_atan2l.c, + sysdeps/ieee754/ldbl-128ibm/e_atanhl.c, + sysdeps/ieee754/ldbl-128ibm/e_coshl.c, + sysdeps/ieee754/ldbl-128ibm/e_fmodl.c, + sysdeps/ieee754/ldbl-128ibm/e_hypotl.c, + sysdeps/ieee754/ldbl-128ibm/e_jnl.c, + sysdeps/ieee754/ldbl-128ibm/e_log10l.c, + sysdeps/ieee754/ldbl-128ibm/e_log2l.c, + sysdeps/ieee754/ldbl-128ibm/e_logl.c, sysdeps/ieee754/ldbl-128ibm/e_powl.c, + sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c, + sysdeps/ieee754/ldbl-128ibm/e_remainderl.c, + sysdeps/ieee754/ldbl-128ibm/e_sinhl.c, sysdeps/ieee754/ldbl-128ibm/k_cosl.c, + sysdeps/ieee754/ldbl-128ibm/k_sincosl.c, + sysdeps/ieee754/ldbl-128ibm/k_sinl.c, sysdeps/ieee754/ldbl-128ibm/k_tanl.c, + sysdeps/ieee754/ldbl-128ibm/s_asinhl.c, + sysdeps/ieee754/ldbl-128ibm/s_atanl.c, + sysdeps/ieee754/ldbl-128ibm/s_copysignl.c, + sysdeps/ieee754/ldbl-128ibm/s_cosl.c, + sysdeps/ieee754/ldbl-128ibm/s_ctanhl.c, + sysdeps/ieee754/ldbl-128ibm/s_ctanl.c, + sysdeps/ieee754/ldbl-128ibm/s_erfl.c, + sysdeps/ieee754/ldbl-128ibm/s_expm1l.c, + sysdeps/ieee754/ldbl-128ibm/s_fabsl.c, + sysdeps/ieee754/ldbl-128ibm/s_finitel.c, + sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c, + sysdeps/ieee754/ldbl-128ibm/s_frexpl.c, + sysdeps/ieee754/ldbl-128ibm/s_ilogbl.c, + sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c, + sysdeps/ieee754/ldbl-128ibm/s_isinfl.c, + sysdeps/ieee754/ldbl-128ibm/s_isnanl.c, + sysdeps/ieee754/ldbl-128ibm/s_log1pl.c, + sysdeps/ieee754/ldbl-128ibm/s_logbl.c, + sysdeps/ieee754/ldbl-128ibm/s_modfl.c, + sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c, + sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c, + sysdeps/ieee754/ldbl-128ibm/s_remquol.c, + sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c, + sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c, + sysdeps/ieee754/ldbl-128ibm/s_signbitl.c, + sysdeps/ieee754/ldbl-128ibm/s_sincosl.c, + sysdeps/ieee754/ldbl-128ibm/s_sinl.c, + sysdeps/ieee754/ldbl-128ibm/s_tanhl.c, + sysdeps/ieee754/ldbl-128ibm/s_tanl.c, + sysdeps/ieee754/ldbl-96/e_acoshl.c, sysdeps/ieee754/ldbl-96/e_asinl.c, + sysdeps/ieee754/ldbl-96/e_atan2l.c, sysdeps/ieee754/ldbl-96/e_atanhl.c, + sysdeps/ieee754/ldbl-96/e_coshl.c, sysdeps/ieee754/ldbl-96/e_hypotl.c, + sysdeps/ieee754/ldbl-96/e_j0l.c, sysdeps/ieee754/ldbl-96/e_j1l.c, + sysdeps/ieee754/ldbl-96/e_jnl.c, sysdeps/ieee754/ldbl-96/e_lgammal_r.c, + sysdeps/ieee754/ldbl-96/e_remainderl.c, sysdeps/ieee754/ldbl-96/e_sinhl.c, + sysdeps/ieee754/ldbl-96/s_asinhl.c, sysdeps/ieee754/ldbl-96/s_cbrtl.c, + sysdeps/ieee754/ldbl-96/s_ceill.c, sysdeps/ieee754/ldbl-96/s_copysignl.c, + sysdeps/ieee754/ldbl-96/s_cosl.c, sysdeps/ieee754/ldbl-96/s_erfl.c, + sysdeps/ieee754/ldbl-96/s_fabsl.c, sysdeps/ieee754/ldbl-96/s_finitel.c, + sysdeps/ieee754/ldbl-96/s_floorl.c, sysdeps/ieee754/ldbl-96/s_fpclassifyl.c, + sysdeps/ieee754/ldbl-96/s_frexpl.c, sysdeps/ieee754/ldbl-96/s_ilogbl.c, + sysdeps/ieee754/ldbl-96/s_isinf_nsl.c, sysdeps/ieee754/ldbl-96/s_isinfl.c, + sysdeps/ieee754/ldbl-96/s_isnanl.c, sysdeps/ieee754/ldbl-96/s_llrintl.c, + sysdeps/ieee754/ldbl-96/s_llroundl.c, sysdeps/ieee754/ldbl-96/s_logbl.c, + sysdeps/ieee754/ldbl-96/s_lrintl.c, sysdeps/ieee754/ldbl-96/s_lroundl.c, + sysdeps/ieee754/ldbl-96/s_modfl.c, sysdeps/ieee754/ldbl-96/s_nearbyintl.c, + sysdeps/ieee754/ldbl-96/s_nextafterl.c, + sysdeps/ieee754/ldbl-96/s_nexttoward.c, + sysdeps/ieee754/ldbl-96/s_nexttowardf.c, + sysdeps/ieee754/ldbl-96/s_remquol.c, sysdeps/ieee754/ldbl-96/s_rintl.c, + sysdeps/ieee754/ldbl-96/s_roundl.c, sysdeps/ieee754/ldbl-96/s_scalblnl.c, + sysdeps/ieee754/ldbl-96/s_scalbnl.c, sysdeps/ieee754/ldbl-96/s_signbitl.c, + sysdeps/ieee754/ldbl-96/s_sincosl.c, sysdeps/ieee754/ldbl-96/s_sinl.c, + sysdeps/ieee754/ldbl-96/s_tanhl.c, sysdeps/ieee754/ldbl-96/s_tanl.c, + sysdeps/ieee754/ldbl-96/s_truncl.c, sysdeps/ieee754/s_lib_version.c, + sysdeps/ieee754/s_matherr.c, sysdeps/ieee754/s_signgam.c, + sysdeps/powerpc/fpu/e_hypot.c, sysdeps/powerpc/fpu/e_hypotf.c, + sysdeps/powerpc/fpu/e_rem_pio2f.c, sysdeps/powerpc/fpu/k_cosf.c, + sysdeps/powerpc/fpu/k_rem_pio2f.c, sysdeps/powerpc/fpu/k_sinf.c, + sysdeps/powerpc/fpu/s_cosf.c, sysdeps/powerpc/fpu/s_float_bitwise.h, + sysdeps/powerpc/fpu/s_isnan.c, sysdeps/powerpc/fpu/s_rint.c, + sysdeps/powerpc/fpu/s_rintf.c, sysdeps/powerpc/fpu/s_sinf.c, + sysdeps/powerpc/fpu/w_sqrt.c, sysdeps/powerpc/fpu/w_sqrtf.c, + sysdeps/powerpc/powerpc32/fpu/s_llrintf.c, + sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c, + sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c, + sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c, + sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c, + sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c, + sysdeps/powerpc/powerpc64/power4/fpu/w_sqrtf.c: Use <> to include both + and . + 2012-03-09 Joseph Myers * sunrpc/rpc_cout.c: Remove __GNU_LIBRARY__ conditionals. diff --git a/sysdeps/i386/fpu/s_fpclassifyl.c b/sysdeps/i386/fpu/s_fpclassifyl.c index c7fd703cb6..3643db9254 100644 --- a/sysdeps/i386/fpu/s_fpclassifyl.c +++ b/sysdeps/i386/fpu/s_fpclassifyl.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include int diff --git a/sysdeps/i386/fpu/s_isinfl.c b/sysdeps/i386/fpu/s_isinfl.c index 7c9a82beda..cdd77183fa 100644 --- a/sysdeps/i386/fpu/s_isinfl.c +++ b/sysdeps/i386/fpu/s_isinfl.c @@ -14,8 +14,8 @@ static char rcsid[] = "$NetBSD: $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include int __isinfl(long double x) { diff --git a/sysdeps/i386/fpu/s_isnanl.c b/sysdeps/i386/fpu/s_isnanl.c index b00ee8832f..816396d8fb 100644 --- a/sysdeps/i386/fpu/s_isnanl.c +++ b/sysdeps/i386/fpu/s_isnanl.c @@ -23,8 +23,8 @@ static char rcsid[] = "$NetBSD: $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include int __isnanl(long double x) { diff --git a/sysdeps/i386/fpu/s_nextafterl.c b/sysdeps/i386/fpu/s_nextafterl.c index f0325b7fcd..bafe7437fa 100644 --- a/sysdeps/i386/fpu/s_nextafterl.c +++ b/sysdeps/i386/fpu/s_nextafterl.c @@ -26,7 +26,7 @@ static char rcsid[] = "$NetBSD: $"; * Special cases: */ -#include "math.h" +#include #include long double __nextafterl(long double x, long double y) diff --git a/sysdeps/i386/fpu/s_nexttoward.c b/sysdeps/i386/fpu/s_nexttoward.c index 075d0fd989..e5f0164ce1 100644 --- a/sysdeps/i386/fpu/s_nexttoward.c +++ b/sysdeps/i386/fpu/s_nexttoward.c @@ -26,7 +26,7 @@ static char rcsid[] = "$NetBSD: $"; * Special cases: */ -#include "math.h" +#include #include #include diff --git a/sysdeps/i386/fpu/s_nexttowardf.c b/sysdeps/i386/fpu/s_nexttowardf.c index 0a540403e1..89e8771481 100644 --- a/sysdeps/i386/fpu/s_nexttowardf.c +++ b/sysdeps/i386/fpu/s_nexttowardf.c @@ -18,7 +18,7 @@ static char rcsid[] = "$NetBSD: $"; #endif -#include "math.h" +#include #include #include diff --git a/sysdeps/ieee754/dbl-64/branred.c b/sysdeps/ieee754/dbl-64/branred.c index 5b19c8ed8f..a32daa990d 100644 --- a/sysdeps/ieee754/dbl-64/branred.c +++ b/sysdeps/ieee754/dbl-64/branred.c @@ -35,7 +35,7 @@ #include "endian.h" #include "mydefs.h" #include "branred.h" -#include "math_private.h" +#include #ifndef SECTION # define SECTION diff --git a/sysdeps/ieee754/dbl-64/doasin.c b/sysdeps/ieee754/dbl-64/doasin.c index c48ae364df..c041612b60 100644 --- a/sysdeps/ieee754/dbl-64/doasin.c +++ b/sysdeps/ieee754/dbl-64/doasin.c @@ -31,7 +31,7 @@ #include "endian.h" #include "mydefs.h" #include -#include "math_private.h" +#include #ifndef SECTION # define SECTION diff --git a/sysdeps/ieee754/dbl-64/dosincos.c b/sysdeps/ieee754/dbl-64/dosincos.c index c201d28cf0..e472438a95 100644 --- a/sysdeps/ieee754/dbl-64/dosincos.c +++ b/sysdeps/ieee754/dbl-64/dosincos.c @@ -36,7 +36,7 @@ #include "mydefs.h" #include #include "dosincos.h" -#include "math_private.h" +#include #ifndef SECTION # define SECTION diff --git a/sysdeps/ieee754/dbl-64/e_acosh.c b/sysdeps/ieee754/dbl-64/e_acosh.c index 6ef10cb84b..b24a6f6459 100644 --- a/sysdeps/ieee754/dbl-64/e_acosh.c +++ b/sysdeps/ieee754/dbl-64/e_acosh.c @@ -24,8 +24,8 @@ * acosh(NaN) is NaN without signal. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double one = 1.0, diff --git a/sysdeps/ieee754/dbl-64/e_asin.c b/sysdeps/ieee754/dbl-64/e_asin.c index 056650df2e..a9b1bc2165 100644 --- a/sysdeps/ieee754/dbl-64/e_asin.c +++ b/sysdeps/ieee754/dbl-64/e_asin.c @@ -39,7 +39,7 @@ #include "powtwo.tbl" #include "MathLib.h" #include "uasncs.h" -#include "math_private.h" +#include #ifndef SECTION # define SECTION diff --git a/sysdeps/ieee754/dbl-64/e_atan2.c b/sysdeps/ieee754/dbl-64/e_atan2.c index d25e3f9c94..dcef55f072 100644 --- a/sysdeps/ieee754/dbl-64/e_atan2.c +++ b/sysdeps/ieee754/dbl-64/e_atan2.c @@ -41,7 +41,7 @@ #include "MathLib.h" #include "uatan.tbl" #include "atnat2.h" -#include "math_private.h" +#include #ifndef SECTION # define SECTION diff --git a/sysdeps/ieee754/dbl-64/e_atanh.c b/sysdeps/ieee754/dbl-64/e_atanh.c index 5f471b1d79..6cec1093c3 100644 --- a/sysdeps/ieee754/dbl-64/e_atanh.c +++ b/sysdeps/ieee754/dbl-64/e_atanh.c @@ -36,8 +36,8 @@ */ #include -#include "math.h" -#include "math_private.h" +#include +#include static const double huge = 1e300; diff --git a/sysdeps/ieee754/dbl-64/e_cosh.c b/sysdeps/ieee754/dbl-64/e_cosh.c index b9f79e47a9..229d5a2fb3 100644 --- a/sysdeps/ieee754/dbl-64/e_cosh.c +++ b/sysdeps/ieee754/dbl-64/e_cosh.c @@ -31,8 +31,8 @@ * only cosh(0)=1 is exact for finite x. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double one = 1.0, half=0.5, huge = 1.0e300; diff --git a/sysdeps/ieee754/dbl-64/e_exp.c b/sysdeps/ieee754/dbl-64/e_exp.c index 8231c5698c..cb8d9e8d9d 100644 --- a/sysdeps/ieee754/dbl-64/e_exp.c +++ b/sysdeps/ieee754/dbl-64/e_exp.c @@ -37,7 +37,7 @@ #include "mydefs.h" #include "MathLib.h" #include "uexp.tbl" -#include "math_private.h" +#include #include #ifndef SECTION diff --git a/sysdeps/ieee754/dbl-64/e_fmod.c b/sysdeps/ieee754/dbl-64/e_fmod.c index 0328b011d2..b8548fae4b 100644 --- a/sysdeps/ieee754/dbl-64/e_fmod.c +++ b/sysdeps/ieee754/dbl-64/e_fmod.c @@ -15,8 +15,8 @@ * Method: shift and subtract */ -#include "math.h" -#include "math_private.h" +#include +#include static const double one = 1.0, Zero[] = {0.0, -0.0,}; diff --git a/sysdeps/ieee754/dbl-64/e_hypot.c b/sysdeps/ieee754/dbl-64/e_hypot.c index a89ccaa35e..2dd681cf1a 100644 --- a/sysdeps/ieee754/dbl-64/e_hypot.c +++ b/sysdeps/ieee754/dbl-64/e_hypot.c @@ -42,8 +42,8 @@ * than 1 ulps (units in the last place) */ -#include "math.h" -#include "math_private.h" +#include +#include double __ieee754_hypot(double x, double y) diff --git a/sysdeps/ieee754/dbl-64/e_j0.c b/sysdeps/ieee754/dbl-64/e_j0.c index 48584a60b4..f393a762b2 100644 --- a/sysdeps/ieee754/dbl-64/e_j0.c +++ b/sysdeps/ieee754/dbl-64/e_j0.c @@ -58,8 +58,8 @@ * 3. Special cases: y0(0)=-inf, y0(x<0)=NaN, y0(inf)=0. */ -#include "math.h" -#include "math_private.h" +#include +#include static double pzero(double), qzero(double); diff --git a/sysdeps/ieee754/dbl-64/e_j1.c b/sysdeps/ieee754/dbl-64/e_j1.c index fdc6b5b896..cba4d46b18 100644 --- a/sysdeps/ieee754/dbl-64/e_j1.c +++ b/sysdeps/ieee754/dbl-64/e_j1.c @@ -58,8 +58,8 @@ * by method mentioned above. */ -#include "math.h" -#include "math_private.h" +#include +#include static double pone(double), qone(double); diff --git a/sysdeps/ieee754/dbl-64/e_jn.c b/sysdeps/ieee754/dbl-64/e_jn.c index f8b8e2ee6a..63788c5a24 100644 --- a/sysdeps/ieee754/dbl-64/e_jn.c +++ b/sysdeps/ieee754/dbl-64/e_jn.c @@ -36,8 +36,8 @@ * */ -#include "math.h" -#include "math_private.h" +#include +#include static const double invsqrtpi= 5.64189583547756279280e-01, /* 0x3FE20DD7, 0x50429B6D */ diff --git a/sysdeps/ieee754/dbl-64/e_lgamma_r.c b/sysdeps/ieee754/dbl-64/e_lgamma_r.c index e26ce8a247..af7d06c82f 100644 --- a/sysdeps/ieee754/dbl-64/e_lgamma_r.c +++ b/sysdeps/ieee754/dbl-64/e_lgamma_r.c @@ -77,8 +77,8 @@ * */ -#include "math.h" -#include "math_private.h" +#include +#include static const double two52= 4.50359962737049600000e+15, /* 0x43300000, 0x00000000 */ diff --git a/sysdeps/ieee754/dbl-64/e_log.c b/sysdeps/ieee754/dbl-64/e_log.c index 97657d2941..15f3dccce3 100644 --- a/sysdeps/ieee754/dbl-64/e_log.c +++ b/sysdeps/ieee754/dbl-64/e_log.c @@ -38,7 +38,7 @@ #include #include "mpa.h" #include "MathLib.h" -#include "math_private.h" +#include #ifndef SECTION # define SECTION diff --git a/sysdeps/ieee754/dbl-64/e_log10.c b/sysdeps/ieee754/dbl-64/e_log10.c index 6a630bcef7..9fce937085 100644 --- a/sysdeps/ieee754/dbl-64/e_log10.c +++ b/sysdeps/ieee754/dbl-64/e_log10.c @@ -43,8 +43,8 @@ * shown. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double two54 = 1.80143985094819840000e+16, /* 0x43500000, 0x00000000 */ diff --git a/sysdeps/ieee754/dbl-64/e_log2.c b/sysdeps/ieee754/dbl-64/e_log2.c index be41cb4e68..6891ee2389 100644 --- a/sysdeps/ieee754/dbl-64/e_log2.c +++ b/sysdeps/ieee754/dbl-64/e_log2.c @@ -54,8 +54,8 @@ * to produce the hexadecimal values shown. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double ln2 = 0.69314718055994530942, diff --git a/sysdeps/ieee754/dbl-64/e_pow.c b/sysdeps/ieee754/dbl-64/e_pow.c index f668b4b5fc..550633cf9b 100644 --- a/sysdeps/ieee754/dbl-64/e_pow.c +++ b/sysdeps/ieee754/dbl-64/e_pow.c @@ -40,7 +40,7 @@ #include "mydefs.h" #include "MathLib.h" #include "upow.tbl" -#include "math_private.h" +#include #include #ifndef SECTION diff --git a/sysdeps/ieee754/dbl-64/e_rem_pio2.c b/sysdeps/ieee754/dbl-64/e_rem_pio2.c index a82b291dd5..4478be0b07 100644 --- a/sysdeps/ieee754/dbl-64/e_rem_pio2.c +++ b/sysdeps/ieee754/dbl-64/e_rem_pio2.c @@ -17,8 +17,8 @@ * use __kernel_rem_pio2() */ -#include "math.h" -#include "math_private.h" +#include +#include /* * Table of constants for 2/pi, 396 Hex digits (476 decimal) of 2/pi diff --git a/sysdeps/ieee754/dbl-64/e_remainder.c b/sysdeps/ieee754/dbl-64/e_remainder.c index af4730cf9e..304b45d95f 100644 --- a/sysdeps/ieee754/dbl-64/e_remainder.c +++ b/sysdeps/ieee754/dbl-64/e_remainder.c @@ -33,7 +33,7 @@ #include "mydefs.h" #include "urem.h" #include "MathLib.h" -#include "math_private.h" +#include /**************************************************************************/ /* An ultimate remainder routine. Given two IEEE double machine numbers x */ diff --git a/sysdeps/ieee754/dbl-64/e_sinh.c b/sysdeps/ieee754/dbl-64/e_sinh.c index 50463c3048..b954100baa 100644 --- a/sysdeps/ieee754/dbl-64/e_sinh.c +++ b/sysdeps/ieee754/dbl-64/e_sinh.c @@ -32,8 +32,8 @@ static char rcsid[] = "$NetBSD: e_sinh.c,v 1.7 1995/05/10 20:46:13 jtc Exp $"; * only sinh(0)=0 is exact for finite x. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double one = 1.0, shuge = 1.0e307; diff --git a/sysdeps/ieee754/dbl-64/e_sqrt.c b/sysdeps/ieee754/dbl-64/e_sqrt.c index 33fec43d98..3dc64c7d50 100644 --- a/sysdeps/ieee754/dbl-64/e_sqrt.c +++ b/sysdeps/ieee754/dbl-64/e_sqrt.c @@ -37,7 +37,7 @@ #include #include "MathLib.h" #include "root.tbl" -#include "math_private.h" +#include /*********************************************************************/ /* An ultimate sqrt routine. Given an IEEE double machine number x */ diff --git a/sysdeps/ieee754/dbl-64/halfulp.c b/sysdeps/ieee754/dbl-64/halfulp.c index 4ddd109cb6..33c14e1aa0 100644 --- a/sysdeps/ieee754/dbl-64/halfulp.c +++ b/sysdeps/ieee754/dbl-64/halfulp.c @@ -37,7 +37,7 @@ #include "endian.h" #include "mydefs.h" #include -#include "math_private.h" +#include #ifndef SECTION # define SECTION diff --git a/sysdeps/ieee754/dbl-64/k_rem_pio2.c b/sysdeps/ieee754/dbl-64/k_rem_pio2.c index 53be066e05..a1e0c6d72d 100644 --- a/sysdeps/ieee754/dbl-64/k_rem_pio2.c +++ b/sysdeps/ieee754/dbl-64/k_rem_pio2.c @@ -130,8 +130,8 @@ static char rcsid[] = "$NetBSD: k_rem_pio2.c,v 1.7 1995/05/10 20:46:25 jtc Exp $ * to produce the hexadecimal values shown. */ -#include "math.h" -#include "math_private.h" +#include +#include static const int init_jk[] = {2,3,4,6}; /* initial value for jk */ diff --git a/sysdeps/ieee754/dbl-64/s_asinh.c b/sysdeps/ieee754/dbl-64/s_asinh.c index 93789fb41e..68e854f5f4 100644 --- a/sysdeps/ieee754/dbl-64/s_asinh.c +++ b/sysdeps/ieee754/dbl-64/s_asinh.c @@ -21,8 +21,8 @@ * := sign(x)*log1p(|x| + x^2/(1 + sqrt(1+x^2))) */ -#include "math.h" -#include "math_private.h" +#include +#include static const double one = 1.00000000000000000000e+00, /* 0x3FF00000, 0x00000000 */ diff --git a/sysdeps/ieee754/dbl-64/s_atan.c b/sysdeps/ieee754/dbl-64/s_atan.c index 545b818dcb..4e125deb45 100644 --- a/sysdeps/ieee754/dbl-64/s_atan.c +++ b/sysdeps/ieee754/dbl-64/s_atan.c @@ -41,7 +41,7 @@ #include "MathLib.h" #include "uatan.tbl" #include "atnat.h" -#include "math.h" +#include void __mpatan(mp_no *,mp_no *,int); /* see definition in mpatan.c */ static double atanMp(double,const int[]); diff --git a/sysdeps/ieee754/dbl-64/s_cbrt.c b/sysdeps/ieee754/dbl-64/s_cbrt.c index 114b862fcf..30bd3a630d 100644 --- a/sysdeps/ieee754/dbl-64/s_cbrt.c +++ b/sysdeps/ieee754/dbl-64/s_cbrt.c @@ -18,8 +18,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include #define CBRT2 1.2599210498948731648 /* 2^(1/3) */ diff --git a/sysdeps/ieee754/dbl-64/s_ceil.c b/sysdeps/ieee754/dbl-64/s_ceil.c index de50e29bf2..e048c81c20 100644 --- a/sysdeps/ieee754/dbl-64/s_ceil.c +++ b/sysdeps/ieee754/dbl-64/s_ceil.c @@ -19,8 +19,8 @@ * Inexact flag raised if x not equal to ceil(x). */ -#include "math.h" -#include "math_private.h" +#include +#include static const double huge = 1.0e300; diff --git a/sysdeps/ieee754/dbl-64/s_copysign.c b/sysdeps/ieee754/dbl-64/s_copysign.c index 63f3bd3ccc..a541ceb05d 100644 --- a/sysdeps/ieee754/dbl-64/s_copysign.c +++ b/sysdeps/ieee754/dbl-64/s_copysign.c @@ -20,8 +20,8 @@ static char rcsid[] = "$NetBSD: s_copysign.c,v 1.8 1995/05/10 20:46:57 jtc Exp $ * with the sign bit of y. */ -#include "math.h" -#include "math_private.h" +#include +#include double __copysign(double x, double y) { diff --git a/sysdeps/ieee754/dbl-64/s_erf.c b/sysdeps/ieee754/dbl-64/s_erf.c index 97d7e34ffa..e25e28d9d5 100644 --- a/sysdeps/ieee754/dbl-64/s_erf.c +++ b/sysdeps/ieee754/dbl-64/s_erf.c @@ -112,8 +112,8 @@ static char rcsid[] = "$NetBSD: s_erf.c,v 1.8 1995/05/10 20:47:05 jtc Exp $"; */ -#include "math.h" -#include "math_private.h" +#include +#include static const double tiny = 1e-300, diff --git a/sysdeps/ieee754/dbl-64/s_expm1.c b/sysdeps/ieee754/dbl-64/s_expm1.c index 589128c08c..1a4bcd979a 100644 --- a/sysdeps/ieee754/dbl-64/s_expm1.c +++ b/sysdeps/ieee754/dbl-64/s_expm1.c @@ -109,8 +109,8 @@ */ #include -#include "math.h" -#include "math_private.h" +#include +#include #define one Q[0] static const double huge = 1.0e+300, diff --git a/sysdeps/ieee754/dbl-64/s_fabs.c b/sysdeps/ieee754/dbl-64/s_fabs.c index 6dca1dec06..86f1d52be6 100644 --- a/sysdeps/ieee754/dbl-64/s_fabs.c +++ b/sysdeps/ieee754/dbl-64/s_fabs.c @@ -18,8 +18,8 @@ static char rcsid[] = "$NetBSD: s_fabs.c,v 1.7 1995/05/10 20:47:13 jtc Exp $"; * fabs(x) returns the absolute value of x. */ -#include "math.h" -#include "math_private.h" +#include +#include double __fabs(double x) { diff --git a/sysdeps/ieee754/dbl-64/s_finite.c b/sysdeps/ieee754/dbl-64/s_finite.c index cf3d8d8914..47dad5df2c 100644 --- a/sysdeps/ieee754/dbl-64/s_finite.c +++ b/sysdeps/ieee754/dbl-64/s_finite.c @@ -19,8 +19,8 @@ static char rcsid[] = "$NetBSD: s_finite.c,v 1.8 1995/05/10 20:47:17 jtc Exp $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include #undef __finite int __finite(double x) diff --git a/sysdeps/ieee754/dbl-64/s_floor.c b/sysdeps/ieee754/dbl-64/s_floor.c index 139e2f5cb5..5c7297842c 100644 --- a/sysdeps/ieee754/dbl-64/s_floor.c +++ b/sysdeps/ieee754/dbl-64/s_floor.c @@ -19,8 +19,8 @@ * Inexact flag raised if x not equal to floor(x). */ -#include "math.h" -#include "math_private.h" +#include +#include static const double huge = 1.0e300; diff --git a/sysdeps/ieee754/dbl-64/s_fpclassify.c b/sysdeps/ieee754/dbl-64/s_fpclassify.c index 311b814c40..4884b377f8 100644 --- a/sysdeps/ieee754/dbl-64/s_fpclassify.c +++ b/sysdeps/ieee754/dbl-64/s_fpclassify.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include int diff --git a/sysdeps/ieee754/dbl-64/s_frexp.c b/sysdeps/ieee754/dbl-64/s_frexp.c index e927274178..516f561a17 100644 --- a/sysdeps/ieee754/dbl-64/s_frexp.c +++ b/sysdeps/ieee754/dbl-64/s_frexp.c @@ -24,8 +24,8 @@ static char rcsid[] = "$NetBSD: s_frexp.c,v 1.9 1995/05/10 20:47:24 jtc Exp $"; * with *exp=0. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double two54 = 1.80143985094819840000e+16; /* 0x43500000, 0x00000000 */ diff --git a/sysdeps/ieee754/dbl-64/s_ilogb.c b/sysdeps/ieee754/dbl-64/s_ilogb.c index a2395a10a2..05c66d70fe 100644 --- a/sysdeps/ieee754/dbl-64/s_ilogb.c +++ b/sysdeps/ieee754/dbl-64/s_ilogb.c @@ -22,8 +22,8 @@ static char rcsid[] = "$NetBSD: s_ilogb.c,v 1.9 1995/05/10 20:47:28 jtc Exp $"; */ #include -#include "math.h" -#include "math_private.h" +#include +#include int __ilogb(double x) { diff --git a/sysdeps/ieee754/dbl-64/s_isinf.c b/sysdeps/ieee754/dbl-64/s_isinf.c index 24b29ae013..886b346f51 100644 --- a/sysdeps/ieee754/dbl-64/s_isinf.c +++ b/sysdeps/ieee754/dbl-64/s_isinf.c @@ -13,8 +13,8 @@ static char rcsid[] = "$NetBSD: s_isinf.c,v 1.3 1995/05/11 23:20:14 jtc Exp $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include int __isinf (double x) diff --git a/sysdeps/ieee754/dbl-64/s_isinf_ns.c b/sysdeps/ieee754/dbl-64/s_isinf_ns.c index 065522ed80..0ce50352c7 100644 --- a/sysdeps/ieee754/dbl-64/s_isinf_ns.c +++ b/sysdeps/ieee754/dbl-64/s_isinf_ns.c @@ -7,8 +7,8 @@ * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include #undef __isinf_ns int diff --git a/sysdeps/ieee754/dbl-64/s_isnan.c b/sysdeps/ieee754/dbl-64/s_isnan.c index c87eb69b18..f8958dcbbf 100644 --- a/sysdeps/ieee754/dbl-64/s_isnan.c +++ b/sysdeps/ieee754/dbl-64/s_isnan.c @@ -19,8 +19,8 @@ static char rcsid[] = "$NetBSD: s_isnan.c,v 1.8 1995/05/10 20:47:36 jtc Exp $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include #undef __isnan int __isnan(double x) diff --git a/sysdeps/ieee754/dbl-64/s_llrint.c b/sysdeps/ieee754/dbl-64/s_llrint.c index b80fdb6dde..5bb50090cd 100644 --- a/sysdeps/ieee754/dbl-64/s_llrint.c +++ b/sysdeps/ieee754/dbl-64/s_llrint.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include static const double two52[2] = { diff --git a/sysdeps/ieee754/dbl-64/s_llround.c b/sysdeps/ieee754/dbl-64/s_llround.c index 6d931062e0..89516bae59 100644 --- a/sysdeps/ieee754/dbl-64/s_llround.c +++ b/sysdeps/ieee754/dbl-64/s_llround.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include long long int diff --git a/sysdeps/ieee754/dbl-64/s_log1p.c b/sysdeps/ieee754/dbl-64/s_log1p.c index f82048f204..e3e6860966 100644 --- a/sysdeps/ieee754/dbl-64/s_log1p.c +++ b/sysdeps/ieee754/dbl-64/s_log1p.c @@ -78,8 +78,8 @@ * See HP-15C Advanced Functions Handbook, p.193. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double ln2_hi = 6.93147180369123816490e-01, /* 3fe62e42 fee00000 */ diff --git a/sysdeps/ieee754/dbl-64/s_logb.c b/sysdeps/ieee754/dbl-64/s_logb.c index 46743c0cbf..2382fbb414 100644 --- a/sysdeps/ieee754/dbl-64/s_logb.c +++ b/sysdeps/ieee754/dbl-64/s_logb.c @@ -20,8 +20,8 @@ static char rcsid[] = "$NetBSD: s_logb.c,v 1.8 1995/05/10 20:47:50 jtc Exp $"; * Use ilogb instead. */ -#include "math.h" -#include "math_private.h" +#include +#include double __logb(double x) { diff --git a/sysdeps/ieee754/dbl-64/s_lrint.c b/sysdeps/ieee754/dbl-64/s_lrint.c index 61dc164ac2..d1561bfd25 100644 --- a/sysdeps/ieee754/dbl-64/s_lrint.c +++ b/sysdeps/ieee754/dbl-64/s_lrint.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include static const double two52[2] = { diff --git a/sysdeps/ieee754/dbl-64/s_lround.c b/sysdeps/ieee754/dbl-64/s_lround.c index 523cc7c6a5..4cb9ca42f4 100644 --- a/sysdeps/ieee754/dbl-64/s_lround.c +++ b/sysdeps/ieee754/dbl-64/s_lround.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include long int diff --git a/sysdeps/ieee754/dbl-64/s_modf.c b/sysdeps/ieee754/dbl-64/s_modf.c index a884de5d5f..b9911c1af6 100644 --- a/sysdeps/ieee754/dbl-64/s_modf.c +++ b/sysdeps/ieee754/dbl-64/s_modf.c @@ -19,8 +19,8 @@ * No exception. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double one = 1.0; diff --git a/sysdeps/ieee754/dbl-64/s_nearbyint.c b/sysdeps/ieee754/dbl-64/s_nearbyint.c index 184fa70177..d780150a90 100644 --- a/sysdeps/ieee754/dbl-64/s_nearbyint.c +++ b/sysdeps/ieee754/dbl-64/s_nearbyint.c @@ -25,8 +25,8 @@ static char rcsid[] = "$NetBSD: s_rint.c,v 1.8 1995/05/10 20:48:04 jtc Exp $"; */ #include -#include "math.h" -#include "math_private.h" +#include +#include static const double TWO52[2]={ diff --git a/sysdeps/ieee754/dbl-64/s_remquo.c b/sysdeps/ieee754/dbl-64/s_remquo.c index 4498c564da..174dde40f8 100644 --- a/sysdeps/ieee754/dbl-64/s_remquo.c +++ b/sysdeps/ieee754/dbl-64/s_remquo.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include static const double zero = 0.0; diff --git a/sysdeps/ieee754/dbl-64/s_rint.c b/sysdeps/ieee754/dbl-64/s_rint.c index a671a6277e..c45d7848d7 100644 --- a/sysdeps/ieee754/dbl-64/s_rint.c +++ b/sysdeps/ieee754/dbl-64/s_rint.c @@ -20,8 +20,8 @@ * Inexact flag raised if x not equal to rint(x). */ -#include "math.h" -#include "math_private.h" +#include +#include static const double TWO52[2]={ diff --git a/sysdeps/ieee754/dbl-64/s_round.c b/sysdeps/ieee754/dbl-64/s_round.c index 12b0b3749f..046d5863ad 100644 --- a/sysdeps/ieee754/dbl-64/s_round.c +++ b/sysdeps/ieee754/dbl-64/s_round.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include static const double huge = 1.0e300; diff --git a/sysdeps/ieee754/dbl-64/s_scalbln.c b/sysdeps/ieee754/dbl-64/s_scalbln.c index b5903c97d0..271a24c3ea 100644 --- a/sysdeps/ieee754/dbl-64/s_scalbln.c +++ b/sysdeps/ieee754/dbl-64/s_scalbln.c @@ -16,8 +16,8 @@ * exponentiation or a multiplication. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double two54 = 1.80143985094819840000e+16, /* 0x43500000, 0x00000000 */ diff --git a/sysdeps/ieee754/dbl-64/s_scalbn.c b/sysdeps/ieee754/dbl-64/s_scalbn.c index c2488fbbee..1f302557ef 100644 --- a/sysdeps/ieee754/dbl-64/s_scalbn.c +++ b/sysdeps/ieee754/dbl-64/s_scalbn.c @@ -16,8 +16,8 @@ * exponentiation or a multiplication. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double two54 = 1.80143985094819840000e+16, /* 0x43500000, 0x00000000 */ diff --git a/sysdeps/ieee754/dbl-64/s_signbit.c b/sysdeps/ieee754/dbl-64/s_signbit.c index c893ad36d1..3e576f7a31 100644 --- a/sysdeps/ieee754/dbl-64/s_signbit.c +++ b/sysdeps/ieee754/dbl-64/s_signbit.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include int __signbit (double x) diff --git a/sysdeps/ieee754/dbl-64/s_sin.c b/sysdeps/ieee754/dbl-64/s_sin.c index 32ba66d1a0..e3e3a2a965 100644 --- a/sysdeps/ieee754/dbl-64/s_sin.c +++ b/sysdeps/ieee754/dbl-64/s_sin.c @@ -52,7 +52,7 @@ #include "mydefs.h" #include "usncs.h" #include "MathLib.h" -#include "math_private.h" +#include #include #ifndef SECTION diff --git a/sysdeps/ieee754/dbl-64/s_sincos.c b/sysdeps/ieee754/dbl-64/s_sincos.c index 73258b352b..4d55c71dad 100644 --- a/sysdeps/ieee754/dbl-64/s_sincos.c +++ b/sysdeps/ieee754/dbl-64/s_sincos.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include void diff --git a/sysdeps/ieee754/dbl-64/s_tan.c b/sysdeps/ieee754/dbl-64/s_tan.c index 2c26756ff2..acff67c987 100644 --- a/sysdeps/ieee754/dbl-64/s_tan.c +++ b/sysdeps/ieee754/dbl-64/s_tan.c @@ -38,8 +38,8 @@ #include #include "mpa.h" #include "MathLib.h" -#include "math.h" -#include "math_private.h" +#include +#include #include #ifndef SECTION diff --git a/sysdeps/ieee754/dbl-64/s_tanh.c b/sysdeps/ieee754/dbl-64/s_tanh.c index 63ef4b88a4..ded0d6025d 100644 --- a/sysdeps/ieee754/dbl-64/s_tanh.c +++ b/sysdeps/ieee754/dbl-64/s_tanh.c @@ -38,8 +38,8 @@ static char rcsid[] = "$NetBSD: s_tanh.c,v 1.7 1995/05/10 20:48:22 jtc Exp $"; * only tanh(0)=0 is exact for finite argument. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double one=1.0, two=2.0, tiny = 1.0e-300; diff --git a/sysdeps/ieee754/dbl-64/s_trunc.c b/sysdeps/ieee754/dbl-64/s_trunc.c index 359a2ff3d4..cf43482f21 100644 --- a/sysdeps/ieee754/dbl-64/s_trunc.c +++ b/sysdeps/ieee754/dbl-64/s_trunc.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include double diff --git a/sysdeps/ieee754/dbl-64/sincos32.c b/sysdeps/ieee754/dbl-64/sincos32.c index f3418fe964..038d1bdf22 100644 --- a/sysdeps/ieee754/dbl-64/sincos32.c +++ b/sysdeps/ieee754/dbl-64/sincos32.c @@ -42,7 +42,7 @@ #include "endian.h" #include "mpa.h" #include "sincos32.h" -#include "math_private.h" +#include #ifndef SECTION # define SECTION diff --git a/sysdeps/ieee754/dbl-64/slowexp.c b/sysdeps/ieee754/dbl-64/slowexp.c index fa32826cf7..887a06b2dd 100644 --- a/sysdeps/ieee754/dbl-64/slowexp.c +++ b/sysdeps/ieee754/dbl-64/slowexp.c @@ -28,7 +28,7 @@ /* e^x */ /**************************************************************************/ #include "mpa.h" -#include "math_private.h" +#include #ifndef SECTION # define SECTION diff --git a/sysdeps/ieee754/dbl-64/slowpow.c b/sysdeps/ieee754/dbl-64/slowpow.c index 89a914adcd..7c829c74f7 100644 --- a/sysdeps/ieee754/dbl-64/slowpow.c +++ b/sysdeps/ieee754/dbl-64/slowpow.c @@ -32,7 +32,7 @@ /*************************************************************************/ #include "mpa.h" -#include "math_private.h" +#include #ifndef SECTION # define SECTION diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/e_acosh.c b/sysdeps/ieee754/dbl-64/wordsize-64/e_acosh.c index 83c28479d3..26268f2498 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/e_acosh.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/e_acosh.c @@ -24,8 +24,8 @@ * acosh(NaN) is NaN without signal. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double one = 1.0, diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c b/sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c index 41dc42c0af..b8ab748304 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c @@ -31,8 +31,8 @@ * only cosh(0)=1 is exact for finite x. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double one = 1.0, half=0.5, huge = 1.0e300; diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/e_fmod.c b/sysdeps/ieee754/dbl-64/wordsize-64/e_fmod.c index 0e20571a74..6d2540447f 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/e_fmod.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/e_fmod.c @@ -16,8 +16,8 @@ * Method: shift and subtract */ -#include "math.h" -#include "math_private.h" +#include +#include static const double one = 1.0, Zero[] = {0.0, -0.0,}; diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c index 346dab7995..c687525d4b 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c @@ -19,8 +19,8 @@ * Inexact flag raised if x not equal to ceil(x). */ -#include "math.h" -#include "math_private.h" +#include +#include static const double huge = 1.0e300; diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c index 93a39a6835..f25ede8f9c 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c @@ -14,8 +14,8 @@ * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include #undef __finite int diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c index 8ee914e321..34fa6dad5e 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c @@ -30,8 +30,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include /* * floor(x) diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c index 0d5da875a2..5ca6b0f97e 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c @@ -17,8 +17,8 @@ . */ #include -#include "math.h" -#include "math_private.h" +#include +#include /* * for non-zero, finite x diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_isinf.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_isinf.c index c48e979a84..163fc31efc 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_isinf.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_isinf.c @@ -9,8 +9,8 @@ * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include int __isinf (double x) diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_isinf_ns.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_isinf_ns.c index 09dcc94532..9d78ed13ae 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_isinf_ns.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_isinf_ns.c @@ -7,8 +7,8 @@ * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include #undef __isinf_ns int diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c index 86d0ac8bbc..70a620cf64 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c @@ -15,8 +15,8 @@ * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include #undef __isnan int __isnan(double x) diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_logb.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_logb.c index 7760266290..2ad6c7ddbd 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_logb.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_logb.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include double diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c index 7fa2685e47..e3a1db0d50 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c @@ -22,7 +22,7 @@ #include -#include "math_private.h" +#include long int diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_modf.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_modf.c index 0cba548abd..89743168cb 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_modf.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_modf.c @@ -20,8 +20,8 @@ * No exception. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double one = 1.0; diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c index 861da20b10..a3809984e2 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c @@ -21,8 +21,8 @@ */ #include -#include "math.h" -#include "math_private.h" +#include +#include static const double TWO52[2]={ diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_remquo.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_remquo.c index 6b645b9af7..d634d67f46 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_remquo.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_remquo.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include static const double zero = 0.0; diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c index 571b3811ab..20eef3c5ea 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c @@ -19,8 +19,8 @@ * Inexact flag raised if x not equal to rint(x). */ -#include "math.h" -#include "math_private.h" +#include +#include static const double TWO52[2]={ diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_round.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_round.c index 6a26197fd2..4d2012ae2f 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_round.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_round.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include static const double huge = 1.0e300; diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_scalbln.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_scalbln.c index 1d0da687c1..c00db68ddf 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_scalbln.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_scalbln.c @@ -16,8 +16,8 @@ * exponentiation or a multiplication. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double two54 = 1.80143985094819840000e+16, /* 0x43500000, 0x00000000 */ diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c index e183c3875f..3822e1737d 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c @@ -16,8 +16,8 @@ * exponentiation or a multiplication. */ -#include "math.h" -#include "math_private.h" +#include +#include static const double two54 = 1.80143985094819840000e+16, /* 0x43500000, 0x00000000 */ diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c index f94826a8f5..bfb773d3a9 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include double diff --git a/sysdeps/ieee754/flt-32/e_acosf.c b/sysdeps/ieee754/flt-32/e_acosf.c index a258e2f918..c0f1d4ea74 100644 --- a/sysdeps/ieee754/flt-32/e_acosf.c +++ b/sysdeps/ieee754/flt-32/e_acosf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float one = 1.0000000000e+00, /* 0x3F800000 */ diff --git a/sysdeps/ieee754/flt-32/e_acoshf.c b/sysdeps/ieee754/flt-32/e_acoshf.c index 5999b747a2..aabfb85df7 100644 --- a/sysdeps/ieee754/flt-32/e_acoshf.c +++ b/sysdeps/ieee754/flt-32/e_acoshf.c @@ -17,8 +17,8 @@ static char rcsid[] = "$NetBSD: e_acoshf.c,v 1.5 1995/05/12 04:57:20 jtc Exp $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include static const float one = 1.0, diff --git a/sysdeps/ieee754/flt-32/e_asinf.c b/sysdeps/ieee754/flt-32/e_asinf.c index 595f957f6b..91ca9afd00 100644 --- a/sysdeps/ieee754/flt-32/e_asinf.c +++ b/sysdeps/ieee754/flt-32/e_asinf.c @@ -39,8 +39,8 @@ static char rcsid[] = "$NetBSD: e_asinf.c,v 1.5 1995/05/12 04:57:25 jtc Exp $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include static const float one = 1.0000000000e+00, /* 0x3F800000 */ diff --git a/sysdeps/ieee754/flt-32/e_atan2f.c b/sysdeps/ieee754/flt-32/e_atan2f.c index abbde88bdf..29eefc0dd6 100644 --- a/sysdeps/ieee754/flt-32/e_atan2f.c +++ b/sysdeps/ieee754/flt-32/e_atan2f.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float tiny = 1.0e-30, diff --git a/sysdeps/ieee754/flt-32/e_atanhf.c b/sysdeps/ieee754/flt-32/e_atanhf.c index 7af2f6ce67..84e080df5a 100644 --- a/sysdeps/ieee754/flt-32/e_atanhf.c +++ b/sysdeps/ieee754/flt-32/e_atanhf.c @@ -36,8 +36,8 @@ */ #include -#include "math.h" -#include "math_private.h" +#include +#include static const float huge = 1e30; diff --git a/sysdeps/ieee754/flt-32/e_coshf.c b/sysdeps/ieee754/flt-32/e_coshf.c index 1887639a6b..7eeea4d8da 100644 --- a/sysdeps/ieee754/flt-32/e_coshf.c +++ b/sysdeps/ieee754/flt-32/e_coshf.c @@ -14,8 +14,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float huge = 1.0e30; static const float one = 1.0, half=0.5; diff --git a/sysdeps/ieee754/flt-32/e_fmodf.c b/sysdeps/ieee754/flt-32/e_fmodf.c index e82a9ceab7..8d8fad4eb5 100644 --- a/sysdeps/ieee754/flt-32/e_fmodf.c +++ b/sysdeps/ieee754/flt-32/e_fmodf.c @@ -19,8 +19,8 @@ * Method: shift and subtract */ -#include "math.h" -#include "math_private.h" +#include +#include static const float one = 1.0, Zero[] = {0.0, -0.0,}; diff --git a/sysdeps/ieee754/flt-32/e_hypotf.c b/sysdeps/ieee754/flt-32/e_hypotf.c index 7ec8ae66bc..97e7d34b64 100644 --- a/sysdeps/ieee754/flt-32/e_hypotf.c +++ b/sysdeps/ieee754/flt-32/e_hypotf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include float __ieee754_hypotf(float x, float y) diff --git a/sysdeps/ieee754/flt-32/e_j0f.c b/sysdeps/ieee754/flt-32/e_j0f.c index 0cc52c94c4..0729cd04e0 100644 --- a/sysdeps/ieee754/flt-32/e_j0f.c +++ b/sysdeps/ieee754/flt-32/e_j0f.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static float pzerof(float), qzerof(float); diff --git a/sysdeps/ieee754/flt-32/e_j1f.c b/sysdeps/ieee754/flt-32/e_j1f.c index bb335a7403..30b7d8e250 100644 --- a/sysdeps/ieee754/flt-32/e_j1f.c +++ b/sysdeps/ieee754/flt-32/e_j1f.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static float ponef(float), qonef(float); diff --git a/sysdeps/ieee754/flt-32/e_jnf.c b/sysdeps/ieee754/flt-32/e_jnf.c index 1e55485b02..bed9cee7ab 100644 --- a/sysdeps/ieee754/flt-32/e_jnf.c +++ b/sysdeps/ieee754/flt-32/e_jnf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float two = 2.0000000000e+00, /* 0x40000000 */ diff --git a/sysdeps/ieee754/flt-32/e_lgammaf_r.c b/sysdeps/ieee754/flt-32/e_lgammaf_r.c index cbee9db8fb..2e92269085 100644 --- a/sysdeps/ieee754/flt-32/e_lgammaf_r.c +++ b/sysdeps/ieee754/flt-32/e_lgammaf_r.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float two23= 8.3886080000e+06, /* 0x4b000000 */ diff --git a/sysdeps/ieee754/flt-32/e_log10f.c b/sysdeps/ieee754/flt-32/e_log10f.c index 72dcea6250..96f0e81c52 100644 --- a/sysdeps/ieee754/flt-32/e_log10f.c +++ b/sysdeps/ieee754/flt-32/e_log10f.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float two25 = 3.3554432000e+07, /* 0x4c000000 */ diff --git a/sysdeps/ieee754/flt-32/e_log2f.c b/sysdeps/ieee754/flt-32/e_log2f.c index 7453214516..245be4e6f7 100644 --- a/sysdeps/ieee754/flt-32/e_log2f.c +++ b/sysdeps/ieee754/flt-32/e_log2f.c @@ -15,8 +15,8 @@ */ -#include "math.h" -#include "math_private.h" +#include +#include static const float ln2 = 0.69314718055994530942, diff --git a/sysdeps/ieee754/flt-32/e_logf.c b/sysdeps/ieee754/flt-32/e_logf.c index b870b31957..7da64896c1 100644 --- a/sysdeps/ieee754/flt-32/e_logf.c +++ b/sysdeps/ieee754/flt-32/e_logf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float ln2_hi = 6.9313812256e-01, /* 0x3f317180 */ diff --git a/sysdeps/ieee754/flt-32/e_powf.c b/sysdeps/ieee754/flt-32/e_powf.c index 460055204f..43069479a5 100644 --- a/sysdeps/ieee754/flt-32/e_powf.c +++ b/sysdeps/ieee754/flt-32/e_powf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float huge = 1.0e+30, tiny = 1.0e-30; diff --git a/sysdeps/ieee754/flt-32/e_rem_pio2f.c b/sysdeps/ieee754/flt-32/e_rem_pio2f.c index c2b9793df9..702fbf520d 100644 --- a/sysdeps/ieee754/flt-32/e_rem_pio2f.c +++ b/sysdeps/ieee754/flt-32/e_rem_pio2f.c @@ -23,8 +23,8 @@ static char rcsid[] = "$NetBSD: e_rem_pio2f.c,v 1.5 1995/05/10 20:46:03 jtc Exp * use __kernel_rem_pio2f() */ -#include "math.h" -#include "math_private.h" +#include +#include /* * Table of constants for 2/pi, 396 Hex digits (476 decimal) of 2/pi diff --git a/sysdeps/ieee754/flt-32/e_remainderf.c b/sysdeps/ieee754/flt-32/e_remainderf.c index aaf15dfe54..cc0167862e 100644 --- a/sysdeps/ieee754/flt-32/e_remainderf.c +++ b/sysdeps/ieee754/flt-32/e_remainderf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float zero = 0.0; diff --git a/sysdeps/ieee754/flt-32/e_sinhf.c b/sysdeps/ieee754/flt-32/e_sinhf.c index 5813963488..0a3cc90cd1 100644 --- a/sysdeps/ieee754/flt-32/e_sinhf.c +++ b/sysdeps/ieee754/flt-32/e_sinhf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float one = 1.0, shuge = 1.0e37; diff --git a/sysdeps/ieee754/flt-32/e_sqrtf.c b/sysdeps/ieee754/flt-32/e_sqrtf.c index 6d6688c52c..c02206ac01 100644 --- a/sysdeps/ieee754/flt-32/e_sqrtf.c +++ b/sysdeps/ieee754/flt-32/e_sqrtf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float one = 1.0, tiny=1.0e-30; diff --git a/sysdeps/ieee754/flt-32/k_cosf.c b/sysdeps/ieee754/flt-32/k_cosf.c index 81259470e0..fe4b453b77 100644 --- a/sysdeps/ieee754/flt-32/k_cosf.c +++ b/sysdeps/ieee754/flt-32/k_cosf.c @@ -17,8 +17,8 @@ static char rcsid[] = "$NetBSD: k_cosf.c,v 1.4 1995/05/10 20:46:23 jtc Exp $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include static const float one = 1.0000000000e+00, /* 0x3f800000 */ diff --git a/sysdeps/ieee754/flt-32/k_rem_pio2f.c b/sysdeps/ieee754/flt-32/k_rem_pio2f.c index 395cc789f1..06c2f378dc 100644 --- a/sysdeps/ieee754/flt-32/k_rem_pio2f.c +++ b/sysdeps/ieee754/flt-32/k_rem_pio2f.c @@ -17,8 +17,8 @@ static char rcsid[] = "$NetBSD: k_rem_pio2f.c,v 1.4 1995/05/10 20:46:28 jtc Exp $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include /* In the float version, the input parameter x contains 8 bit integers, not 24 bit integers. 113 bit precision is not supported. */ diff --git a/sysdeps/ieee754/flt-32/k_sinf.c b/sysdeps/ieee754/flt-32/k_sinf.c index 572363d755..e65fb988b7 100644 --- a/sysdeps/ieee754/flt-32/k_sinf.c +++ b/sysdeps/ieee754/flt-32/k_sinf.c @@ -17,8 +17,8 @@ static char rcsid[] = "$NetBSD: k_sinf.c,v 1.4 1995/05/10 20:46:33 jtc Exp $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include static const float half = 5.0000000000e-01,/* 0x3f000000 */ diff --git a/sysdeps/ieee754/flt-32/k_tanf.c b/sysdeps/ieee754/flt-32/k_tanf.c index 8b34811e4f..92206069c8 100644 --- a/sysdeps/ieee754/flt-32/k_tanf.c +++ b/sysdeps/ieee754/flt-32/k_tanf.c @@ -17,8 +17,8 @@ static char rcsid[] = "$NetBSD: k_tanf.c,v 1.4 1995/05/10 20:46:39 jtc Exp $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include static const float one = 1.0000000000e+00, /* 0x3f800000 */ pio4 = 7.8539812565e-01, /* 0x3f490fda */ diff --git a/sysdeps/ieee754/flt-32/s_asinhf.c b/sysdeps/ieee754/flt-32/s_asinhf.c index aa46f90004..b7fa2b4443 100644 --- a/sysdeps/ieee754/flt-32/s_asinhf.c +++ b/sysdeps/ieee754/flt-32/s_asinhf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float one = 1.0000000000e+00, /* 0x3F800000 */ diff --git a/sysdeps/ieee754/flt-32/s_atanf.c b/sysdeps/ieee754/flt-32/s_atanf.c index 8a3aa811b2..be7e67456a 100644 --- a/sysdeps/ieee754/flt-32/s_atanf.c +++ b/sysdeps/ieee754/flt-32/s_atanf.c @@ -17,8 +17,8 @@ static char rcsid[] = "$NetBSD: s_atanf.c,v 1.4 1995/05/10 20:46:47 jtc Exp $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include static const float atanhi[] = { 4.6364760399e-01, /* atan(0.5)hi 0x3eed6338 */ diff --git a/sysdeps/ieee754/flt-32/s_cbrtf.c b/sysdeps/ieee754/flt-32/s_cbrtf.c index 14233abf1b..ca792dbe6f 100644 --- a/sysdeps/ieee754/flt-32/s_cbrtf.c +++ b/sysdeps/ieee754/flt-32/s_cbrtf.c @@ -18,8 +18,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include #define CBRT2 1.2599210498948731648 /* 2^(1/3) */ diff --git a/sysdeps/ieee754/flt-32/s_ceilf.c b/sysdeps/ieee754/flt-32/s_ceilf.c index af926600b0..37659ea2ae 100644 --- a/sysdeps/ieee754/flt-32/s_ceilf.c +++ b/sysdeps/ieee754/flt-32/s_ceilf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float huge = 1.0e30; diff --git a/sysdeps/ieee754/flt-32/s_copysignf.c b/sysdeps/ieee754/flt-32/s_copysignf.c index 3a7893d8af..8bdf997d6b 100644 --- a/sysdeps/ieee754/flt-32/s_copysignf.c +++ b/sysdeps/ieee754/flt-32/s_copysignf.c @@ -23,8 +23,8 @@ static char rcsid[] = "$NetBSD: s_copysignf.c,v 1.4 1995/05/10 20:46:59 jtc Exp * with the sign bit of y. */ -#include "math.h" -#include "math_private.h" +#include +#include float __copysignf(float x, float y) { diff --git a/sysdeps/ieee754/flt-32/s_cosf.c b/sysdeps/ieee754/flt-32/s_cosf.c index dfe576c7be..f4bd81904b 100644 --- a/sysdeps/ieee754/flt-32/s_cosf.c +++ b/sysdeps/ieee754/flt-32/s_cosf.c @@ -18,8 +18,8 @@ static char rcsid[] = "$NetBSD: s_cosf.c,v 1.4 1995/05/10 20:47:03 jtc Exp $"; #endif #include -#include "math.h" -#include "math_private.h" +#include +#include static const float one=1.0; diff --git a/sysdeps/ieee754/flt-32/s_erff.c b/sysdeps/ieee754/flt-32/s_erff.c index 8a0610d5c5..17eeca4b51 100644 --- a/sysdeps/ieee754/flt-32/s_erff.c +++ b/sysdeps/ieee754/flt-32/s_erff.c @@ -17,8 +17,8 @@ static char rcsid[] = "$NetBSD: s_erff.c,v 1.4 1995/05/10 20:47:07 jtc Exp $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include static const float tiny = 1e-30, diff --git a/sysdeps/ieee754/flt-32/s_expm1f.c b/sysdeps/ieee754/flt-32/s_expm1f.c index 1d707120b0..ca8839fa22 100644 --- a/sysdeps/ieee754/flt-32/s_expm1f.c +++ b/sysdeps/ieee754/flt-32/s_expm1f.c @@ -14,8 +14,8 @@ */ #include -#include "math.h" -#include "math_private.h" +#include +#include static const float huge = 1.0e+30; static const float tiny = 1.0e-30; diff --git a/sysdeps/ieee754/flt-32/s_fabsf.c b/sysdeps/ieee754/flt-32/s_fabsf.c index b6a02da184..619526574a 100644 --- a/sysdeps/ieee754/flt-32/s_fabsf.c +++ b/sysdeps/ieee754/flt-32/s_fabsf.c @@ -21,8 +21,8 @@ static char rcsid[] = "$NetBSD: s_fabsf.c,v 1.4 1995/05/10 20:47:15 jtc Exp $"; * fabsf(x) returns the absolute value of x. */ -#include "math.h" -#include "math_private.h" +#include +#include float __fabsf(float x) { diff --git a/sysdeps/ieee754/flt-32/s_finitef.c b/sysdeps/ieee754/flt-32/s_finitef.c index fe4f0525fa..dfdf4ad0b7 100644 --- a/sysdeps/ieee754/flt-32/s_finitef.c +++ b/sysdeps/ieee754/flt-32/s_finitef.c @@ -22,8 +22,8 @@ static char rcsid[] = "$NetBSD: s_finitef.c,v 1.4 1995/05/10 20:47:18 jtc Exp $" * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include #undef __finitef int __finitef(float x) diff --git a/sysdeps/ieee754/flt-32/s_floorf.c b/sysdeps/ieee754/flt-32/s_floorf.c index de160d2114..99d6c01833 100644 --- a/sysdeps/ieee754/flt-32/s_floorf.c +++ b/sysdeps/ieee754/flt-32/s_floorf.c @@ -22,8 +22,8 @@ * Inexact flag raised if x not equal to floorf(x). */ -#include "math.h" -#include "math_private.h" +#include +#include static const float huge = 1.0e30; diff --git a/sysdeps/ieee754/flt-32/s_fpclassifyf.c b/sysdeps/ieee754/flt-32/s_fpclassifyf.c index eb3461f639..95cba2bd3f 100644 --- a/sysdeps/ieee754/flt-32/s_fpclassifyf.c +++ b/sysdeps/ieee754/flt-32/s_fpclassifyf.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include int diff --git a/sysdeps/ieee754/flt-32/s_frexpf.c b/sysdeps/ieee754/flt-32/s_frexpf.c index ba3777553c..abb8c0a65e 100644 --- a/sysdeps/ieee754/flt-32/s_frexpf.c +++ b/sysdeps/ieee754/flt-32/s_frexpf.c @@ -17,8 +17,8 @@ static char rcsid[] = "$NetBSD: s_frexpf.c,v 1.5 1995/05/10 20:47:26 jtc Exp $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include static const float two25 = 3.3554432000e+07; /* 0x4c000000 */ diff --git a/sysdeps/ieee754/flt-32/s_ilogbf.c b/sysdeps/ieee754/flt-32/s_ilogbf.c index 74babe140f..21f9cd9704 100644 --- a/sysdeps/ieee754/flt-32/s_ilogbf.c +++ b/sysdeps/ieee754/flt-32/s_ilogbf.c @@ -18,8 +18,8 @@ static char rcsid[] = "$NetBSD: s_ilogbf.c,v 1.4 1995/05/10 20:47:31 jtc Exp $"; #endif #include -#include "math.h" -#include "math_private.h" +#include +#include int __ilogbf(float x) { diff --git a/sysdeps/ieee754/flt-32/s_isinf_nsf.c b/sysdeps/ieee754/flt-32/s_isinf_nsf.c index 1e46e2ce4a..284d61926a 100644 --- a/sysdeps/ieee754/flt-32/s_isinf_nsf.c +++ b/sysdeps/ieee754/flt-32/s_isinf_nsf.c @@ -7,8 +7,8 @@ * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include #undef __isinf_nsf int diff --git a/sysdeps/ieee754/flt-32/s_isinff.c b/sysdeps/ieee754/flt-32/s_isinff.c index 03a95fcc0f..6eec050bb5 100644 --- a/sysdeps/ieee754/flt-32/s_isinff.c +++ b/sysdeps/ieee754/flt-32/s_isinff.c @@ -12,8 +12,8 @@ static char rcsid[] = "$NetBSD: s_isinff.c,v 1.3 1995/05/11 23:20:21 jtc Exp $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include int __isinff (float x) diff --git a/sysdeps/ieee754/flt-32/s_isnanf.c b/sysdeps/ieee754/flt-32/s_isnanf.c index 028b9bbb35..820b31a2b4 100644 --- a/sysdeps/ieee754/flt-32/s_isnanf.c +++ b/sysdeps/ieee754/flt-32/s_isnanf.c @@ -22,8 +22,8 @@ static char rcsid[] = "$NetBSD: s_isnanf.c,v 1.4 1995/05/10 20:47:38 jtc Exp $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include #undef __isnanf int __isnanf(float x) diff --git a/sysdeps/ieee754/flt-32/s_llrintf.c b/sysdeps/ieee754/flt-32/s_llrintf.c index 69da3ca7a0..1dc5beb2f5 100644 --- a/sysdeps/ieee754/flt-32/s_llrintf.c +++ b/sysdeps/ieee754/flt-32/s_llrintf.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include static const float two23[2] = { diff --git a/sysdeps/ieee754/flt-32/s_llroundf.c b/sysdeps/ieee754/flt-32/s_llroundf.c index 8b9b978609..457f38608f 100644 --- a/sysdeps/ieee754/flt-32/s_llroundf.c +++ b/sysdeps/ieee754/flt-32/s_llroundf.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include long long int diff --git a/sysdeps/ieee754/flt-32/s_log1pf.c b/sysdeps/ieee754/flt-32/s_log1pf.c index 9e555ed570..0307277106 100644 --- a/sysdeps/ieee754/flt-32/s_log1pf.c +++ b/sysdeps/ieee754/flt-32/s_log1pf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float ln2_hi = 6.9313812256e-01, /* 0x3f317180 */ diff --git a/sysdeps/ieee754/flt-32/s_logbf.c b/sysdeps/ieee754/flt-32/s_logbf.c index 6504eb6c66..b6aa0f057d 100644 --- a/sysdeps/ieee754/flt-32/s_logbf.c +++ b/sysdeps/ieee754/flt-32/s_logbf.c @@ -17,8 +17,8 @@ static char rcsid[] = "$NetBSD: s_logbf.c,v 1.4 1995/05/10 20:47:51 jtc Exp $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include float __logbf(float x) { diff --git a/sysdeps/ieee754/flt-32/s_lrintf.c b/sysdeps/ieee754/flt-32/s_lrintf.c index e7f36b8e3e..cf00996e18 100644 --- a/sysdeps/ieee754/flt-32/s_lrintf.c +++ b/sysdeps/ieee754/flt-32/s_lrintf.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include static const float two23[2] = { diff --git a/sysdeps/ieee754/flt-32/s_lroundf.c b/sysdeps/ieee754/flt-32/s_lroundf.c index be05f9c548..57a6dfdc56 100644 --- a/sysdeps/ieee754/flt-32/s_lroundf.c +++ b/sysdeps/ieee754/flt-32/s_lroundf.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include long int diff --git a/sysdeps/ieee754/flt-32/s_modff.c b/sysdeps/ieee754/flt-32/s_modff.c index 741b1c9b16..23f6a902b3 100644 --- a/sysdeps/ieee754/flt-32/s_modff.c +++ b/sysdeps/ieee754/flt-32/s_modff.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float one = 1.0; diff --git a/sysdeps/ieee754/flt-32/s_nearbyintf.c b/sysdeps/ieee754/flt-32/s_nearbyintf.c index a6d602bb4d..48debadde3 100644 --- a/sysdeps/ieee754/flt-32/s_nearbyintf.c +++ b/sysdeps/ieee754/flt-32/s_nearbyintf.c @@ -16,8 +16,8 @@ #include -#include "math.h" -#include "math_private.h" +#include +#include static const float TWO23[2]={ diff --git a/sysdeps/ieee754/flt-32/s_nextafterf.c b/sysdeps/ieee754/flt-32/s_nextafterf.c index 19da4246ac..b0de3d9ce2 100644 --- a/sysdeps/ieee754/flt-32/s_nextafterf.c +++ b/sysdeps/ieee754/flt-32/s_nextafterf.c @@ -17,7 +17,7 @@ static char rcsid[] = "$NetBSD: s_nextafterf.c,v 1.4 1995/05/10 20:48:01 jtc Exp $"; #endif -#include "math.h" +#include #include #include diff --git a/sysdeps/ieee754/flt-32/s_remquof.c b/sysdeps/ieee754/flt-32/s_remquof.c index 295dcfc229..6128c209ed 100644 --- a/sysdeps/ieee754/flt-32/s_remquof.c +++ b/sysdeps/ieee754/flt-32/s_remquof.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include static const float zero = 0.0; diff --git a/sysdeps/ieee754/flt-32/s_rintf.c b/sysdeps/ieee754/flt-32/s_rintf.c index 9ba6b57d94..8a907488f7 100644 --- a/sysdeps/ieee754/flt-32/s_rintf.c +++ b/sysdeps/ieee754/flt-32/s_rintf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float TWO23[2]={ diff --git a/sysdeps/ieee754/flt-32/s_roundf.c b/sysdeps/ieee754/flt-32/s_roundf.c index 06e79254e3..92239c77eb 100644 --- a/sysdeps/ieee754/flt-32/s_roundf.c +++ b/sysdeps/ieee754/flt-32/s_roundf.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include static const float huge = 1.0e30; diff --git a/sysdeps/ieee754/flt-32/s_scalblnf.c b/sysdeps/ieee754/flt-32/s_scalblnf.c index 2a2d7ab651..aa45164d2f 100644 --- a/sysdeps/ieee754/flt-32/s_scalblnf.c +++ b/sysdeps/ieee754/flt-32/s_scalblnf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float two25 = 3.355443200e+07, /* 0x4c000000 */ diff --git a/sysdeps/ieee754/flt-32/s_scalbnf.c b/sysdeps/ieee754/flt-32/s_scalbnf.c index a7cb1a1a49..5d9bdd647b 100644 --- a/sysdeps/ieee754/flt-32/s_scalbnf.c +++ b/sysdeps/ieee754/flt-32/s_scalbnf.c @@ -13,8 +13,8 @@ * ==================================================== */ -#include "math.h" -#include "math_private.h" +#include +#include static const float two25 = 3.355443200e+07, /* 0x4c000000 */ diff --git a/sysdeps/ieee754/flt-32/s_signbitf.c b/sysdeps/ieee754/flt-32/s_signbitf.c index 9d37651e87..619e26b4b2 100644 --- a/sysdeps/ieee754/flt-32/s_signbitf.c +++ b/sysdeps/ieee754/flt-32/s_signbitf.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include int __signbitf (float x) diff --git a/sysdeps/ieee754/flt-32/s_sincosf.c b/sysdeps/ieee754/flt-32/s_sincosf.c index 29c44a7da8..1b4d000e11 100644 --- a/sysdeps/ieee754/flt-32/s_sincosf.c +++ b/sysdeps/ieee754/flt-32/s_sincosf.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include void diff --git a/sysdeps/ieee754/flt-32/s_sinf.c b/sysdeps/ieee754/flt-32/s_sinf.c index 680fe07dae..02fa29f23b 100644 --- a/sysdeps/ieee754/flt-32/s_sinf.c +++ b/sysdeps/ieee754/flt-32/s_sinf.c @@ -18,8 +18,8 @@ static char rcsid[] = "$NetBSD: s_sinf.c,v 1.4 1995/05/10 20:48:16 jtc Exp $"; #endif #include -#include "math.h" -#include "math_private.h" +#include +#include float __sinf(float x) { diff --git a/sysdeps/ieee754/flt-32/s_tanf.c b/sysdeps/ieee754/flt-32/s_tanf.c index b69f3f5f79..685df8fa35 100644 --- a/sysdeps/ieee754/flt-32/s_tanf.c +++ b/sysdeps/ieee754/flt-32/s_tanf.c @@ -18,8 +18,8 @@ static char rcsid[] = "$NetBSD: s_tanf.c,v 1.4 1995/05/10 20:48:20 jtc Exp $"; #endif #include -#include "math.h" -#include "math_private.h" +#include +#include float __tanf(float x) { diff --git a/sysdeps/ieee754/flt-32/s_tanhf.c b/sysdeps/ieee754/flt-32/s_tanhf.c index a3a2cd3e50..dc96da9a5b 100644 --- a/sysdeps/ieee754/flt-32/s_tanhf.c +++ b/sysdeps/ieee754/flt-32/s_tanhf.c @@ -17,8 +17,8 @@ static char rcsid[] = "$NetBSD: s_tanhf.c,v 1.4 1995/05/10 20:48:24 jtc Exp $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include static const float one=1.0, two=2.0, tiny = 1.0e-30; diff --git a/sysdeps/ieee754/flt-32/s_truncf.c b/sysdeps/ieee754/flt-32/s_truncf.c index 6cbd235f5e..7e7053aeac 100644 --- a/sysdeps/ieee754/flt-32/s_truncf.c +++ b/sysdeps/ieee754/flt-32/s_truncf.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include float diff --git a/sysdeps/ieee754/k_standard.c b/sysdeps/ieee754/k_standard.c index 53b0775ddf..5d84543b95 100644 --- a/sysdeps/ieee754/k_standard.c +++ b/sysdeps/ieee754/k_standard.c @@ -14,8 +14,8 @@ static char rcsid[] = "$NetBSD: k_standard.c,v 1.6 1995/05/10 20:46:35 jtc Exp $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include #include #include diff --git a/sysdeps/ieee754/ldbl-128/e_acoshl.c b/sysdeps/ieee754/ldbl-128/e_acoshl.c index 2a74e9cd74..6234289e1e 100644 --- a/sysdeps/ieee754/ldbl-128/e_acoshl.c +++ b/sysdeps/ieee754/ldbl-128/e_acoshl.c @@ -27,8 +27,8 @@ * acoshl(NaN) is NaN without signal. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0, diff --git a/sysdeps/ieee754/ldbl-128/e_acosl.c b/sysdeps/ieee754/ldbl-128/e_acosl.c index bf8f5b4be4..28c94ed404 100644 --- a/sysdeps/ieee754/ldbl-128/e_acosl.c +++ b/sysdeps/ieee754/ldbl-128/e_acosl.c @@ -54,8 +54,8 @@ * Functions needed: __ieee754_sqrtl. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0L, diff --git a/sysdeps/ieee754/ldbl-128/e_asinl.c b/sysdeps/ieee754/ldbl-128/e_asinl.c index 85c59d0281..cd1a8da42c 100644 --- a/sysdeps/ieee754/ldbl-128/e_asinl.c +++ b/sysdeps/ieee754/ldbl-128/e_asinl.c @@ -59,8 +59,8 @@ */ -#include "math.h" -#include "math_private.h" +#include +#include long double sqrtl (long double); static const long double diff --git a/sysdeps/ieee754/ldbl-128/e_atan2l.c b/sysdeps/ieee754/ldbl-128/e_atan2l.c index bba3c9bcf1..d31ee70dbd 100644 --- a/sysdeps/ieee754/ldbl-128/e_atan2l.c +++ b/sysdeps/ieee754/ldbl-128/e_atan2l.c @@ -40,8 +40,8 @@ * to produce the hexadecimal values shown. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double tiny = 1.0e-4900L, diff --git a/sysdeps/ieee754/ldbl-128/e_atanhl.c b/sysdeps/ieee754/ldbl-128/e_atanhl.c index 334c4bd701..c5cceb5224 100644 --- a/sysdeps/ieee754/ldbl-128/e_atanhl.c +++ b/sysdeps/ieee754/ldbl-128/e_atanhl.c @@ -32,8 +32,8 @@ * */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0L, huge = 1e4900L; diff --git a/sysdeps/ieee754/ldbl-128/e_coshl.c b/sysdeps/ieee754/ldbl-128/e_coshl.c index c40c850f1c..59f2030d54 100644 --- a/sysdeps/ieee754/ldbl-128/e_coshl.c +++ b/sysdeps/ieee754/ldbl-128/e_coshl.c @@ -51,8 +51,8 @@ * only coshl(0)=1 is exact for finite x. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0, half = 0.5, huge = 1.0e4900L, ovf_thresh = 1.1357216553474703894801348310092223067821E4L; diff --git a/sysdeps/ieee754/ldbl-128/e_fmodl.c b/sysdeps/ieee754/ldbl-128/e_fmodl.c index 05665a9c8b..33280030f1 100644 --- a/sysdeps/ieee754/ldbl-128/e_fmodl.c +++ b/sysdeps/ieee754/ldbl-128/e_fmodl.c @@ -18,8 +18,8 @@ * Method: shift and subtract */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0, Zero[] = {0.0, -0.0,}; diff --git a/sysdeps/ieee754/ldbl-128/e_hypotl.c b/sysdeps/ieee754/ldbl-128/e_hypotl.c index dad78fef1d..f5ab901e6a 100644 --- a/sysdeps/ieee754/ldbl-128/e_hypotl.c +++ b/sysdeps/ieee754/ldbl-128/e_hypotl.c @@ -45,8 +45,8 @@ * than 1 ulps (units in the last place) */ -#include "math.h" -#include "math_private.h" +#include +#include long double __ieee754_hypotl(long double x, long double y) diff --git a/sysdeps/ieee754/ldbl-128/e_j0l.c b/sysdeps/ieee754/ldbl-128/e_j0l.c index 7d88709b8e..112a8f3f9c 100644 --- a/sysdeps/ieee754/ldbl-128/e_j0l.c +++ b/sysdeps/ieee754/ldbl-128/e_j0l.c @@ -91,8 +91,8 @@ License along with this library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include /* 1 / sqrt(pi) */ static const long double ONEOSQPI = 5.6418958354775628694807945156077258584405E-1L; diff --git a/sysdeps/ieee754/ldbl-128/e_j1l.c b/sysdeps/ieee754/ldbl-128/e_j1l.c index 389657729a..1f62bd0920 100644 --- a/sysdeps/ieee754/ldbl-128/e_j1l.c +++ b/sysdeps/ieee754/ldbl-128/e_j1l.c @@ -95,8 +95,8 @@ License along with this library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include /* 1 / sqrt(pi) */ static const long double ONEOSQPI = 5.6418958354775628694807945156077258584405E-1L; diff --git a/sysdeps/ieee754/ldbl-128/e_jnl.c b/sysdeps/ieee754/ldbl-128/e_jnl.c index 4c2ec85470..e320d994bf 100644 --- a/sysdeps/ieee754/ldbl-128/e_jnl.c +++ b/sysdeps/ieee754/ldbl-128/e_jnl.c @@ -56,8 +56,8 @@ * */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double invsqrtpi = 5.6418958354775628694807945156077258584405E-1L, diff --git a/sysdeps/ieee754/ldbl-128/e_lgammal_r.c b/sysdeps/ieee754/ldbl-128/e_lgammal_r.c index a88b11af94..2b44afb759 100644 --- a/sysdeps/ieee754/ldbl-128/e_lgammal_r.c +++ b/sysdeps/ieee754/ldbl-128/e_lgammal_r.c @@ -68,8 +68,8 @@ License along with this library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double PIL = 3.1415926535897932384626433832795028841972E0L; static const long double MAXLGM = 1.0485738685148938358098967157129705071571E4928L; diff --git a/sysdeps/ieee754/ldbl-128/e_log10l.c b/sysdeps/ieee754/ldbl-128/e_log10l.c index 58516cd17b..b403f815fb 100644 --- a/sysdeps/ieee754/ldbl-128/e_log10l.c +++ b/sysdeps/ieee754/ldbl-128/e_log10l.c @@ -60,8 +60,8 @@ License along with this library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include /* Coefficients for ln(1+x) = x - x**2/2 + x**3 P(x)/Q(x) * 1/sqrt(2) <= x < sqrt(2) diff --git a/sysdeps/ieee754/ldbl-128/e_log2l.c b/sysdeps/ieee754/ldbl-128/e_log2l.c index f312057e72..6c7da0e44b 100644 --- a/sysdeps/ieee754/ldbl-128/e_log2l.c +++ b/sysdeps/ieee754/ldbl-128/e_log2l.c @@ -59,8 +59,8 @@ License along with this library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include /* Coefficients for ln(1+x) = x - x**2/2 + x**3 P(x)/Q(x) * 1/sqrt(2) <= x < sqrt(2) diff --git a/sysdeps/ieee754/ldbl-128/e_logl.c b/sysdeps/ieee754/ldbl-128/e_logl.c index e8a62ea5c4..395a76302a 100644 --- a/sysdeps/ieee754/ldbl-128/e_logl.c +++ b/sysdeps/ieee754/ldbl-128/e_logl.c @@ -58,7 +58,7 @@ License along with this library; if not, see . */ -#include "math_private.h" +#include /* log(1+x) = x - .5 x^2 + x^3 l(x) -.0078125 <= x <= +.0078125 diff --git a/sysdeps/ieee754/ldbl-128/e_powl.c b/sysdeps/ieee754/ldbl-128/e_powl.c index 807cf6190a..40fc314730 100644 --- a/sysdeps/ieee754/ldbl-128/e_powl.c +++ b/sysdeps/ieee754/ldbl-128/e_powl.c @@ -64,8 +64,8 @@ * */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double bp[] = { 1.0L, diff --git a/sysdeps/ieee754/ldbl-128/e_rem_pio2l.c b/sysdeps/ieee754/ldbl-128/e_rem_pio2l.c index cd27024311..b8833ba137 100644 --- a/sysdeps/ieee754/ldbl-128/e_rem_pio2l.c +++ b/sysdeps/ieee754/ldbl-128/e_rem_pio2l.c @@ -17,8 +17,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include /* * Table of constants for 2/pi, 5628 hexadecimal digits of 2/pi diff --git a/sysdeps/ieee754/ldbl-128/e_remainderl.c b/sysdeps/ieee754/ldbl-128/e_remainderl.c index 84233808ef..88df6f54c2 100644 --- a/sysdeps/ieee754/ldbl-128/e_remainderl.c +++ b/sysdeps/ieee754/ldbl-128/e_remainderl.c @@ -21,8 +21,8 @@ * Based on fmodl() return x-[x/p]chopped*p exactlp. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double zero = 0.0L; diff --git a/sysdeps/ieee754/ldbl-128/e_sinhl.c b/sysdeps/ieee754/ldbl-128/e_sinhl.c index 65e9246a1f..1ca3c6e507 100644 --- a/sysdeps/ieee754/ldbl-128/e_sinhl.c +++ b/sysdeps/ieee754/ldbl-128/e_sinhl.c @@ -53,8 +53,8 @@ * only sinhl(0)=0 is exact for finite x. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0, shuge = 1.0e4931L, ovf_thresh = 1.1357216553474703894801348310092223067821E4L; diff --git a/sysdeps/ieee754/ldbl-128/k_cosl.c b/sysdeps/ieee754/ldbl-128/k_cosl.c index b5f57ba727..4cb9dd1f56 100644 --- a/sysdeps/ieee754/ldbl-128/k_cosl.c +++ b/sysdeps/ieee754/ldbl-128/k_cosl.c @@ -17,8 +17,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double c[] = { #define ONE c[0] diff --git a/sysdeps/ieee754/ldbl-128/k_sincosl.c b/sysdeps/ieee754/ldbl-128/k_sincosl.c index 3cb8c79d0e..98c5d62780 100644 --- a/sysdeps/ieee754/ldbl-128/k_sincosl.c +++ b/sysdeps/ieee754/ldbl-128/k_sincosl.c @@ -17,8 +17,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double c[] = { #define ONE c[0] diff --git a/sysdeps/ieee754/ldbl-128/k_sinl.c b/sysdeps/ieee754/ldbl-128/k_sinl.c index 176a50218c..6eaf878d94 100644 --- a/sysdeps/ieee754/ldbl-128/k_sinl.c +++ b/sysdeps/ieee754/ldbl-128/k_sinl.c @@ -17,8 +17,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double c[] = { #define ONE c[0] diff --git a/sysdeps/ieee754/ldbl-128/k_tanl.c b/sysdeps/ieee754/ldbl-128/k_tanl.c index 8d63e6d6f3..cb2e9473d9 100644 --- a/sysdeps/ieee754/ldbl-128/k_tanl.c +++ b/sysdeps/ieee754/ldbl-128/k_tanl.c @@ -56,8 +56,8 @@ * = 1 - 2*(tan(y) - (tan(y)^2)/(1+tan(y))) */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0L, pio4hi = 7.8539816339744830961566084581987569936977E-1L, diff --git a/sysdeps/ieee754/ldbl-128/s_asinhl.c b/sysdeps/ieee754/ldbl-128/s_asinhl.c index 0a83413845..e5a3636beb 100644 --- a/sysdeps/ieee754/ldbl-128/s_asinhl.c +++ b/sysdeps/ieee754/ldbl-128/s_asinhl.c @@ -29,8 +29,8 @@ static char rcsid[] = "$NetBSD: $"; * := signl(x)*log1pl(|x| + x^2/(1 + sqrtl(1+x^2))) */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0L, diff --git a/sysdeps/ieee754/ldbl-128/s_atanl.c b/sysdeps/ieee754/ldbl-128/s_atanl.c index c687ab3aff..0138e792aa 100644 --- a/sysdeps/ieee754/ldbl-128/s_atanl.c +++ b/sysdeps/ieee754/ldbl-128/s_atanl.c @@ -59,7 +59,7 @@ . */ -#include "math_private.h" +#include /* arctan(k/8), k = 0, ..., 82 */ static const long double atantbl[84] = { diff --git a/sysdeps/ieee754/ldbl-128/s_cbrtl.c b/sysdeps/ieee754/ldbl-128/s_cbrtl.c index 3f418f30e0..07ed567e4d 100644 --- a/sysdeps/ieee754/ldbl-128/s_cbrtl.c +++ b/sysdeps/ieee754/ldbl-128/s_cbrtl.c @@ -54,8 +54,8 @@ Adapted for glibc October, 2001. . */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double CBRT2 = 1.259921049894873164767210607278228350570251L; static const long double CBRT4 = 1.587401051968199474751705639272308260391493L; diff --git a/sysdeps/ieee754/ldbl-128/s_ceill.c b/sysdeps/ieee754/ldbl-128/s_ceill.c index fe1fc8382b..9f6bc4ce15 100644 --- a/sysdeps/ieee754/ldbl-128/s_ceill.c +++ b/sysdeps/ieee754/ldbl-128/s_ceill.c @@ -26,8 +26,8 @@ static char rcsid[] = "$NetBSD: $"; * Inexact flag raised if x not equal to ceil(x). */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double huge = 1.0e4930L; diff --git a/sysdeps/ieee754/ldbl-128/s_copysignl.c b/sysdeps/ieee754/ldbl-128/s_copysignl.c index 3426ccddf0..19b6880940 100644 --- a/sysdeps/ieee754/ldbl-128/s_copysignl.c +++ b/sysdeps/ieee754/ldbl-128/s_copysignl.c @@ -23,8 +23,8 @@ static char rcsid[] = "$NetBSD: $"; * with the sign bit of y. */ -#include "math.h" -#include "math_private.h" +#include +#include long double __copysignl(long double x, long double y) { diff --git a/sysdeps/ieee754/ldbl-128/s_cosl.c b/sysdeps/ieee754/ldbl-128/s_cosl.c index ae26d359d0..2c3bff6e0f 100644 --- a/sysdeps/ieee754/ldbl-128/s_cosl.c +++ b/sysdeps/ieee754/ldbl-128/s_cosl.c @@ -45,8 +45,8 @@ */ #include -#include "math.h" -#include "math_private.h" +#include +#include long double __cosl(long double x) { diff --git a/sysdeps/ieee754/ldbl-128/s_erfl.c b/sysdeps/ieee754/ldbl-128/s_erfl.c index c8a4aedca3..85c6356373 100644 --- a/sysdeps/ieee754/ldbl-128/s_erfl.c +++ b/sysdeps/ieee754/ldbl-128/s_erfl.c @@ -96,8 +96,8 @@ * erfc/erf(NaN) is NaN */ -#include "math.h" -#include "math_private.h" +#include +#include /* Evaluate P[n] x^n + P[n-1] x^(n-1) + ... + P[0] */ diff --git a/sysdeps/ieee754/ldbl-128/s_expm1l.c b/sysdeps/ieee754/ldbl-128/s_expm1l.c index 04139908c2..17769dd6a3 100644 --- a/sysdeps/ieee754/ldbl-128/s_expm1l.c +++ b/sysdeps/ieee754/ldbl-128/s_expm1l.c @@ -54,8 +54,8 @@ #include -#include "math.h" -#include "math_private.h" +#include +#include /* exp(x) - 1 = x + 0.5 x^2 + x^3 P(x)/Q(x) -.5 ln 2 < x < .5 ln 2 diff --git a/sysdeps/ieee754/ldbl-128/s_fabsl.c b/sysdeps/ieee754/ldbl-128/s_fabsl.c index 73de8f07c1..a1bb6c5dff 100644 --- a/sysdeps/ieee754/ldbl-128/s_fabsl.c +++ b/sysdeps/ieee754/ldbl-128/s_fabsl.c @@ -21,8 +21,8 @@ static char rcsid[] = "$NetBSD: $"; * fabsl(x) returns the absolute value of x. */ -#include "math.h" -#include "math_private.h" +#include +#include long double __fabsl(long double x) { diff --git a/sysdeps/ieee754/ldbl-128/s_finitel.c b/sysdeps/ieee754/ldbl-128/s_finitel.c index b789735892..f862a448ed 100644 --- a/sysdeps/ieee754/ldbl-128/s_finitel.c +++ b/sysdeps/ieee754/ldbl-128/s_finitel.c @@ -22,8 +22,8 @@ static char rcsid[] = "$NetBSD: $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include int __finitel(long double x) { diff --git a/sysdeps/ieee754/ldbl-128/s_floorl.c b/sysdeps/ieee754/ldbl-128/s_floorl.c index 2799d1c7ed..c72d5d4330 100644 --- a/sysdeps/ieee754/ldbl-128/s_floorl.c +++ b/sysdeps/ieee754/ldbl-128/s_floorl.c @@ -26,8 +26,8 @@ static char rcsid[] = "$NetBSD: $"; * Inexact flag raised if x not equal to floor(x). */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double huge = 1.0e4930L; diff --git a/sysdeps/ieee754/ldbl-128/s_fpclassifyl.c b/sysdeps/ieee754/ldbl-128/s_fpclassifyl.c index d6f35cbef6..a98f586f91 100644 --- a/sysdeps/ieee754/ldbl-128/s_fpclassifyl.c +++ b/sysdeps/ieee754/ldbl-128/s_fpclassifyl.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include int diff --git a/sysdeps/ieee754/ldbl-128/s_frexpl.c b/sysdeps/ieee754/ldbl-128/s_frexpl.c index 7f899e470a..d61dddaaaa 100644 --- a/sysdeps/ieee754/ldbl-128/s_frexpl.c +++ b/sysdeps/ieee754/ldbl-128/s_frexpl.c @@ -27,8 +27,8 @@ static char rcsid[] = "$NetBSD: $"; * with *exp=0. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double two114 = 2.0769187434139310514121985316880384E+34L; /* 0x4071000000000000, 0 */ diff --git a/sysdeps/ieee754/ldbl-128/s_ilogbl.c b/sysdeps/ieee754/ldbl-128/s_ilogbl.c index a6f52c3f78..d52eb050d4 100644 --- a/sysdeps/ieee754/ldbl-128/s_ilogbl.c +++ b/sysdeps/ieee754/ldbl-128/s_ilogbl.c @@ -25,8 +25,8 @@ static char rcsid[] = "$NetBSD: $"; */ #include -#include "math.h" -#include "math_private.h" +#include +#include int __ilogbl(long double x) { diff --git a/sysdeps/ieee754/ldbl-128/s_isinf_nsl.c b/sysdeps/ieee754/ldbl-128/s_isinf_nsl.c index 1ebc1accbc..7d6cfb9a62 100644 --- a/sysdeps/ieee754/ldbl-128/s_isinf_nsl.c +++ b/sysdeps/ieee754/ldbl-128/s_isinf_nsl.c @@ -7,8 +7,8 @@ * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include int __isinf_nsl (long double x) diff --git a/sysdeps/ieee754/ldbl-128/s_isinfl.c b/sysdeps/ieee754/ldbl-128/s_isinfl.c index 0b3526bd79..03e4d13371 100644 --- a/sysdeps/ieee754/ldbl-128/s_isinfl.c +++ b/sysdeps/ieee754/ldbl-128/s_isinfl.c @@ -13,8 +13,8 @@ static char rcsid[] = "$NetBSD: $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include int __isinfl (long double x) diff --git a/sysdeps/ieee754/ldbl-128/s_isnanl.c b/sysdeps/ieee754/ldbl-128/s_isnanl.c index ef7bc7b332..74960e7ff2 100644 --- a/sysdeps/ieee754/ldbl-128/s_isnanl.c +++ b/sysdeps/ieee754/ldbl-128/s_isnanl.c @@ -22,8 +22,8 @@ static char rcsid[] = "$NetBSD: $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include int __isnanl(long double x) { diff --git a/sysdeps/ieee754/ldbl-128/s_llrintl.c b/sysdeps/ieee754/ldbl-128/s_llrintl.c index 5ebd43eb2e..be7cb5df11 100644 --- a/sysdeps/ieee754/ldbl-128/s_llrintl.c +++ b/sysdeps/ieee754/ldbl-128/s_llrintl.c @@ -21,7 +21,7 @@ #include -#include "math_private.h" +#include static const long double two112[2] = { diff --git a/sysdeps/ieee754/ldbl-128/s_llroundl.c b/sysdeps/ieee754/ldbl-128/s_llroundl.c index c5f28af15a..16eea8f68a 100644 --- a/sysdeps/ieee754/ldbl-128/s_llroundl.c +++ b/sysdeps/ieee754/ldbl-128/s_llroundl.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include long long int diff --git a/sysdeps/ieee754/ldbl-128/s_log1pl.c b/sysdeps/ieee754/ldbl-128/s_log1pl.c index 285c40e9ba..4ecea0fddd 100644 --- a/sysdeps/ieee754/ldbl-128/s_log1pl.c +++ b/sysdeps/ieee754/ldbl-128/s_log1pl.c @@ -53,8 +53,8 @@ . */ -#include "math.h" -#include "math_private.h" +#include +#include /* Coefficients for log(1+x) = x - x^2 / 2 + x^3 P(x)/Q(x) * 1/sqrt(2) <= 1+x < sqrt(2) diff --git a/sysdeps/ieee754/ldbl-128/s_logbl.c b/sysdeps/ieee754/ldbl-128/s_logbl.c index 8d7b4c65ad..0b09b289c2 100644 --- a/sysdeps/ieee754/ldbl-128/s_logbl.c +++ b/sysdeps/ieee754/ldbl-128/s_logbl.c @@ -23,8 +23,8 @@ static char rcsid[] = "$NetBSD: $"; * Use ilogb instead. */ -#include "math.h" -#include "math_private.h" +#include +#include long double __logbl(long double x) { diff --git a/sysdeps/ieee754/ldbl-128/s_lrintl.c b/sysdeps/ieee754/ldbl-128/s_lrintl.c index 5216f63ce4..11594a314f 100644 --- a/sysdeps/ieee754/ldbl-128/s_lrintl.c +++ b/sysdeps/ieee754/ldbl-128/s_lrintl.c @@ -21,7 +21,7 @@ #include -#include "math_private.h" +#include static const long double two112[2] = { diff --git a/sysdeps/ieee754/ldbl-128/s_lroundl.c b/sysdeps/ieee754/ldbl-128/s_lroundl.c index ab2043678d..efe71bc391 100644 --- a/sysdeps/ieee754/ldbl-128/s_lroundl.c +++ b/sysdeps/ieee754/ldbl-128/s_lroundl.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include long int diff --git a/sysdeps/ieee754/ldbl-128/s_modfl.c b/sysdeps/ieee754/ldbl-128/s_modfl.c index 36572680cc..597a5c9a0c 100644 --- a/sysdeps/ieee754/ldbl-128/s_modfl.c +++ b/sysdeps/ieee754/ldbl-128/s_modfl.c @@ -27,8 +27,8 @@ static char rcsid[] = "$NetBSD: $"; * No exception. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0; diff --git a/sysdeps/ieee754/ldbl-128/s_nearbyintl.c b/sysdeps/ieee754/ldbl-128/s_nearbyintl.c index 2d9f834bab..b335adcaa1 100644 --- a/sysdeps/ieee754/ldbl-128/s_nearbyintl.c +++ b/sysdeps/ieee754/ldbl-128/s_nearbyintl.c @@ -24,8 +24,8 @@ */ #include -#include "math.h" -#include "math_private.h" +#include +#include static const long double TWO112[2]={ diff --git a/sysdeps/ieee754/ldbl-128/s_nextafterl.c b/sysdeps/ieee754/ldbl-128/s_nextafterl.c index 0bf9339ef5..e345bc8c40 100644 --- a/sysdeps/ieee754/ldbl-128/s_nextafterl.c +++ b/sysdeps/ieee754/ldbl-128/s_nextafterl.c @@ -24,7 +24,7 @@ static char rcsid[] = "$NetBSD: $"; * Special cases: */ -#include "math.h" +#include #include long double __nextafterl(long double x, long double y) diff --git a/sysdeps/ieee754/ldbl-128/s_nexttoward.c b/sysdeps/ieee754/ldbl-128/s_nexttoward.c index 6506722c4d..87a9a6cac3 100644 --- a/sysdeps/ieee754/ldbl-128/s_nexttoward.c +++ b/sysdeps/ieee754/ldbl-128/s_nexttoward.c @@ -25,7 +25,7 @@ static char rcsid[] = "$NetBSD: $"; * Special cases: */ -#include "math.h" +#include #include #include diff --git a/sysdeps/ieee754/ldbl-128/s_nexttowardf.c b/sysdeps/ieee754/ldbl-128/s_nexttowardf.c index e7265e7627..371fa80771 100644 --- a/sysdeps/ieee754/ldbl-128/s_nexttowardf.c +++ b/sysdeps/ieee754/ldbl-128/s_nexttowardf.c @@ -18,8 +18,8 @@ static char rcsid[] = "$NetBSD: $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include float __nexttowardf(float x, long double y) { diff --git a/sysdeps/ieee754/ldbl-128/s_remquol.c b/sysdeps/ieee754/ldbl-128/s_remquol.c index e44ae84974..a985546ea4 100644 --- a/sysdeps/ieee754/ldbl-128/s_remquol.c +++ b/sysdeps/ieee754/ldbl-128/s_remquol.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include static const long double zero = 0.0; diff --git a/sysdeps/ieee754/ldbl-128/s_rintl.c b/sysdeps/ieee754/ldbl-128/s_rintl.c index 563b207343..088d3c4d59 100644 --- a/sysdeps/ieee754/ldbl-128/s_rintl.c +++ b/sysdeps/ieee754/ldbl-128/s_rintl.c @@ -27,8 +27,8 @@ static char rcsid[] = "$NetBSD: $"; * Inexact flag raised if x not equal to rintl(x). */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double TWO112[2]={ diff --git a/sysdeps/ieee754/ldbl-128/s_roundl.c b/sysdeps/ieee754/ldbl-128/s_roundl.c index d8eff871ee..1139d2781f 100644 --- a/sysdeps/ieee754/ldbl-128/s_roundl.c +++ b/sysdeps/ieee754/ldbl-128/s_roundl.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include static const long double huge = 1.0E4930L; diff --git a/sysdeps/ieee754/ldbl-128/s_scalblnl.c b/sysdeps/ieee754/ldbl-128/s_scalblnl.c index 9ad976bb11..f0df2da9ea 100644 --- a/sysdeps/ieee754/ldbl-128/s_scalblnl.c +++ b/sysdeps/ieee754/ldbl-128/s_scalblnl.c @@ -25,8 +25,8 @@ static char rcsid[] = "$NetBSD: $"; * exponentiation or a multiplication. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double two114 = 2.0769187434139310514121985316880384E+34L, /* 0x4071000000000000, 0 */ diff --git a/sysdeps/ieee754/ldbl-128/s_scalbnl.c b/sysdeps/ieee754/ldbl-128/s_scalbnl.c index a928ecccec..a14848d8fd 100644 --- a/sysdeps/ieee754/ldbl-128/s_scalbnl.c +++ b/sysdeps/ieee754/ldbl-128/s_scalbnl.c @@ -25,8 +25,8 @@ static char rcsid[] = "$NetBSD: $"; * exponentiation or a multiplication. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double two114 = 2.0769187434139310514121985316880384E+34L, /* 0x4071000000000000, 0 */ diff --git a/sysdeps/ieee754/ldbl-128/s_signbitl.c b/sysdeps/ieee754/ldbl-128/s_signbitl.c index 0f519fb6cb..da74213075 100644 --- a/sysdeps/ieee754/ldbl-128/s_signbitl.c +++ b/sysdeps/ieee754/ldbl-128/s_signbitl.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include int __signbitl (long double x) diff --git a/sysdeps/ieee754/ldbl-128/s_sincosl.c b/sysdeps/ieee754/ldbl-128/s_sincosl.c index 8ff70148d3..5747ad464e 100644 --- a/sysdeps/ieee754/ldbl-128/s_sincosl.c +++ b/sysdeps/ieee754/ldbl-128/s_sincosl.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include void __sincosl (long double x, long double *sinx, long double *cosx) diff --git a/sysdeps/ieee754/ldbl-128/s_sinl.c b/sysdeps/ieee754/ldbl-128/s_sinl.c index 63a920bd80..582a53fd7a 100644 --- a/sysdeps/ieee754/ldbl-128/s_sinl.c +++ b/sysdeps/ieee754/ldbl-128/s_sinl.c @@ -45,8 +45,8 @@ */ #include -#include "math.h" -#include "math_private.h" +#include +#include long double __sinl(long double x) { diff --git a/sysdeps/ieee754/ldbl-128/s_tanhl.c b/sysdeps/ieee754/ldbl-128/s_tanhl.c index 979eb86557..129735b1b5 100644 --- a/sysdeps/ieee754/ldbl-128/s_tanhl.c +++ b/sysdeps/ieee754/ldbl-128/s_tanhl.c @@ -41,8 +41,8 @@ * only tanhl(0)=0 is exact for finite argument. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0, two = 2.0, tiny = 1.0e-4900L; diff --git a/sysdeps/ieee754/ldbl-128/s_tanl.c b/sysdeps/ieee754/ldbl-128/s_tanl.c index 41e590250e..c4bb8c80ec 100644 --- a/sysdeps/ieee754/ldbl-128/s_tanl.c +++ b/sysdeps/ieee754/ldbl-128/s_tanl.c @@ -45,8 +45,8 @@ */ #include -#include "math.h" -#include "math_private.h" +#include +#include long double __tanl(long double x) { diff --git a/sysdeps/ieee754/ldbl-128/s_truncl.c b/sysdeps/ieee754/ldbl-128/s_truncl.c index 526071a587..092ff9cdf4 100644 --- a/sysdeps/ieee754/ldbl-128/s_truncl.c +++ b/sysdeps/ieee754/ldbl-128/s_truncl.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include long double diff --git a/sysdeps/ieee754/ldbl-128/w_expl.c b/sysdeps/ieee754/ldbl-128/w_expl.c index ab82ef1e76..f4deda872f 100644 --- a/sysdeps/ieee754/ldbl-128/w_expl.c +++ b/sysdeps/ieee754/ldbl-128/w_expl.c @@ -22,8 +22,8 @@ static char rcsid[] = "$NetBSD: $"; * wrapper expl(x) */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double o_threshold= 1.1356523406294143949491931077970763428449E4L, diff --git a/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c b/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c index 20d94eaa1e..117bd0f052 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c @@ -24,8 +24,8 @@ * acosh(NaN) is NaN without signal. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0L, diff --git a/sysdeps/ieee754/ldbl-128ibm/e_acosl.c b/sysdeps/ieee754/ldbl-128ibm/e_acosl.c index 55ee30f02c..533b59786d 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_acosl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_acosl.c @@ -54,8 +54,8 @@ * Functions needed: __ieee754_sqrtl. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0L, diff --git a/sysdeps/ieee754/ldbl-128ibm/e_asinl.c b/sysdeps/ieee754/ldbl-128ibm/e_asinl.c index 402c244360..fb6f5720d0 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_asinl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_asinl.c @@ -59,8 +59,8 @@ */ -#include "math.h" -#include "math_private.h" +#include +#include long double sqrtl (long double); static const long double diff --git a/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c b/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c index a5b6621006..fe5c8bd8dc 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c @@ -40,8 +40,8 @@ * to produce the hexadecimal values shown. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double tiny = 1.0e-300L, diff --git a/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c b/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c index c879e4518e..075855b5fe 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c @@ -28,8 +28,8 @@ * */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0L, huge = 1e300L; diff --git a/sysdeps/ieee754/ldbl-128ibm/e_coshl.c b/sysdeps/ieee754/ldbl-128ibm/e_coshl.c index 569b8418bf..3e8e1875c6 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_coshl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_coshl.c @@ -31,8 +31,8 @@ * only cosh(0)=1 is exact for finite x. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0L, half=0.5L, huge = 1.0e300L; diff --git a/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c b/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c index 4ad59a0916..10cda317a9 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c @@ -18,8 +18,8 @@ * Method: shift and subtract */ -#include "math.h" -#include "math_private.h" +#include +#include #include static const long double one = 1.0, Zero[] = {0.0, -0.0,}; diff --git a/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c b/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c index 4ef076741f..00bfb15926 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c @@ -42,8 +42,8 @@ * than 1 ulps (units in the last place) */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double two600 = 0x1.0p+600L; static const long double two1022 = 0x1.0p+1022L; diff --git a/sysdeps/ieee754/ldbl-128ibm/e_jnl.c b/sysdeps/ieee754/ldbl-128ibm/e_jnl.c index 2f8fa88820..930a2bcbdf 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_jnl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_jnl.c @@ -56,8 +56,8 @@ * */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double invsqrtpi = 5.6418958354775628694807945156077258584405E-1L, diff --git a/sysdeps/ieee754/ldbl-128ibm/e_log10l.c b/sysdeps/ieee754/ldbl-128ibm/e_log10l.c index e398d93a9d..fae774cea8 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_log10l.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_log10l.c @@ -60,8 +60,8 @@ License along with this library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include /* Coefficients for ln(1+x) = x - x**2/2 + x**3 P(x)/Q(x) * 1/sqrt(2) <= x < sqrt(2) diff --git a/sysdeps/ieee754/ldbl-128ibm/e_log2l.c b/sysdeps/ieee754/ldbl-128ibm/e_log2l.c index 28363f2cf6..f0098f6c73 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_log2l.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_log2l.c @@ -59,8 +59,8 @@ License along with this library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include /* Coefficients for ln(1+x) = x - x**2/2 + x**3 P(x)/Q(x) * 1/sqrt(2) <= x < sqrt(2) diff --git a/sysdeps/ieee754/ldbl-128ibm/e_logl.c b/sysdeps/ieee754/ldbl-128ibm/e_logl.c index 0912284c5c..14f47ebade 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_logl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_logl.c @@ -58,7 +58,7 @@ License along with this library; if not, see . */ -#include "math_private.h" +#include /* log(1+x) = x - .5 x^2 + x^3 l(x) -.0078125 <= x <= +.0078125 diff --git a/sysdeps/ieee754/ldbl-128ibm/e_powl.c b/sysdeps/ieee754/ldbl-128ibm/e_powl.c index ac7ca31ca4..52ce33abaa 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_powl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_powl.c @@ -64,8 +64,8 @@ * */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double bp[] = { 1.0L, diff --git a/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c b/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c index b584e53042..5352de9453 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c @@ -17,8 +17,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include #include /* diff --git a/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c b/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c index d4a847dbed..67d7db7fbe 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c @@ -21,8 +21,8 @@ * Based on fmodl() return x-[x/p]chopped*p exactlp. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double zero = 0.0L; diff --git a/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c b/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c index 4b53d90c93..4bae85a5a4 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c @@ -28,8 +28,8 @@ * only sinh(0)=0 is exact for finite x. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0, shuge = 1.0e307; diff --git a/sysdeps/ieee754/ldbl-128ibm/k_cosl.c b/sysdeps/ieee754/ldbl-128ibm/k_cosl.c index 7ab9b5da06..52414319a6 100644 --- a/sysdeps/ieee754/ldbl-128ibm/k_cosl.c +++ b/sysdeps/ieee754/ldbl-128ibm/k_cosl.c @@ -17,8 +17,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double c[] = { #define ONE c[0] diff --git a/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c b/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c index 23b726a6f3..f3dd954887 100644 --- a/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c +++ b/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c @@ -17,8 +17,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double c[] = { #define ONE c[0] diff --git a/sysdeps/ieee754/ldbl-128ibm/k_sinl.c b/sysdeps/ieee754/ldbl-128ibm/k_sinl.c index a51f55cd43..484b65fc8e 100644 --- a/sysdeps/ieee754/ldbl-128ibm/k_sinl.c +++ b/sysdeps/ieee754/ldbl-128ibm/k_sinl.c @@ -17,8 +17,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double c[] = { #define ONE c[0] diff --git a/sysdeps/ieee754/ldbl-128ibm/k_tanl.c b/sysdeps/ieee754/ldbl-128ibm/k_tanl.c index 478e501c81..1f6bad241b 100644 --- a/sysdeps/ieee754/ldbl-128ibm/k_tanl.c +++ b/sysdeps/ieee754/ldbl-128ibm/k_tanl.c @@ -56,8 +56,8 @@ * = 1 - 2*(tan(y) - (tan(y)^2)/(1+tan(y))) */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0L, pio4hi = 7.8539816339744830961566084581987569936977E-1L, diff --git a/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c b/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c index bc5a066edf..a833457eab 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c @@ -25,8 +25,8 @@ static char rcsid[] = "$NetBSD: s_asinh.c,v 1.9 1995/05/12 04:57:37 jtc Exp $"; * := sign(x)*log1p(|x| + x^2/(1 + sqrt(1+x^2))) */ -#include "math.h" -#include "math_private.h" +#include +#include #include static const long double diff --git a/sysdeps/ieee754/ldbl-128ibm/s_atanl.c b/sysdeps/ieee754/ldbl-128ibm/s_atanl.c index 49c4728c95..779209d3d7 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_atanl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_atanl.c @@ -60,7 +60,7 @@ #include -#include "math_private.h" +#include #include /* arctan(k/8), k = 0, ..., 82 */ diff --git a/sysdeps/ieee754/ldbl-128ibm/s_copysignl.c b/sysdeps/ieee754/ldbl-128ibm/s_copysignl.c index f3a906e657..a16a886852 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_copysignl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_copysignl.c @@ -23,8 +23,8 @@ static char rcsid[] = "$NetBSD: $"; * with the sign bit of y. */ -#include "math.h" -#include "math_private.h" +#include +#include #include long double __copysignl(long double x, long double y) diff --git a/sysdeps/ieee754/ldbl-128ibm/s_cosl.c b/sysdeps/ieee754/ldbl-128ibm/s_cosl.c index 57bae0cab6..23148392f1 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_cosl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_cosl.c @@ -45,8 +45,8 @@ */ #include -#include "math.h" -#include "math_private.h" +#include +#include #include long double __cosl(long double x) diff --git a/sysdeps/ieee754/ldbl-128ibm/s_ctanhl.c b/sysdeps/ieee754/ldbl-128ibm/s_ctanhl.c index 2945909f95..e4126395bd 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_ctanhl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_ctanhl.c @@ -22,7 +22,7 @@ #include #include -#include "math_private.h" +#include __complex__ long double diff --git a/sysdeps/ieee754/ldbl-128ibm/s_ctanl.c b/sysdeps/ieee754/ldbl-128ibm/s_ctanl.c index 8d59535c64..0b1bc4f70e 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_ctanl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_ctanl.c @@ -22,7 +22,7 @@ #include #include -#include "math_private.h" +#include __complex__ long double diff --git a/sysdeps/ieee754/ldbl-128ibm/s_erfl.c b/sysdeps/ieee754/ldbl-128ibm/s_erfl.c index 8868f7e1cf..f91a00ff5d 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_erfl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_erfl.c @@ -96,8 +96,8 @@ * erfc/erf(NaN) is NaN */ -#include "math.h" -#include "math_private.h" +#include +#include #include /* Evaluate P[n] x^n + P[n-1] x^(n-1) + ... + P[0] */ diff --git a/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c b/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c index 968d8f9722..98ae4e1cee 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c @@ -52,8 +52,8 @@ . */ #include -#include "math.h" -#include "math_private.h" +#include +#include #include /* exp(x) - 1 = x + 0.5 x^2 + x^3 P(x)/Q(x) diff --git a/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c b/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c index a288eac373..99146d8021 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c @@ -22,8 +22,8 @@ static char rcsid[] = "$NetBSD: $"; * fabsl(x) returns the absolute value of x. */ -#include "math.h" -#include "math_private.h" +#include +#include #include long double __fabsl(long double x) diff --git a/sysdeps/ieee754/ldbl-128ibm/s_finitel.c b/sysdeps/ieee754/ldbl-128ibm/s_finitel.c index 49f2c92385..8edb34154d 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_finitel.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_finitel.c @@ -22,8 +22,8 @@ static char rcsid[] = "$NetBSD: $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include #include int diff --git a/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c b/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c index c6ac22e08d..c0246d2594 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include #include /* diff --git a/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c b/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c index 215083bc27..3ac5374116 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c @@ -27,8 +27,8 @@ static char rcsid[] = "$NetBSD: $"; * with *exp=0. */ -#include "math.h" -#include "math_private.h" +#include +#include #include static const long double diff --git a/sysdeps/ieee754/ldbl-128ibm/s_ilogbl.c b/sysdeps/ieee754/ldbl-128ibm/s_ilogbl.c index 106c7311c7..a6f0e1e678 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_ilogbl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_ilogbl.c @@ -25,8 +25,8 @@ static char rcsid[] = "$NetBSD: $"; */ #include -#include "math.h" -#include "math_private.h" +#include +#include #include int __ilogbl(long double x) diff --git a/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c b/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c index edeaba5f7c..c8dd9ff98a 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c @@ -3,8 +3,8 @@ * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include int __isinf_nsl (long double x) diff --git a/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c b/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c index 717b57466d..5f5b0144b2 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c @@ -13,8 +13,8 @@ static char rcsid[] = "$NetBSD: $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include #include int diff --git a/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c b/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c index ae5ba8e1ff..157666cfbd 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c @@ -22,8 +22,8 @@ static char rcsid[] = "$NetBSD: $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include #include int diff --git a/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c b/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c index 30a53300c3..77c4fdea84 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c @@ -53,8 +53,8 @@ . */ -#include "math.h" -#include "math_private.h" +#include +#include #include /* Coefficients for log(1+x) = x - x^2 / 2 + x^3 P(x)/Q(x) diff --git a/sysdeps/ieee754/ldbl-128ibm/s_logbl.c b/sysdeps/ieee754/ldbl-128ibm/s_logbl.c index 10ae684d1c..f38b129971 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_logbl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_logbl.c @@ -23,8 +23,8 @@ static char rcsid[] = "$NetBSD: $"; * Use ilogb instead. */ -#include "math.h" -#include "math_private.h" +#include +#include #include long double __logbl(long double x) diff --git a/sysdeps/ieee754/ldbl-128ibm/s_modfl.c b/sysdeps/ieee754/ldbl-128ibm/s_modfl.c index 1fe323595a..39de9d4bfb 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_modfl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_modfl.c @@ -27,8 +27,8 @@ static char rcsid[] = "$NetBSD: $"; * No exception. */ -#include "math.h" -#include "math_private.h" +#include +#include #include static const long double one = 1.0; diff --git a/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c b/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c index bcf265d401..9ecfef179b 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c @@ -25,7 +25,7 @@ static char rcsid[] = "$NetBSD: $"; * Special cases: */ -#include "math.h" +#include #include #include #include diff --git a/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c b/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c index e88361a936..a674583744 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c @@ -18,7 +18,7 @@ static char rcsid[] = "$NetBSD: $"; #endif -#include "math.h" +#include #include #include #include diff --git a/sysdeps/ieee754/ldbl-128ibm/s_remquol.c b/sysdeps/ieee754/ldbl-128ibm/s_remquol.c index d081aee7a1..bb7a987af9 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_remquol.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_remquol.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include #include diff --git a/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c b/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c index 2c30d1c78a..e84561701f 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c @@ -25,8 +25,8 @@ static char rcsid[] = "$NetBSD: $"; * exponentiation or a multiplication. */ -#include "math.h" -#include "math_private.h" +#include +#include #include static const long double diff --git a/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c b/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c index 48102efcf5..01cdb70e1d 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c @@ -25,8 +25,8 @@ static char rcsid[] = "$NetBSD: $"; * exponentiation or a multiplication. */ -#include "math.h" -#include "math_private.h" +#include +#include #include static const long double diff --git a/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c b/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c index 082f86ffdb..964972750f 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c @@ -18,7 +18,7 @@ . */ #include -#include "math_private.h" +#include #include int diff --git a/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c b/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c index f099fec200..0b9d661591 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include #include void diff --git a/sysdeps/ieee754/ldbl-128ibm/s_sinl.c b/sysdeps/ieee754/ldbl-128ibm/s_sinl.c index e26d998888..6fec16f851 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_sinl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_sinl.c @@ -45,8 +45,8 @@ */ #include -#include "math.h" -#include "math_private.h" +#include +#include #include long double __sinl(long double x) diff --git a/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c b/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c index 40df484c8a..138b63cd1a 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c @@ -38,8 +38,8 @@ static char rcsid[] = "$NetBSD: s_tanh.c,v 1.7 1995/05/10 20:48:22 jtc Exp $"; * only tanh(0)=0 is exact for finite argument. */ -#include "math.h" -#include "math_private.h" +#include +#include #include static const long double one=1.0L, two=2.0L, tiny = 1.0e-300L; diff --git a/sysdeps/ieee754/ldbl-128ibm/s_tanl.c b/sysdeps/ieee754/ldbl-128ibm/s_tanl.c index 3de0a0da27..9967d0c206 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_tanl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_tanl.c @@ -45,8 +45,8 @@ */ #include -#include "math.h" -#include "math_private.h" +#include +#include #include long double __tanl(long double x) diff --git a/sysdeps/ieee754/ldbl-96/e_acoshl.c b/sysdeps/ieee754/ldbl-96/e_acoshl.c index 29004ec267..bbaef680bd 100644 --- a/sysdeps/ieee754/ldbl-96/e_acoshl.c +++ b/sysdeps/ieee754/ldbl-96/e_acoshl.c @@ -28,8 +28,8 @@ * acoshl(NaN) is NaN without signal. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0, diff --git a/sysdeps/ieee754/ldbl-96/e_asinl.c b/sysdeps/ieee754/ldbl-96/e_asinl.c index f71cd93128..c33701f11e 100644 --- a/sysdeps/ieee754/ldbl-96/e_asinl.c +++ b/sysdeps/ieee754/ldbl-96/e_asinl.c @@ -58,8 +58,8 @@ */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0L, diff --git a/sysdeps/ieee754/ldbl-96/e_atan2l.c b/sysdeps/ieee754/ldbl-96/e_atan2l.c index 535d0d6123..209f29bbd2 100644 --- a/sysdeps/ieee754/ldbl-96/e_atan2l.c +++ b/sysdeps/ieee754/ldbl-96/e_atan2l.c @@ -41,8 +41,8 @@ * to produce the hexadecimal values shown. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double tiny = 1.0e-4900L, diff --git a/sysdeps/ieee754/ldbl-96/e_atanhl.c b/sysdeps/ieee754/ldbl-96/e_atanhl.c index 0f3c7fb596..4c29243695 100644 --- a/sysdeps/ieee754/ldbl-96/e_atanhl.c +++ b/sysdeps/ieee754/ldbl-96/e_atanhl.c @@ -32,8 +32,8 @@ * */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0, huge = 1e4900L; diff --git a/sysdeps/ieee754/ldbl-96/e_coshl.c b/sysdeps/ieee754/ldbl-96/e_coshl.c index 6113f0719f..995c9922cb 100644 --- a/sysdeps/ieee754/ldbl-96/e_coshl.c +++ b/sysdeps/ieee754/ldbl-96/e_coshl.c @@ -34,8 +34,8 @@ static char rcsid[] = "$NetBSD: e_cosh.c,v 1.7 1995/05/10 20:44:58 jtc Exp $"; * only coshl(0)=1 is exact for finite x. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0, half=0.5, huge = 1.0e4900L; diff --git a/sysdeps/ieee754/ldbl-96/e_hypotl.c b/sysdeps/ieee754/ldbl-96/e_hypotl.c index 7a1ad3fd23..306f92924c 100644 --- a/sysdeps/ieee754/ldbl-96/e_hypotl.c +++ b/sysdeps/ieee754/ldbl-96/e_hypotl.c @@ -46,8 +46,8 @@ * than 1 ulps (units in the last place) */ -#include "math.h" -#include "math_private.h" +#include +#include long double __ieee754_hypotl(long double x, long double y) { diff --git a/sysdeps/ieee754/ldbl-96/e_j0l.c b/sysdeps/ieee754/ldbl-96/e_j0l.c index 0e64bee7c2..3939259d81 100644 --- a/sysdeps/ieee754/ldbl-96/e_j0l.c +++ b/sysdeps/ieee754/ldbl-96/e_j0l.c @@ -71,8 +71,8 @@ * 3. Special cases: y0(0)=-inf, y0(x<0)=NaN, y0(inf)=0. */ -#include "math.h" -#include "math_private.h" +#include +#include static long double pzero (long double), qzero (long double); diff --git a/sysdeps/ieee754/ldbl-96/e_j1l.c b/sysdeps/ieee754/ldbl-96/e_j1l.c index 8710e38934..785c0b0676 100644 --- a/sysdeps/ieee754/ldbl-96/e_j1l.c +++ b/sysdeps/ieee754/ldbl-96/e_j1l.c @@ -71,8 +71,8 @@ * by method mentioned above. */ -#include "math.h" -#include "math_private.h" +#include +#include static long double pone (long double), qone (long double); diff --git a/sysdeps/ieee754/ldbl-96/e_jnl.c b/sysdeps/ieee754/ldbl-96/e_jnl.c index 5c9c0530f1..2e206e7e22 100644 --- a/sysdeps/ieee754/ldbl-96/e_jnl.c +++ b/sysdeps/ieee754/ldbl-96/e_jnl.c @@ -56,8 +56,8 @@ * */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double invsqrtpi = 5.64189583547756286948079e-1L, two = 2.0e0L, one = 1.0e0L; diff --git a/sysdeps/ieee754/ldbl-96/e_lgammal_r.c b/sysdeps/ieee754/ldbl-96/e_lgammal_r.c index 741a26f4d0..1a95f846ae 100644 --- a/sysdeps/ieee754/ldbl-96/e_lgammal_r.c +++ b/sysdeps/ieee754/ldbl-96/e_lgammal_r.c @@ -91,8 +91,8 @@ * */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double half = 0.5L, diff --git a/sysdeps/ieee754/ldbl-96/e_remainderl.c b/sysdeps/ieee754/ldbl-96/e_remainderl.c index 41c4c7b34e..290e483ae5 100644 --- a/sysdeps/ieee754/ldbl-96/e_remainderl.c +++ b/sysdeps/ieee754/ldbl-96/e_remainderl.c @@ -23,8 +23,8 @@ * Based on fmod() return x-[x/p]chopped*p exactlp. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double zero = 0.0; diff --git a/sysdeps/ieee754/ldbl-96/e_sinhl.c b/sysdeps/ieee754/ldbl-96/e_sinhl.c index 8593272406..4978f348bb 100644 --- a/sysdeps/ieee754/ldbl-96/e_sinhl.c +++ b/sysdeps/ieee754/ldbl-96/e_sinhl.c @@ -36,8 +36,8 @@ static char rcsid[] = "$NetBSD: $"; * only sinhl(0)=0 is exact for finite x. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0, shuge = 1.0e4931L; diff --git a/sysdeps/ieee754/ldbl-96/s_asinhl.c b/sysdeps/ieee754/ldbl-96/s_asinhl.c index 415be5f19e..5e679bd719 100644 --- a/sysdeps/ieee754/ldbl-96/s_asinhl.c +++ b/sysdeps/ieee754/ldbl-96/s_asinhl.c @@ -29,8 +29,8 @@ static char rcsid[] = "$NetBSD: $"; * := signl(x)*log1pl(|x| + x^2/(1 + sqrtl(1+x^2))) */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.000000000000000000000e+00L, /* 0x3FFF, 0x00000000, 0x00000000 */ diff --git a/sysdeps/ieee754/ldbl-96/s_cbrtl.c b/sysdeps/ieee754/ldbl-96/s_cbrtl.c index a1286d32e8..07236345b9 100644 --- a/sysdeps/ieee754/ldbl-96/s_cbrtl.c +++ b/sysdeps/ieee754/ldbl-96/s_cbrtl.c @@ -18,8 +18,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include #define CBRT2 1.2599210498948731648 /* 2^(1/3) */ diff --git a/sysdeps/ieee754/ldbl-96/s_ceill.c b/sysdeps/ieee754/ldbl-96/s_ceill.c index 96cc27003e..aef8a32f63 100644 --- a/sysdeps/ieee754/ldbl-96/s_ceill.c +++ b/sysdeps/ieee754/ldbl-96/s_ceill.c @@ -27,8 +27,8 @@ static char rcsid[] = "$NetBSD: $"; * Inexact flag raised if x not equal to ceil(x). */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double huge = 1.0e4930; diff --git a/sysdeps/ieee754/ldbl-96/s_copysignl.c b/sysdeps/ieee754/ldbl-96/s_copysignl.c index 3a390e9ef3..b1c442452f 100644 --- a/sysdeps/ieee754/ldbl-96/s_copysignl.c +++ b/sysdeps/ieee754/ldbl-96/s_copysignl.c @@ -24,8 +24,8 @@ static char rcsid[] = "$NetBSD: $"; * with the sign bit of y. */ -#include "math.h" -#include "math_private.h" +#include +#include long double __copysignl(long double x, long double y) { diff --git a/sysdeps/ieee754/ldbl-96/s_cosl.c b/sysdeps/ieee754/ldbl-96/s_cosl.c index 6cfebf6382..9d5606cfec 100644 --- a/sysdeps/ieee754/ldbl-96/s_cosl.c +++ b/sysdeps/ieee754/ldbl-96/s_cosl.c @@ -50,8 +50,8 @@ static char rcsid[] = "$NetBSD: $"; */ #include -#include "math.h" -#include "math_private.h" +#include +#include long double __cosl(long double x) { diff --git a/sysdeps/ieee754/ldbl-96/s_erfl.c b/sysdeps/ieee754/ldbl-96/s_erfl.c index 9b25a18a8b..b49a49be98 100644 --- a/sysdeps/ieee754/ldbl-96/s_erfl.c +++ b/sysdeps/ieee754/ldbl-96/s_erfl.c @@ -104,8 +104,8 @@ */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double tiny = 1e-4931L, diff --git a/sysdeps/ieee754/ldbl-96/s_fabsl.c b/sysdeps/ieee754/ldbl-96/s_fabsl.c index 3f5106dba2..fdc70e0dcd 100644 --- a/sysdeps/ieee754/ldbl-96/s_fabsl.c +++ b/sysdeps/ieee754/ldbl-96/s_fabsl.c @@ -22,8 +22,8 @@ static char rcsid[] = "$NetBSD: $"; * fabsl(x) returns the absolute value of x. */ -#include "math.h" -#include "math_private.h" +#include +#include long double __fabsl(long double x) { diff --git a/sysdeps/ieee754/ldbl-96/s_finitel.c b/sysdeps/ieee754/ldbl-96/s_finitel.c index f30a4d2a22..fbf4cc691c 100644 --- a/sysdeps/ieee754/ldbl-96/s_finitel.c +++ b/sysdeps/ieee754/ldbl-96/s_finitel.c @@ -23,8 +23,8 @@ static char rcsid[] = "$NetBSD: $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include int __finitel(long double x) { diff --git a/sysdeps/ieee754/ldbl-96/s_floorl.c b/sysdeps/ieee754/ldbl-96/s_floorl.c index d44e36e908..cad7935b33 100644 --- a/sysdeps/ieee754/ldbl-96/s_floorl.c +++ b/sysdeps/ieee754/ldbl-96/s_floorl.c @@ -27,8 +27,8 @@ static char rcsid[] = "$NetBSD: $"; * Inexact flag raised if x not equal to floor(x). */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double huge = 1.0e4930; diff --git a/sysdeps/ieee754/ldbl-96/s_fpclassifyl.c b/sysdeps/ieee754/ldbl-96/s_fpclassifyl.c index e0b34a093a..3df59c2239 100644 --- a/sysdeps/ieee754/ldbl-96/s_fpclassifyl.c +++ b/sysdeps/ieee754/ldbl-96/s_fpclassifyl.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include int diff --git a/sysdeps/ieee754/ldbl-96/s_frexpl.c b/sysdeps/ieee754/ldbl-96/s_frexpl.c index 57444c5a48..ab217a659b 100644 --- a/sysdeps/ieee754/ldbl-96/s_frexpl.c +++ b/sysdeps/ieee754/ldbl-96/s_frexpl.c @@ -29,8 +29,8 @@ static char rcsid[] = "$NetBSD: $"; */ #include -#include "math.h" -#include "math_private.h" +#include +#include static const long double #if LDBL_MANT_DIG == 64 diff --git a/sysdeps/ieee754/ldbl-96/s_ilogbl.c b/sysdeps/ieee754/ldbl-96/s_ilogbl.c index fd030a7f4c..7534599941 100644 --- a/sysdeps/ieee754/ldbl-96/s_ilogbl.c +++ b/sysdeps/ieee754/ldbl-96/s_ilogbl.c @@ -26,8 +26,8 @@ static char rcsid[] = "$NetBSD: $"; */ #include -#include "math.h" -#include "math_private.h" +#include +#include int __ilogbl(long double x) { diff --git a/sysdeps/ieee754/ldbl-96/s_isinf_nsl.c b/sysdeps/ieee754/ldbl-96/s_isinf_nsl.c index aa590307ea..9c7868b490 100644 --- a/sysdeps/ieee754/ldbl-96/s_isinf_nsl.c +++ b/sysdeps/ieee754/ldbl-96/s_isinf_nsl.c @@ -6,8 +6,8 @@ * __isinf_nsl(x) returns != 0 if x is ±inf, else 0; */ -#include "math.h" -#include "math_private.h" +#include +#include int __isinf_nsl (long double x) diff --git a/sysdeps/ieee754/ldbl-96/s_isinfl.c b/sysdeps/ieee754/ldbl-96/s_isinfl.c index 9583234efa..94639f00f8 100644 --- a/sysdeps/ieee754/ldbl-96/s_isinfl.c +++ b/sysdeps/ieee754/ldbl-96/s_isinfl.c @@ -13,8 +13,8 @@ static char rcsid[] = "$NetBSD: $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include int __isinfl (long double x) diff --git a/sysdeps/ieee754/ldbl-96/s_isnanl.c b/sysdeps/ieee754/ldbl-96/s_isnanl.c index 9814aa7888..fd270fd849 100644 --- a/sysdeps/ieee754/ldbl-96/s_isnanl.c +++ b/sysdeps/ieee754/ldbl-96/s_isnanl.c @@ -23,8 +23,8 @@ static char rcsid[] = "$NetBSD: $"; * no branching! */ -#include "math.h" -#include "math_private.h" +#include +#include int __isnanl(long double x) { diff --git a/sysdeps/ieee754/ldbl-96/s_llrintl.c b/sysdeps/ieee754/ldbl-96/s_llrintl.c index 71efe13521..32a614b66d 100644 --- a/sysdeps/ieee754/ldbl-96/s_llrintl.c +++ b/sysdeps/ieee754/ldbl-96/s_llrintl.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include static const long double two63[2] = { diff --git a/sysdeps/ieee754/ldbl-96/s_llroundl.c b/sysdeps/ieee754/ldbl-96/s_llroundl.c index a2ad2dc145..e75cd43301 100644 --- a/sysdeps/ieee754/ldbl-96/s_llroundl.c +++ b/sysdeps/ieee754/ldbl-96/s_llroundl.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include long long int diff --git a/sysdeps/ieee754/ldbl-96/s_logbl.c b/sysdeps/ieee754/ldbl-96/s_logbl.c index 27f5ed7ca2..95b644c030 100644 --- a/sysdeps/ieee754/ldbl-96/s_logbl.c +++ b/sysdeps/ieee754/ldbl-96/s_logbl.c @@ -24,8 +24,8 @@ static char rcsid[] = "$NetBSD: $"; * Use ilogb instead. */ -#include "math.h" -#include "math_private.h" +#include +#include long double __logbl(long double x) { diff --git a/sysdeps/ieee754/ldbl-96/s_lrintl.c b/sysdeps/ieee754/ldbl-96/s_lrintl.c index 078985c4f8..3f61099dd0 100644 --- a/sysdeps/ieee754/ldbl-96/s_lrintl.c +++ b/sysdeps/ieee754/ldbl-96/s_lrintl.c @@ -20,7 +20,7 @@ #include -#include "math_private.h" +#include static const long double two63[2] = { diff --git a/sysdeps/ieee754/ldbl-96/s_lroundl.c b/sysdeps/ieee754/ldbl-96/s_lroundl.c index 01b51fbb84..d41b7ca95b 100644 --- a/sysdeps/ieee754/ldbl-96/s_lroundl.c +++ b/sysdeps/ieee754/ldbl-96/s_lroundl.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include long int diff --git a/sysdeps/ieee754/ldbl-96/s_modfl.c b/sysdeps/ieee754/ldbl-96/s_modfl.c index c7659119f3..e9401d0f5d 100644 --- a/sysdeps/ieee754/ldbl-96/s_modfl.c +++ b/sysdeps/ieee754/ldbl-96/s_modfl.c @@ -24,8 +24,8 @@ * No exception. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one = 1.0; diff --git a/sysdeps/ieee754/ldbl-96/s_nearbyintl.c b/sysdeps/ieee754/ldbl-96/s_nearbyintl.c index e9ba5027ad..ed9836c879 100644 --- a/sysdeps/ieee754/ldbl-96/s_nearbyintl.c +++ b/sysdeps/ieee754/ldbl-96/s_nearbyintl.c @@ -26,8 +26,8 @@ */ #include -#include "math.h" -#include "math_private.h" +#include +#include static const long double TWO63[2]={ diff --git a/sysdeps/ieee754/ldbl-96/s_nextafterl.c b/sysdeps/ieee754/ldbl-96/s_nextafterl.c index 66d7580e99..6859349b7c 100644 --- a/sysdeps/ieee754/ldbl-96/s_nextafterl.c +++ b/sysdeps/ieee754/ldbl-96/s_nextafterl.c @@ -25,7 +25,7 @@ static char rcsid[] = "$NetBSD: $"; * Special cases: */ -#include "math.h" +#include #include long double __nextafterl(long double x, long double y) diff --git a/sysdeps/ieee754/ldbl-96/s_nexttoward.c b/sysdeps/ieee754/ldbl-96/s_nexttoward.c index 2ea61a78ca..9b93ecae64 100644 --- a/sysdeps/ieee754/ldbl-96/s_nexttoward.c +++ b/sysdeps/ieee754/ldbl-96/s_nexttoward.c @@ -25,7 +25,7 @@ static char rcsid[] = "$NetBSD: $"; * Special cases: */ -#include "math.h" +#include #include #include diff --git a/sysdeps/ieee754/ldbl-96/s_nexttowardf.c b/sysdeps/ieee754/ldbl-96/s_nexttowardf.c index 665a8c6ca8..aeb92b623b 100644 --- a/sysdeps/ieee754/ldbl-96/s_nexttowardf.c +++ b/sysdeps/ieee754/ldbl-96/s_nexttowardf.c @@ -17,7 +17,7 @@ static char rcsid[] = "$NetBSD: $"; #endif -#include "math.h" +#include #include #include diff --git a/sysdeps/ieee754/ldbl-96/s_remquol.c b/sysdeps/ieee754/ldbl-96/s_remquol.c index b162ab4351..a0825c9521 100644 --- a/sysdeps/ieee754/ldbl-96/s_remquol.c +++ b/sysdeps/ieee754/ldbl-96/s_remquol.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include static const long double zero = 0.0; diff --git a/sysdeps/ieee754/ldbl-96/s_rintl.c b/sysdeps/ieee754/ldbl-96/s_rintl.c index b69f306d7b..b6f899d4ef 100644 --- a/sysdeps/ieee754/ldbl-96/s_rintl.c +++ b/sysdeps/ieee754/ldbl-96/s_rintl.c @@ -28,8 +28,8 @@ static char rcsid[] = "$NetBSD: $"; * Inexact flag raised if x not equal to rintl(x). */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double TWO63[2]={ diff --git a/sysdeps/ieee754/ldbl-96/s_roundl.c b/sysdeps/ieee754/ldbl-96/s_roundl.c index 170aee8c4d..b8626a509e 100644 --- a/sysdeps/ieee754/ldbl-96/s_roundl.c +++ b/sysdeps/ieee754/ldbl-96/s_roundl.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include static const long double huge = 1.0e4930L; diff --git a/sysdeps/ieee754/ldbl-96/s_scalblnl.c b/sysdeps/ieee754/ldbl-96/s_scalblnl.c index 755a212555..76a4c59e6b 100644 --- a/sysdeps/ieee754/ldbl-96/s_scalblnl.c +++ b/sysdeps/ieee754/ldbl-96/s_scalblnl.c @@ -21,8 +21,8 @@ * exponentiation or a multiplication. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double two63 = 4.50359962737049600000e+15, diff --git a/sysdeps/ieee754/ldbl-96/s_scalbnl.c b/sysdeps/ieee754/ldbl-96/s_scalbnl.c index 6946cf232f..266a37b9c0 100644 --- a/sysdeps/ieee754/ldbl-96/s_scalbnl.c +++ b/sysdeps/ieee754/ldbl-96/s_scalbnl.c @@ -21,8 +21,8 @@ * exponentiation or a multiplication. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double two64 = 1.8446744073709551616e19L, diff --git a/sysdeps/ieee754/ldbl-96/s_signbitl.c b/sysdeps/ieee754/ldbl-96/s_signbitl.c index a213d46d71..ffded99494 100644 --- a/sysdeps/ieee754/ldbl-96/s_signbitl.c +++ b/sysdeps/ieee754/ldbl-96/s_signbitl.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include int __signbitl (long double x) diff --git a/sysdeps/ieee754/ldbl-96/s_sincosl.c b/sysdeps/ieee754/ldbl-96/s_sincosl.c index 7ad84a0ddf..2858954b32 100644 --- a/sysdeps/ieee754/ldbl-96/s_sincosl.c +++ b/sysdeps/ieee754/ldbl-96/s_sincosl.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include void diff --git a/sysdeps/ieee754/ldbl-96/s_sinl.c b/sysdeps/ieee754/ldbl-96/s_sinl.c index 4f7ed91e3e..f15eb749bd 100644 --- a/sysdeps/ieee754/ldbl-96/s_sinl.c +++ b/sysdeps/ieee754/ldbl-96/s_sinl.c @@ -50,8 +50,8 @@ static char rcsid[] = "$NetBSD: $"; */ #include -#include "math.h" -#include "math_private.h" +#include +#include long double __sinl(long double x) { diff --git a/sysdeps/ieee754/ldbl-96/s_tanhl.c b/sysdeps/ieee754/ldbl-96/s_tanhl.c index 4547517e93..7ec6247315 100644 --- a/sysdeps/ieee754/ldbl-96/s_tanhl.c +++ b/sysdeps/ieee754/ldbl-96/s_tanhl.c @@ -42,8 +42,8 @@ static char rcsid[] = "$NetBSD: $"; * only tanhl(0)=0 is exact for finite argument. */ -#include "math.h" -#include "math_private.h" +#include +#include static const long double one=1.0, two=2.0, tiny = 1.0e-4900L; diff --git a/sysdeps/ieee754/ldbl-96/s_tanl.c b/sysdeps/ieee754/ldbl-96/s_tanl.c index 8e1686003d..3054601a50 100644 --- a/sysdeps/ieee754/ldbl-96/s_tanl.c +++ b/sysdeps/ieee754/ldbl-96/s_tanl.c @@ -48,8 +48,8 @@ static char rcsid[] = "$NetBSD: $"; * TRIG(x) returns trig(x) nearly rounded */ -#include "math.h" -#include "math_private.h" +#include +#include long double __tanl(long double x) { diff --git a/sysdeps/ieee754/ldbl-96/s_truncl.c b/sysdeps/ieee754/ldbl-96/s_truncl.c index 827088ae10..75a38261af 100644 --- a/sysdeps/ieee754/ldbl-96/s_truncl.c +++ b/sysdeps/ieee754/ldbl-96/s_truncl.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include long double diff --git a/sysdeps/ieee754/s_lib_version.c b/sysdeps/ieee754/s_lib_version.c index 121bdaa540..a377ab1f78 100644 --- a/sysdeps/ieee754/s_lib_version.c +++ b/sysdeps/ieee754/s_lib_version.c @@ -18,8 +18,8 @@ static char rcsid[] = "$NetBSD: s_lib_version.c,v 1.6 1995/05/10 20:47:44 jtc Ex * MACRO for standards */ -#include "math.h" -#include "math_private.h" +#include +#include /* * define and initialize _LIB_VERSION diff --git a/sysdeps/ieee754/s_matherr.c b/sysdeps/ieee754/s_matherr.c index 88d2dbed2c..d5dc6f122d 100644 --- a/sysdeps/ieee754/s_matherr.c +++ b/sysdeps/ieee754/s_matherr.c @@ -14,8 +14,8 @@ static char rcsid[] = "$NetBSD: s_matherr.c,v 1.6 1995/05/10 20:47:53 jtc Exp $"; #endif -#include "math.h" -#include "math_private.h" +#include +#include int weak_function diff --git a/sysdeps/ieee754/s_signgam.c b/sysdeps/ieee754/s_signgam.c index 021b0ffca1..ee207d6505 100644 --- a/sysdeps/ieee754/s_signgam.c +++ b/sysdeps/ieee754/s_signgam.c @@ -1,3 +1,3 @@ -#include "math.h" -#include "math_private.h" +#include +#include int signgam; diff --git a/sysdeps/powerpc/fpu/e_hypot.c b/sysdeps/powerpc/fpu/e_hypot.c index 3323bb87ea..cfadd5c856 100644 --- a/sysdeps/powerpc/fpu/e_hypot.c +++ b/sysdeps/powerpc/fpu/e_hypot.c @@ -17,8 +17,8 @@ License along with the GNU C Library; see the file COPYING.LIB. If not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include static const double two60 = 1.152921504606847e+18; static const double two500 = 3.2733906078961419e+150; diff --git a/sysdeps/powerpc/fpu/e_hypotf.c b/sysdeps/powerpc/fpu/e_hypotf.c index 541b597d54..3838f53d85 100644 --- a/sysdeps/powerpc/fpu/e_hypotf.c +++ b/sysdeps/powerpc/fpu/e_hypotf.c @@ -17,8 +17,8 @@ License along with the GNU C Library; see the file COPYING.LIB. If not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include static const float two30 = 1.0737418e09; diff --git a/sysdeps/powerpc/fpu/e_rem_pio2f.c b/sysdeps/powerpc/fpu/e_rem_pio2f.c index 1d170d9786..8dfbdaf6db 100644 --- a/sysdeps/powerpc/fpu/e_rem_pio2f.c +++ b/sysdeps/powerpc/fpu/e_rem_pio2f.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include #include "s_float_bitwise.h" /* defined in sysdeps/powerpc/fpu/k_rem_pio2f.c */ diff --git a/sysdeps/powerpc/fpu/k_cosf.c b/sysdeps/powerpc/fpu/k_cosf.c index 04a69fd948..e2571d6802 100644 --- a/sysdeps/powerpc/fpu/k_cosf.c +++ b/sysdeps/powerpc/fpu/k_cosf.c @@ -17,8 +17,8 @@ License along with the GNU C Library; see the file COPYING.LIB. If not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include static const float twom27 = 7.4505806e-09; static const float dot3 = 3.0000001e-01; diff --git a/sysdeps/powerpc/fpu/k_rem_pio2f.c b/sysdeps/powerpc/fpu/k_rem_pio2f.c index 6f91e57e71..2060642743 100644 --- a/sysdeps/powerpc/fpu/k_rem_pio2f.c +++ b/sysdeps/powerpc/fpu/k_rem_pio2f.c @@ -19,7 +19,7 @@ #include -#include "math_private.h" +#include #include "s_float_bitwise.h" diff --git a/sysdeps/powerpc/fpu/k_sinf.c b/sysdeps/powerpc/fpu/k_sinf.c index e0dc48db29..ab4561e65e 100644 --- a/sysdeps/powerpc/fpu/k_sinf.c +++ b/sysdeps/powerpc/fpu/k_sinf.c @@ -17,8 +17,8 @@ License along with the GNU C Library; see the file COPYING.LIB. If not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include static const float twom27 = 7.4505806000e-09; diff --git a/sysdeps/powerpc/fpu/s_cosf.c b/sysdeps/powerpc/fpu/s_cosf.c index bdd663d381..6314155528 100644 --- a/sysdeps/powerpc/fpu/s_cosf.c +++ b/sysdeps/powerpc/fpu/s_cosf.c @@ -18,8 +18,8 @@ not, see . */ #include -#include "math.h" -#include "math_private.h" +#include +#include static const float one = 1.0; static const float pio4 = 7.8539801e-1; diff --git a/sysdeps/powerpc/fpu/s_float_bitwise.h b/sysdeps/powerpc/fpu/s_float_bitwise.h index 9ef947b66e..d01a0e00e4 100644 --- a/sysdeps/powerpc/fpu/s_float_bitwise.h +++ b/sysdeps/powerpc/fpu/s_float_bitwise.h @@ -20,7 +20,7 @@ #ifndef _FLOAT_BITWISE_ #define _FLOAT_BITWISE_ 1 -#include "math_private.h" +#include /* Returns (int)(num & 0x7FFFFFF0 == value) */ static inline diff --git a/sysdeps/powerpc/fpu/s_isnan.c b/sysdeps/powerpc/fpu/s_isnan.c index 98ed237d74..777d3518f6 100644 --- a/sysdeps/powerpc/fpu/s_isnan.c +++ b/sysdeps/powerpc/fpu/s_isnan.c @@ -21,7 +21,7 @@ #define isnanf Xisnanf #define __GI___isnanf __GI___Xisnanf -#include "math.h" +#include #include #include diff --git a/sysdeps/powerpc/fpu/s_rint.c b/sysdeps/powerpc/fpu/s_rint.c index ca72b40a52..3888009670 100644 --- a/sysdeps/powerpc/fpu/s_rint.c +++ b/sysdeps/powerpc/fpu/s_rint.c @@ -16,7 +16,7 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" +#include double __rint (double x) diff --git a/sysdeps/powerpc/fpu/s_rintf.c b/sysdeps/powerpc/fpu/s_rintf.c index 50f9b000bc..de584e5f61 100644 --- a/sysdeps/powerpc/fpu/s_rintf.c +++ b/sysdeps/powerpc/fpu/s_rintf.c @@ -16,7 +16,7 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" +#include float __rintf (float x) diff --git a/sysdeps/powerpc/fpu/s_sinf.c b/sysdeps/powerpc/fpu/s_sinf.c index 680ee3eeff..3440b862de 100644 --- a/sysdeps/powerpc/fpu/s_sinf.c +++ b/sysdeps/powerpc/fpu/s_sinf.c @@ -18,8 +18,8 @@ not, see . */ #include -#include "math.h" -#include "math_private.h" +#include +#include static const float pio4 = 7.8539801e-1; diff --git a/sysdeps/powerpc/fpu/w_sqrt.c b/sysdeps/powerpc/fpu/w_sqrt.c index a3a68acb98..c8ee010b7c 100644 --- a/sysdeps/powerpc/fpu/w_sqrt.c +++ b/sysdeps/powerpc/fpu/w_sqrt.c @@ -16,8 +16,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include #include double diff --git a/sysdeps/powerpc/fpu/w_sqrtf.c b/sysdeps/powerpc/fpu/w_sqrtf.c index 2989563f60..39b5b20a03 100644 --- a/sysdeps/powerpc/fpu/w_sqrtf.c +++ b/sysdeps/powerpc/fpu/w_sqrtf.c @@ -16,8 +16,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include #include #include diff --git a/sysdeps/powerpc/powerpc32/fpu/s_llrintf.c b/sysdeps/powerpc/powerpc32/fpu/s_llrintf.c index df86846f78..d2112b8cb1 100644 --- a/sysdeps/powerpc/powerpc32/fpu/s_llrintf.c +++ b/sysdeps/powerpc/powerpc32/fpu/s_llrintf.c @@ -16,7 +16,7 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" +#include long long int __llrintf (float x) diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c b/sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c index db57f62ef7..2db82810eb 100644 --- a/sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c +++ b/sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c @@ -27,7 +27,7 @@ /*Converting from double precision to Multi-precision and calculating */ /* e^x */ /**************************************************************************/ -#include "math_private.h" +#include #ifdef NO_LONG_DOUBLE #include "mpa.h" diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c b/sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c index e01e53360c..fdb27718e2 100644 --- a/sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c +++ b/sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c @@ -32,7 +32,7 @@ /*************************************************************************/ #include "mpa.h" -#include "math_private.h" +#include void __mpexp (mp_no * x, mp_no * y, int p); void __mplog (mp_no * x, mp_no * y, int p); diff --git a/sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c b/sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c index db57f62ef7..2db82810eb 100644 --- a/sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c +++ b/sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c @@ -27,7 +27,7 @@ /*Converting from double precision to Multi-precision and calculating */ /* e^x */ /**************************************************************************/ -#include "math_private.h" +#include #ifdef NO_LONG_DOUBLE #include "mpa.h" diff --git a/sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c b/sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c index e01e53360c..fdb27718e2 100644 --- a/sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c +++ b/sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c @@ -32,7 +32,7 @@ /*************************************************************************/ #include "mpa.h" -#include "math_private.h" +#include void __mpexp (mp_no * x, mp_no * y, int p); void __mplog (mp_no * x, mp_no * y, int p); diff --git a/sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c b/sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c index ef733c0b95..1bd6a67a92 100644 --- a/sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c +++ b/sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c @@ -17,8 +17,8 @@ . */ #include -#include "math.h" -#include "math_private.h" +#include +#include #include double diff --git a/sysdeps/powerpc/powerpc64/power4/fpu/w_sqrtf.c b/sysdeps/powerpc/powerpc64/power4/fpu/w_sqrtf.c index 615b7133ae..0e7e6923ab 100644 --- a/sysdeps/powerpc/powerpc64/power4/fpu/w_sqrtf.c +++ b/sysdeps/powerpc/powerpc64/power4/fpu/w_sqrtf.c @@ -16,8 +16,8 @@ License along with the GNU C Library; if not, see . */ -#include "math.h" -#include "math_private.h" +#include +#include #include #include -- cgit 1.4.1 From b8c036204fd01dce20f7c610c4295709f59a2a39 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Fri, 9 Mar 2012 11:35:13 -0800 Subject: Use include_next to chain math_private.h headers. --- ChangeLog | 6 ++++++ sysdeps/i386/fpu/math_private.h | 2 +- sysdeps/powerpc/fpu/math_private.h | 2 +- sysdeps/x86_64/fpu/math_private.h | 2 +- 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 096a32b219..b4410cfc77 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2012-03-09 Richard Henderson + + * sysdeps/i386/fpu/math_private.h: Use include_next for math_private.h. + * sysdeps/powerpc/fpu/math_private.h: Likewise. + * sysdeps/x86_64/fpu/math_private.h: Likewise. + 2012-03-09 Richard Henderson * sysdeps/i386/fpu/s_fpclassifyl.c, sysdeps/i386/fpu/s_isinfl.c, diff --git a/sysdeps/i386/fpu/math_private.h b/sysdeps/i386/fpu/math_private.h index 8a51851377..5253998a57 100644 --- a/sysdeps/i386/fpu/math_private.h +++ b/sysdeps/i386/fpu/math_private.h @@ -15,5 +15,5 @@ do \ } \ while (0) -#include +#include_next #endif diff --git a/sysdeps/powerpc/fpu/math_private.h b/sysdeps/powerpc/fpu/math_private.h index 28628f0540..a916be31eb 100644 --- a/sysdeps/powerpc/fpu/math_private.h +++ b/sysdeps/powerpc/fpu/math_private.h @@ -23,7 +23,7 @@ #include #include #include -#include +#include_next # if __WORDSIZE == 64 || defined _ARCH_PWR4 # define __CPU_HAS_FSQRT 1 diff --git a/sysdeps/x86_64/fpu/math_private.h b/sysdeps/x86_64/fpu/math_private.h index 9b8d31de87..c8616f654a 100644 --- a/sysdeps/x86_64/fpu/math_private.h +++ b/sysdeps/x86_64/fpu/math_private.h @@ -16,7 +16,7 @@ __asm __volatile ("" : : "f" (x)); \ } while (0) -#include +#include_next /* We can do a few things better on x86-64. */ -- cgit 1.4.1 From 5f0a5daeee4d32db4ec1f987b894a878e5a1f37f Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Fri, 9 Mar 2012 15:45:34 -0800 Subject: Move math/math_private.h to sysdeps/generic/math_private.h. This reverts commit 60d6f5a6f50d838bcb4240fcc0223cac445c6c83. --- ChangeLog | 6 + include/math_private.h | 1 - math/math_private.h | 392 ----------------------------------------- sysdeps/generic/math_private.h | 392 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 398 insertions(+), 393 deletions(-) delete mode 100644 include/math_private.h delete mode 100644 math/math_private.h create mode 100644 sysdeps/generic/math_private.h diff --git a/ChangeLog b/ChangeLog index b4410cfc77..7bf4d96e24 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2012-03-09 Richard Henderson + + * include/math_private.h: Remove file. + * math/math_private.h: Move file ... + * sysdeps/generic/math_private.h: ... here. + 2012-03-09 Richard Henderson * sysdeps/i386/fpu/math_private.h: Use include_next for math_private.h. diff --git a/include/math_private.h b/include/math_private.h deleted file mode 100644 index cb71bafe8a..0000000000 --- a/include/math_private.h +++ /dev/null @@ -1 +0,0 @@ -#include diff --git a/math/math_private.h b/math/math_private.h deleted file mode 100644 index 777762dd33..0000000000 --- a/math/math_private.h +++ /dev/null @@ -1,392 +0,0 @@ -/* - * ==================================================== - * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. - * - * Developed at SunPro, a Sun Microsystems, Inc. business. - * Permission to use, copy, modify, and distribute this - * software is freely granted, provided that this notice - * is preserved. - * ==================================================== - */ - -/* - * from: @(#)fdlibm.h 5.1 93/09/24 - */ - -#ifndef _MATH_PRIVATE_H_ -#define _MATH_PRIVATE_H_ - -#include -#include -#include - -/* The original fdlibm code used statements like: - n0 = ((*(int*)&one)>>29)^1; * index of high word * - ix0 = *(n0+(int*)&x); * high word of x * - ix1 = *((1-n0)+(int*)&x); * low word of x * - to dig two 32 bit words out of the 64 bit IEEE floating point - value. That is non-ANSI, and, moreover, the gcc instruction - scheduler gets it wrong. We instead use the following macros. - Unlike the original code, we determine the endianness at compile - time, not at run time; I don't see much benefit to selecting - endianness at run time. */ - -/* A union which permits us to convert between a double and two 32 bit - ints. */ - -#if __FLOAT_WORD_ORDER == BIG_ENDIAN - -typedef union -{ - double value; - struct - { - u_int32_t msw; - u_int32_t lsw; - } parts; - uint64_t word; -} ieee_double_shape_type; - -#endif - -#if __FLOAT_WORD_ORDER == LITTLE_ENDIAN - -typedef union -{ - double value; - struct - { - u_int32_t lsw; - u_int32_t msw; - } parts; - uint64_t word; -} ieee_double_shape_type; - -#endif - -/* Get two 32 bit ints from a double. */ - -#define EXTRACT_WORDS(ix0,ix1,d) \ -do { \ - ieee_double_shape_type ew_u; \ - ew_u.value = (d); \ - (ix0) = ew_u.parts.msw; \ - (ix1) = ew_u.parts.lsw; \ -} while (0) - -/* Get the more significant 32 bit int from a double. */ - -#define GET_HIGH_WORD(i,d) \ -do { \ - ieee_double_shape_type gh_u; \ - gh_u.value = (d); \ - (i) = gh_u.parts.msw; \ -} while (0) - -/* Get the less significant 32 bit int from a double. */ - -#define GET_LOW_WORD(i,d) \ -do { \ - ieee_double_shape_type gl_u; \ - gl_u.value = (d); \ - (i) = gl_u.parts.lsw; \ -} while (0) - -/* Get all in one, efficient on 64-bit machines. */ -#define EXTRACT_WORDS64(i,d) \ -do { \ - ieee_double_shape_type gh_u; \ - gh_u.value = (d); \ - (i) = gh_u.word; \ -} while (0) - -/* Set a double from two 32 bit ints. */ - -#define INSERT_WORDS(d,ix0,ix1) \ -do { \ - ieee_double_shape_type iw_u; \ - iw_u.parts.msw = (ix0); \ - iw_u.parts.lsw = (ix1); \ - (d) = iw_u.value; \ -} while (0) - -/* Get all in one, efficient on 64-bit machines. */ -#define INSERT_WORDS64(d,i) \ -do { \ - ieee_double_shape_type iw_u; \ - iw_u.word = (i); \ - (d) = iw_u.value; \ -} while (0) - -/* Set the more significant 32 bits of a double from an int. */ - -#define SET_HIGH_WORD(d,v) \ -do { \ - ieee_double_shape_type sh_u; \ - sh_u.value = (d); \ - sh_u.parts.msw = (v); \ - (d) = sh_u.value; \ -} while (0) - -/* Set the less significant 32 bits of a double from an int. */ - -#define SET_LOW_WORD(d,v) \ -do { \ - ieee_double_shape_type sl_u; \ - sl_u.value = (d); \ - sl_u.parts.lsw = (v); \ - (d) = sl_u.value; \ -} while (0) - -/* A union which permits us to convert between a float and a 32 bit - int. */ - -typedef union -{ - float value; - u_int32_t word; -} ieee_float_shape_type; - -/* Get a 32 bit int from a float. */ - -#define GET_FLOAT_WORD(i,d) \ -do { \ - ieee_float_shape_type gf_u; \ - gf_u.value = (d); \ - (i) = gf_u.word; \ -} while (0) - -/* Set a float from a 32 bit int. */ - -#define SET_FLOAT_WORD(d,i) \ -do { \ - ieee_float_shape_type sf_u; \ - sf_u.word = (i); \ - (d) = sf_u.value; \ -} while (0) - -/* Get long double macros from a separate header. */ -#include - -/* ieee style elementary functions */ -extern double __ieee754_sqrt (double); -extern double __ieee754_acos (double); -extern double __ieee754_acosh (double); -extern double __ieee754_log (double); -extern double __ieee754_atanh (double); -extern double __ieee754_asin (double); -extern double __ieee754_atan2 (double,double); -extern double __ieee754_exp (double); -extern double __ieee754_exp2 (double); -extern double __ieee754_exp10 (double); -extern double __ieee754_cosh (double); -extern double __ieee754_fmod (double,double); -extern double __ieee754_pow (double,double); -extern double __ieee754_lgamma_r (double,int *); -extern double __ieee754_gamma_r (double,int *); -extern double __ieee754_lgamma (double); -extern double __ieee754_gamma (double); -extern double __ieee754_log10 (double); -extern double __ieee754_log2 (double); -extern double __ieee754_sinh (double); -extern double __ieee754_hypot (double,double); -extern double __ieee754_j0 (double); -extern double __ieee754_j1 (double); -extern double __ieee754_y0 (double); -extern double __ieee754_y1 (double); -extern double __ieee754_jn (int,double); -extern double __ieee754_yn (int,double); -extern double __ieee754_remainder (double,double); -extern int32_t __ieee754_rem_pio2 (double,double*); -extern double __ieee754_scalb (double,double); - -/* fdlibm kernel function */ -extern double __kernel_standard (double,double,int); -extern float __kernel_standard_f (float,float,int); -extern double __kernel_sin (double,double,int); -extern double __kernel_cos (double,double); -extern double __kernel_tan (double,double,int); -extern int __kernel_rem_pio2 (double*,double*,int,int,int, const int32_t*); - -/* internal functions. */ -extern double __copysign (double x, double __y); - -extern inline double __copysign (double x, double y) -{ return __builtin_copysign (x, y); } - -/* ieee style elementary float functions */ -extern float __ieee754_sqrtf (float); -extern float __ieee754_acosf (float); -extern float __ieee754_acoshf (float); -extern float __ieee754_logf (float); -extern float __ieee754_atanhf (float); -extern float __ieee754_asinf (float); -extern float __ieee754_atan2f (float,float); -extern float __ieee754_expf (float); -extern float __ieee754_exp2f (float); -extern float __ieee754_exp10f (float); -extern float __ieee754_coshf (float); -extern float __ieee754_fmodf (float,float); -extern float __ieee754_powf (float,float); -extern float __ieee754_lgammaf_r (float,int *); -extern float __ieee754_gammaf_r (float,int *); -extern float __ieee754_lgammaf (float); -extern float __ieee754_gammaf (float); -extern float __ieee754_log10f (float); -extern float __ieee754_log2f (float); -extern float __ieee754_sinhf (float); -extern float __ieee754_hypotf (float,float); -extern float __ieee754_j0f (float); -extern float __ieee754_j1f (float); -extern float __ieee754_y0f (float); -extern float __ieee754_y1f (float); -extern float __ieee754_jnf (int,float); -extern float __ieee754_ynf (int,float); -extern float __ieee754_remainderf (float,float); -extern int32_t __ieee754_rem_pio2f (float,float*); -extern float __ieee754_scalbf (float,float); - - -/* float versions of fdlibm kernel functions */ -extern float __kernel_sinf (float,float,int); -extern float __kernel_cosf (float,float); -extern float __kernel_tanf (float,float,int); -extern int __kernel_rem_pio2f (float*,float*,int,int,int, const int32_t*); - -/* internal functions. */ -extern float __copysignf (float x, float __y); - -extern inline float __copysignf (float x, float y) -{ return __builtin_copysignf (x, y); } - -/* ieee style elementary long double functions */ -extern long double __ieee754_sqrtl (long double); -extern long double __ieee754_acosl (long double); -extern long double __ieee754_acoshl (long double); -extern long double __ieee754_logl (long double); -extern long double __ieee754_atanhl (long double); -extern long double __ieee754_asinl (long double); -extern long double __ieee754_atan2l (long double,long double); -extern long double __ieee754_expl (long double); -extern long double __ieee754_exp2l (long double); -extern long double __ieee754_exp10l (long double); -extern long double __ieee754_coshl (long double); -extern long double __ieee754_fmodl (long double,long double); -extern long double __ieee754_powl (long double,long double); -extern long double __ieee754_lgammal_r (long double,int *); -extern long double __ieee754_gammal_r (long double,int *); -extern long double __ieee754_lgammal (long double); -extern long double __ieee754_gammal (long double); -extern long double __ieee754_log10l (long double); -extern long double __ieee754_log2l (long double); -extern long double __ieee754_sinhl (long double); -extern long double __ieee754_hypotl (long double,long double); -extern long double __ieee754_j0l (long double); -extern long double __ieee754_j1l (long double); -extern long double __ieee754_y0l (long double); -extern long double __ieee754_y1l (long double); -extern long double __ieee754_jnl (int,long double); -extern long double __ieee754_ynl (int,long double); -extern long double __ieee754_remainderl (long double,long double); -extern int __ieee754_rem_pio2l (long double,long double*); -extern long double __ieee754_scalbl (long double,long double); - -/* long double versions of fdlibm kernel functions */ -extern long double __kernel_sinl (long double,long double,int); -extern long double __kernel_cosl (long double,long double); -extern long double __kernel_tanl (long double,long double,int); -extern void __kernel_sincosl (long double,long double, - long double *,long double *, int); -extern int __kernel_rem_pio2l (long double*,long double*,int,int, - int,const int*); - -#ifndef NO_LONG_DOUBLE -/* prototypes required to compile the ldbl-96 support without warnings */ -extern int __finitel (long double); -extern int __ilogbl (long double); -extern int __isinfl (long double); -extern int __isnanl (long double); -extern long double __atanl (long double); -extern long double __copysignl (long double, long double); -extern long double __expm1l (long double); -extern long double __floorl (long double); -extern long double __frexpl (long double, int *); -extern long double __ldexpl (long double, int); -extern long double __log1pl (long double); -extern long double __nanl (const char *); -extern long double __rintl (long double); -extern long double __scalbnl (long double, int); -extern long double __sqrtl (long double x); -extern long double fabsl (long double x); -extern void __sincosl (long double, long double *, long double *); -extern long double __logbl (long double x); -extern long double __significandl (long double x); - -extern inline long double __copysignl (long double x, long double y) -{ return __builtin_copysignl (x, y); } - -#endif - -/* Prototypes for functions of the IBM Accurate Mathematical Library. */ -extern double __exp1 (double __x, double __xx, double __error); -extern double __sin (double __x); -extern double __cos (double __x); -extern int __branred (double __x, double *__a, double *__aa); -extern void __doasin (double __x, double __dx, double __v[]); -extern void __dubsin (double __x, double __dx, double __v[]); -extern void __dubcos (double __x, double __dx, double __v[]); -extern double __halfulp (double __x, double __y); -extern double __sin32 (double __x, double __res, double __res1); -extern double __cos32 (double __x, double __res, double __res1); -extern double __mpsin (double __x, double __dx); -extern double __mpcos (double __x, double __dx); -extern double __mpsin1 (double __x); -extern double __mpcos1 (double __x); -extern double __slowexp (double __x); -extern double __slowpow (double __x, double __y, double __z); -extern void __docos (double __x, double __dx, double __v[]); - -#ifndef math_opt_barrier -# define math_opt_barrier(x) \ -({ __typeof (x) __x = (x); __asm ("" : "+m" (__x)); __x; }) -# define math_force_eval(x) \ -({ __typeof (x) __x = (x); __asm __volatile__ ("" : : "m" (__x)); }) -#endif - - -/* The standards only specify one variant of the fenv.h interfaces. - But at least for some architectures we can be more efficient if we - know what operations are going to be performed. Therefore we - define additional interfaces. By default they refer to the normal - interfaces. */ -#define libc_feholdexcept(e) (void) feholdexcept (e) -#define libc_feholdexceptf(e) (void) feholdexcept (e) -#define libc_feholdexceptl(e) (void) feholdexcept (e) - -#define libc_feholdexcept_setround(e, r) \ - do { feholdexcept (e); fesetround (r); } while (0) -#define libc_feholdexcept_setroundf(e, r) \ - do { feholdexcept (e); fesetround (r); } while (0) -#define libc_feholdexcept_setroundl(e, r) \ - do { feholdexcept (e); fesetround (r); } while (0) - -#define libc_fetestexcept(e) fetestexcept (e) -#define libc_fetestexceptf(e) fetestexcept (e) -#define libc_fetestexceptl(e) fetestexcept (e) - -#define libc_fesetenv(e) (void) fesetenv (e) -#define libc_fesetenvf(e) (void) fesetenv (e) -#define libc_fesetenvl(e) (void) fesetenv (e) - -#define libc_feupdateenv(e) (void) feupdateenv (e) -#define libc_feupdateenvf(e) (void) feupdateenv (e) -#define libc_feupdateenvl(e) (void) feupdateenv (e) - -#define __nan(str) \ - (__builtin_constant_p (str) && str[0] == '\0' ? NAN : __nan (str)) -#define __nanf(str) \ - (__builtin_constant_p (str) && str[0] == '\0' ? NAN : __nan (str)) -#define __nanl(str) \ - (__builtin_constant_p (str) && str[0] == '\0' ? NAN : __nan (str)) - -#endif /* _MATH_PRIVATE_H_ */ diff --git a/sysdeps/generic/math_private.h b/sysdeps/generic/math_private.h new file mode 100644 index 0000000000..777762dd33 --- /dev/null +++ b/sysdeps/generic/math_private.h @@ -0,0 +1,392 @@ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunPro, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* + * from: @(#)fdlibm.h 5.1 93/09/24 + */ + +#ifndef _MATH_PRIVATE_H_ +#define _MATH_PRIVATE_H_ + +#include +#include +#include + +/* The original fdlibm code used statements like: + n0 = ((*(int*)&one)>>29)^1; * index of high word * + ix0 = *(n0+(int*)&x); * high word of x * + ix1 = *((1-n0)+(int*)&x); * low word of x * + to dig two 32 bit words out of the 64 bit IEEE floating point + value. That is non-ANSI, and, moreover, the gcc instruction + scheduler gets it wrong. We instead use the following macros. + Unlike the original code, we determine the endianness at compile + time, not at run time; I don't see much benefit to selecting + endianness at run time. */ + +/* A union which permits us to convert between a double and two 32 bit + ints. */ + +#if __FLOAT_WORD_ORDER == BIG_ENDIAN + +typedef union +{ + double value; + struct + { + u_int32_t msw; + u_int32_t lsw; + } parts; + uint64_t word; +} ieee_double_shape_type; + +#endif + +#if __FLOAT_WORD_ORDER == LITTLE_ENDIAN + +typedef union +{ + double value; + struct + { + u_int32_t lsw; + u_int32_t msw; + } parts; + uint64_t word; +} ieee_double_shape_type; + +#endif + +/* Get two 32 bit ints from a double. */ + +#define EXTRACT_WORDS(ix0,ix1,d) \ +do { \ + ieee_double_shape_type ew_u; \ + ew_u.value = (d); \ + (ix0) = ew_u.parts.msw; \ + (ix1) = ew_u.parts.lsw; \ +} while (0) + +/* Get the more significant 32 bit int from a double. */ + +#define GET_HIGH_WORD(i,d) \ +do { \ + ieee_double_shape_type gh_u; \ + gh_u.value = (d); \ + (i) = gh_u.parts.msw; \ +} while (0) + +/* Get the less significant 32 bit int from a double. */ + +#define GET_LOW_WORD(i,d) \ +do { \ + ieee_double_shape_type gl_u; \ + gl_u.value = (d); \ + (i) = gl_u.parts.lsw; \ +} while (0) + +/* Get all in one, efficient on 64-bit machines. */ +#define EXTRACT_WORDS64(i,d) \ +do { \ + ieee_double_shape_type gh_u; \ + gh_u.value = (d); \ + (i) = gh_u.word; \ +} while (0) + +/* Set a double from two 32 bit ints. */ + +#define INSERT_WORDS(d,ix0,ix1) \ +do { \ + ieee_double_shape_type iw_u; \ + iw_u.parts.msw = (ix0); \ + iw_u.parts.lsw = (ix1); \ + (d) = iw_u.value; \ +} while (0) + +/* Get all in one, efficient on 64-bit machines. */ +#define INSERT_WORDS64(d,i) \ +do { \ + ieee_double_shape_type iw_u; \ + iw_u.word = (i); \ + (d) = iw_u.value; \ +} while (0) + +/* Set the more significant 32 bits of a double from an int. */ + +#define SET_HIGH_WORD(d,v) \ +do { \ + ieee_double_shape_type sh_u; \ + sh_u.value = (d); \ + sh_u.parts.msw = (v); \ + (d) = sh_u.value; \ +} while (0) + +/* Set the less significant 32 bits of a double from an int. */ + +#define SET_LOW_WORD(d,v) \ +do { \ + ieee_double_shape_type sl_u; \ + sl_u.value = (d); \ + sl_u.parts.lsw = (v); \ + (d) = sl_u.value; \ +} while (0) + +/* A union which permits us to convert between a float and a 32 bit + int. */ + +typedef union +{ + float value; + u_int32_t word; +} ieee_float_shape_type; + +/* Get a 32 bit int from a float. */ + +#define GET_FLOAT_WORD(i,d) \ +do { \ + ieee_float_shape_type gf_u; \ + gf_u.value = (d); \ + (i) = gf_u.word; \ +} while (0) + +/* Set a float from a 32 bit int. */ + +#define SET_FLOAT_WORD(d,i) \ +do { \ + ieee_float_shape_type sf_u; \ + sf_u.word = (i); \ + (d) = sf_u.value; \ +} while (0) + +/* Get long double macros from a separate header. */ +#include + +/* ieee style elementary functions */ +extern double __ieee754_sqrt (double); +extern double __ieee754_acos (double); +extern double __ieee754_acosh (double); +extern double __ieee754_log (double); +extern double __ieee754_atanh (double); +extern double __ieee754_asin (double); +extern double __ieee754_atan2 (double,double); +extern double __ieee754_exp (double); +extern double __ieee754_exp2 (double); +extern double __ieee754_exp10 (double); +extern double __ieee754_cosh (double); +extern double __ieee754_fmod (double,double); +extern double __ieee754_pow (double,double); +extern double __ieee754_lgamma_r (double,int *); +extern double __ieee754_gamma_r (double,int *); +extern double __ieee754_lgamma (double); +extern double __ieee754_gamma (double); +extern double __ieee754_log10 (double); +extern double __ieee754_log2 (double); +extern double __ieee754_sinh (double); +extern double __ieee754_hypot (double,double); +extern double __ieee754_j0 (double); +extern double __ieee754_j1 (double); +extern double __ieee754_y0 (double); +extern double __ieee754_y1 (double); +extern double __ieee754_jn (int,double); +extern double __ieee754_yn (int,double); +extern double __ieee754_remainder (double,double); +extern int32_t __ieee754_rem_pio2 (double,double*); +extern double __ieee754_scalb (double,double); + +/* fdlibm kernel function */ +extern double __kernel_standard (double,double,int); +extern float __kernel_standard_f (float,float,int); +extern double __kernel_sin (double,double,int); +extern double __kernel_cos (double,double); +extern double __kernel_tan (double,double,int); +extern int __kernel_rem_pio2 (double*,double*,int,int,int, const int32_t*); + +/* internal functions. */ +extern double __copysign (double x, double __y); + +extern inline double __copysign (double x, double y) +{ return __builtin_copysign (x, y); } + +/* ieee style elementary float functions */ +extern float __ieee754_sqrtf (float); +extern float __ieee754_acosf (float); +extern float __ieee754_acoshf (float); +extern float __ieee754_logf (float); +extern float __ieee754_atanhf (float); +extern float __ieee754_asinf (float); +extern float __ieee754_atan2f (float,float); +extern float __ieee754_expf (float); +extern float __ieee754_exp2f (float); +extern float __ieee754_exp10f (float); +extern float __ieee754_coshf (float); +extern float __ieee754_fmodf (float,float); +extern float __ieee754_powf (float,float); +extern float __ieee754_lgammaf_r (float,int *); +extern float __ieee754_gammaf_r (float,int *); +extern float __ieee754_lgammaf (float); +extern float __ieee754_gammaf (float); +extern float __ieee754_log10f (float); +extern float __ieee754_log2f (float); +extern float __ieee754_sinhf (float); +extern float __ieee754_hypotf (float,float); +extern float __ieee754_j0f (float); +extern float __ieee754_j1f (float); +extern float __ieee754_y0f (float); +extern float __ieee754_y1f (float); +extern float __ieee754_jnf (int,float); +extern float __ieee754_ynf (int,float); +extern float __ieee754_remainderf (float,float); +extern int32_t __ieee754_rem_pio2f (float,float*); +extern float __ieee754_scalbf (float,float); + + +/* float versions of fdlibm kernel functions */ +extern float __kernel_sinf (float,float,int); +extern float __kernel_cosf (float,float); +extern float __kernel_tanf (float,float,int); +extern int __kernel_rem_pio2f (float*,float*,int,int,int, const int32_t*); + +/* internal functions. */ +extern float __copysignf (float x, float __y); + +extern inline float __copysignf (float x, float y) +{ return __builtin_copysignf (x, y); } + +/* ieee style elementary long double functions */ +extern long double __ieee754_sqrtl (long double); +extern long double __ieee754_acosl (long double); +extern long double __ieee754_acoshl (long double); +extern long double __ieee754_logl (long double); +extern long double __ieee754_atanhl (long double); +extern long double __ieee754_asinl (long double); +extern long double __ieee754_atan2l (long double,long double); +extern long double __ieee754_expl (long double); +extern long double __ieee754_exp2l (long double); +extern long double __ieee754_exp10l (long double); +extern long double __ieee754_coshl (long double); +extern long double __ieee754_fmodl (long double,long double); +extern long double __ieee754_powl (long double,long double); +extern long double __ieee754_lgammal_r (long double,int *); +extern long double __ieee754_gammal_r (long double,int *); +extern long double __ieee754_lgammal (long double); +extern long double __ieee754_gammal (long double); +extern long double __ieee754_log10l (long double); +extern long double __ieee754_log2l (long double); +extern long double __ieee754_sinhl (long double); +extern long double __ieee754_hypotl (long double,long double); +extern long double __ieee754_j0l (long double); +extern long double __ieee754_j1l (long double); +extern long double __ieee754_y0l (long double); +extern long double __ieee754_y1l (long double); +extern long double __ieee754_jnl (int,long double); +extern long double __ieee754_ynl (int,long double); +extern long double __ieee754_remainderl (long double,long double); +extern int __ieee754_rem_pio2l (long double,long double*); +extern long double __ieee754_scalbl (long double,long double); + +/* long double versions of fdlibm kernel functions */ +extern long double __kernel_sinl (long double,long double,int); +extern long double __kernel_cosl (long double,long double); +extern long double __kernel_tanl (long double,long double,int); +extern void __kernel_sincosl (long double,long double, + long double *,long double *, int); +extern int __kernel_rem_pio2l (long double*,long double*,int,int, + int,const int*); + +#ifndef NO_LONG_DOUBLE +/* prototypes required to compile the ldbl-96 support without warnings */ +extern int __finitel (long double); +extern int __ilogbl (long double); +extern int __isinfl (long double); +extern int __isnanl (long double); +extern long double __atanl (long double); +extern long double __copysignl (long double, long double); +extern long double __expm1l (long double); +extern long double __floorl (long double); +extern long double __frexpl (long double, int *); +extern long double __ldexpl (long double, int); +extern long double __log1pl (long double); +extern long double __nanl (const char *); +extern long double __rintl (long double); +extern long double __scalbnl (long double, int); +extern long double __sqrtl (long double x); +extern long double fabsl (long double x); +extern void __sincosl (long double, long double *, long double *); +extern long double __logbl (long double x); +extern long double __significandl (long double x); + +extern inline long double __copysignl (long double x, long double y) +{ return __builtin_copysignl (x, y); } + +#endif + +/* Prototypes for functions of the IBM Accurate Mathematical Library. */ +extern double __exp1 (double __x, double __xx, double __error); +extern double __sin (double __x); +extern double __cos (double __x); +extern int __branred (double __x, double *__a, double *__aa); +extern void __doasin (double __x, double __dx, double __v[]); +extern void __dubsin (double __x, double __dx, double __v[]); +extern void __dubcos (double __x, double __dx, double __v[]); +extern double __halfulp (double __x, double __y); +extern double __sin32 (double __x, double __res, double __res1); +extern double __cos32 (double __x, double __res, double __res1); +extern double __mpsin (double __x, double __dx); +extern double __mpcos (double __x, double __dx); +extern double __mpsin1 (double __x); +extern double __mpcos1 (double __x); +extern double __slowexp (double __x); +extern double __slowpow (double __x, double __y, double __z); +extern void __docos (double __x, double __dx, double __v[]); + +#ifndef math_opt_barrier +# define math_opt_barrier(x) \ +({ __typeof (x) __x = (x); __asm ("" : "+m" (__x)); __x; }) +# define math_force_eval(x) \ +({ __typeof (x) __x = (x); __asm __volatile__ ("" : : "m" (__x)); }) +#endif + + +/* The standards only specify one variant of the fenv.h interfaces. + But at least for some architectures we can be more efficient if we + know what operations are going to be performed. Therefore we + define additional interfaces. By default they refer to the normal + interfaces. */ +#define libc_feholdexcept(e) (void) feholdexcept (e) +#define libc_feholdexceptf(e) (void) feholdexcept (e) +#define libc_feholdexceptl(e) (void) feholdexcept (e) + +#define libc_feholdexcept_setround(e, r) \ + do { feholdexcept (e); fesetround (r); } while (0) +#define libc_feholdexcept_setroundf(e, r) \ + do { feholdexcept (e); fesetround (r); } while (0) +#define libc_feholdexcept_setroundl(e, r) \ + do { feholdexcept (e); fesetround (r); } while (0) + +#define libc_fetestexcept(e) fetestexcept (e) +#define libc_fetestexceptf(e) fetestexcept (e) +#define libc_fetestexceptl(e) fetestexcept (e) + +#define libc_fesetenv(e) (void) fesetenv (e) +#define libc_fesetenvf(e) (void) fesetenv (e) +#define libc_fesetenvl(e) (void) fesetenv (e) + +#define libc_feupdateenv(e) (void) feupdateenv (e) +#define libc_feupdateenvf(e) (void) feupdateenv (e) +#define libc_feupdateenvl(e) (void) feupdateenv (e) + +#define __nan(str) \ + (__builtin_constant_p (str) && str[0] == '\0' ? NAN : __nan (str)) +#define __nanf(str) \ + (__builtin_constant_p (str) && str[0] == '\0' ? NAN : __nan (str)) +#define __nanl(str) \ + (__builtin_constant_p (str) && str[0] == '\0' ? NAN : __nan (str)) + +#endif /* _MATH_PRIVATE_H_ */ -- cgit 1.4.1 From 33154d7bed29a4aa902fd952e7316efc19fa42cb Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Fri, 9 Mar 2012 16:34:18 -0800 Subject: Fix ChangeLog format. --- ChangeLog | 551 ++++++++++++++++++++++++++++++++++++++------------------------ 1 file changed, 336 insertions(+), 215 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7bf4d96e24..29ffb37871 100644 --- a/ChangeLog +++ b/ChangeLog @@ -4,225 +4,346 @@ * math/math_private.h: Move file ... * sysdeps/generic/math_private.h: ... here. -2012-03-09 Richard Henderson - * sysdeps/i386/fpu/math_private.h: Use include_next for math_private.h. * sysdeps/powerpc/fpu/math_private.h: Likewise. * sysdeps/x86_64/fpu/math_private.h: Likewise. -2012-03-09 Richard Henderson - - * sysdeps/i386/fpu/s_fpclassifyl.c, sysdeps/i386/fpu/s_isinfl.c, - sysdeps/i386/fpu/s_isnanl.c, sysdeps/i386/fpu/s_nextafterl.c, - sysdeps/i386/fpu/s_nexttoward.c, sysdeps/i386/fpu/s_nexttowardf.c, - sysdeps/ieee754/dbl-64/branred.c, sysdeps/ieee754/dbl-64/doasin.c, - sysdeps/ieee754/dbl-64/dosincos.c, sysdeps/ieee754/dbl-64/e_acosh.c, - sysdeps/ieee754/dbl-64/e_asin.c, sysdeps/ieee754/dbl-64/e_atan2.c, - sysdeps/ieee754/dbl-64/e_atanh.c, sysdeps/ieee754/dbl-64/e_cosh.c, - sysdeps/ieee754/dbl-64/e_exp.c, sysdeps/ieee754/dbl-64/e_fmod.c, - sysdeps/ieee754/dbl-64/e_hypot.c, sysdeps/ieee754/dbl-64/e_j0.c, - sysdeps/ieee754/dbl-64/e_j1.c, sysdeps/ieee754/dbl-64/e_jn.c, - sysdeps/ieee754/dbl-64/e_lgamma_r.c, sysdeps/ieee754/dbl-64/e_log.c, - sysdeps/ieee754/dbl-64/e_log10.c, sysdeps/ieee754/dbl-64/e_log2.c, - sysdeps/ieee754/dbl-64/e_pow.c, sysdeps/ieee754/dbl-64/e_rem_pio2.c, - sysdeps/ieee754/dbl-64/e_remainder.c, sysdeps/ieee754/dbl-64/e_sinh.c, - sysdeps/ieee754/dbl-64/e_sqrt.c, sysdeps/ieee754/dbl-64/halfulp.c, - sysdeps/ieee754/dbl-64/k_rem_pio2.c, sysdeps/ieee754/dbl-64/s_asinh.c, - sysdeps/ieee754/dbl-64/s_atan.c, sysdeps/ieee754/dbl-64/s_cbrt.c, - sysdeps/ieee754/dbl-64/s_ceil.c, sysdeps/ieee754/dbl-64/s_copysign.c, - sysdeps/ieee754/dbl-64/s_erf.c, sysdeps/ieee754/dbl-64/s_expm1.c, - sysdeps/ieee754/dbl-64/s_fabs.c, sysdeps/ieee754/dbl-64/s_finite.c, - sysdeps/ieee754/dbl-64/s_floor.c, sysdeps/ieee754/dbl-64/s_fpclassify.c, - sysdeps/ieee754/dbl-64/s_frexp.c, sysdeps/ieee754/dbl-64/s_ilogb.c, - sysdeps/ieee754/dbl-64/s_isinf.c, sysdeps/ieee754/dbl-64/s_isinf_ns.c, - sysdeps/ieee754/dbl-64/s_isnan.c, sysdeps/ieee754/dbl-64/s_llrint.c, - sysdeps/ieee754/dbl-64/s_llround.c, sysdeps/ieee754/dbl-64/s_log1p.c, - sysdeps/ieee754/dbl-64/s_logb.c, sysdeps/ieee754/dbl-64/s_lrint.c, - sysdeps/ieee754/dbl-64/s_lround.c, sysdeps/ieee754/dbl-64/s_modf.c, - sysdeps/ieee754/dbl-64/s_nearbyint.c, sysdeps/ieee754/dbl-64/s_remquo.c, - sysdeps/ieee754/dbl-64/s_rint.c, sysdeps/ieee754/dbl-64/s_round.c, - sysdeps/ieee754/dbl-64/s_scalbln.c, sysdeps/ieee754/dbl-64/s_scalbn.c, - sysdeps/ieee754/dbl-64/s_signbit.c, sysdeps/ieee754/dbl-64/s_sin.c, - sysdeps/ieee754/dbl-64/s_sincos.c, sysdeps/ieee754/dbl-64/s_tan.c, - sysdeps/ieee754/dbl-64/s_tanh.c, sysdeps/ieee754/dbl-64/s_trunc.c, - sysdeps/ieee754/dbl-64/sincos32.c, sysdeps/ieee754/dbl-64/slowexp.c, - sysdeps/ieee754/dbl-64/slowpow.c, - sysdeps/ieee754/dbl-64/wordsize-64/e_acosh.c, - sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c, - sysdeps/ieee754/dbl-64/wordsize-64/e_fmod.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_isinf.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_isinf_ns.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_logb.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_modf.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_remquo.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_round.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_scalbln.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c, - sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c, - sysdeps/ieee754/flt-32/e_acosf.c, sysdeps/ieee754/flt-32/e_acoshf.c, - sysdeps/ieee754/flt-32/e_asinf.c, sysdeps/ieee754/flt-32/e_atan2f.c, - sysdeps/ieee754/flt-32/e_atanhf.c, sysdeps/ieee754/flt-32/e_coshf.c, - sysdeps/ieee754/flt-32/e_fmodf.c, sysdeps/ieee754/flt-32/e_hypotf.c, - sysdeps/ieee754/flt-32/e_j0f.c, sysdeps/ieee754/flt-32/e_j1f.c, - sysdeps/ieee754/flt-32/e_jnf.c, sysdeps/ieee754/flt-32/e_lgammaf_r.c, - sysdeps/ieee754/flt-32/e_log10f.c, sysdeps/ieee754/flt-32/e_log2f.c, - sysdeps/ieee754/flt-32/e_logf.c, sysdeps/ieee754/flt-32/e_powf.c, - sysdeps/ieee754/flt-32/e_rem_pio2f.c, - sysdeps/ieee754/flt-32/e_remainderf.c, - sysdeps/ieee754/flt-32/e_sinhf.c, sysdeps/ieee754/flt-32/e_sqrtf.c, - sysdeps/ieee754/flt-32/k_cosf.c, sysdeps/ieee754/flt-32/k_rem_pio2f.c, - sysdeps/ieee754/flt-32/k_sinf.c, sysdeps/ieee754/flt-32/k_tanf.c, - sysdeps/ieee754/flt-32/s_asinhf.c, sysdeps/ieee754/flt-32/s_atanf.c, - sysdeps/ieee754/flt-32/s_cbrtf.c, sysdeps/ieee754/flt-32/s_ceilf.c, - sysdeps/ieee754/flt-32/s_copysignf.c, sysdeps/ieee754/flt-32/s_cosf.c, - sysdeps/ieee754/flt-32/s_erff.c, sysdeps/ieee754/flt-32/s_expm1f.c, - sysdeps/ieee754/flt-32/s_fabsf.c, sysdeps/ieee754/flt-32/s_finitef.c, - sysdeps/ieee754/flt-32/s_floorf.c, sysdeps/ieee754/flt-32/s_fpclassifyf.c, - sysdeps/ieee754/flt-32/s_frexpf.c, sysdeps/ieee754/flt-32/s_ilogbf.c, - sysdeps/ieee754/flt-32/s_isinf_nsf.c, sysdeps/ieee754/flt-32/s_isinff.c, - sysdeps/ieee754/flt-32/s_isnanf.c, sysdeps/ieee754/flt-32/s_llrintf.c, - sysdeps/ieee754/flt-32/s_llroundf.c, sysdeps/ieee754/flt-32/s_log1pf.c, - sysdeps/ieee754/flt-32/s_logbf.c, sysdeps/ieee754/flt-32/s_lrintf.c, - sysdeps/ieee754/flt-32/s_lroundf.c, sysdeps/ieee754/flt-32/s_modff.c, - sysdeps/ieee754/flt-32/s_nearbyintf.c, - sysdeps/ieee754/flt-32/s_nextafterf.c, - sysdeps/ieee754/flt-32/s_remquof.c, sysdeps/ieee754/flt-32/s_rintf.c, - sysdeps/ieee754/flt-32/s_roundf.c, sysdeps/ieee754/flt-32/s_scalblnf.c, - sysdeps/ieee754/flt-32/s_scalbnf.c, sysdeps/ieee754/flt-32/s_signbitf.c, - sysdeps/ieee754/flt-32/s_sincosf.c, sysdeps/ieee754/flt-32/s_sinf.c, - sysdeps/ieee754/flt-32/s_tanf.c, sysdeps/ieee754/flt-32/s_tanhf.c, - sysdeps/ieee754/flt-32/s_truncf.c, sysdeps/ieee754/k_standard.c, - sysdeps/ieee754/ldbl-128/e_acoshl.c, sysdeps/ieee754/ldbl-128/e_acosl.c, - sysdeps/ieee754/ldbl-128/e_asinl.c, sysdeps/ieee754/ldbl-128/e_atan2l.c, - sysdeps/ieee754/ldbl-128/e_atanhl.c, sysdeps/ieee754/ldbl-128/e_coshl.c, - sysdeps/ieee754/ldbl-128/e_fmodl.c, sysdeps/ieee754/ldbl-128/e_hypotl.c, - sysdeps/ieee754/ldbl-128/e_j0l.c, sysdeps/ieee754/ldbl-128/e_j1l.c, - sysdeps/ieee754/ldbl-128/e_jnl.c, sysdeps/ieee754/ldbl-128/e_lgammal_r.c, - sysdeps/ieee754/ldbl-128/e_log10l.c, sysdeps/ieee754/ldbl-128/e_log2l.c, - sysdeps/ieee754/ldbl-128/e_logl.c, sysdeps/ieee754/ldbl-128/e_powl.c, - sysdeps/ieee754/ldbl-128/e_rem_pio2l.c, - sysdeps/ieee754/ldbl-128/e_remainderl.c, - sysdeps/ieee754/ldbl-128/e_sinhl.c, sysdeps/ieee754/ldbl-128/k_cosl.c, - sysdeps/ieee754/ldbl-128/k_sincosl.c, sysdeps/ieee754/ldbl-128/k_sinl.c, - sysdeps/ieee754/ldbl-128/k_tanl.c, sysdeps/ieee754/ldbl-128/s_asinhl.c, - sysdeps/ieee754/ldbl-128/s_atanl.c, sysdeps/ieee754/ldbl-128/s_cbrtl.c, - sysdeps/ieee754/ldbl-128/s_ceill.c, sysdeps/ieee754/ldbl-128/s_copysignl.c, - sysdeps/ieee754/ldbl-128/s_cosl.c, sysdeps/ieee754/ldbl-128/s_erfl.c, - sysdeps/ieee754/ldbl-128/s_expm1l.c, sysdeps/ieee754/ldbl-128/s_fabsl.c, - sysdeps/ieee754/ldbl-128/s_finitel.c, sysdeps/ieee754/ldbl-128/s_floorl.c, - sysdeps/ieee754/ldbl-128/s_fpclassifyl.c, - sysdeps/ieee754/ldbl-128/s_frexpl.c, sysdeps/ieee754/ldbl-128/s_ilogbl.c, - sysdeps/ieee754/ldbl-128/s_isinf_nsl.c, - sysdeps/ieee754/ldbl-128/s_isinfl.c, sysdeps/ieee754/ldbl-128/s_isnanl.c, - sysdeps/ieee754/ldbl-128/s_llrintl.c, sysdeps/ieee754/ldbl-128/s_llroundl.c, - sysdeps/ieee754/ldbl-128/s_log1pl.c, sysdeps/ieee754/ldbl-128/s_logbl.c, - sysdeps/ieee754/ldbl-128/s_lrintl.c, sysdeps/ieee754/ldbl-128/s_lroundl.c, - sysdeps/ieee754/ldbl-128/s_modfl.c, sysdeps/ieee754/ldbl-128/s_nearbyintl.c, - sysdeps/ieee754/ldbl-128/s_nextafterl.c, - sysdeps/ieee754/ldbl-128/s_nexttoward.c, - sysdeps/ieee754/ldbl-128/s_nexttowardf.c, - sysdeps/ieee754/ldbl-128/s_remquol.c, sysdeps/ieee754/ldbl-128/s_rintl.c, - sysdeps/ieee754/ldbl-128/s_roundl.c, sysdeps/ieee754/ldbl-128/s_scalblnl.c, - sysdeps/ieee754/ldbl-128/s_scalbnl.c, sysdeps/ieee754/ldbl-128/s_signbitl.c, - sysdeps/ieee754/ldbl-128/s_sincosl.c, sysdeps/ieee754/ldbl-128/s_sinl.c, - sysdeps/ieee754/ldbl-128/s_tanhl.c, sysdeps/ieee754/ldbl-128/s_tanl.c, - sysdeps/ieee754/ldbl-128/s_truncl.c, sysdeps/ieee754/ldbl-128/w_expl.c, - sysdeps/ieee754/ldbl-128ibm/e_acoshl.c, - sysdeps/ieee754/ldbl-128ibm/e_acosl.c, - sysdeps/ieee754/ldbl-128ibm/e_asinl.c, - sysdeps/ieee754/ldbl-128ibm/e_atan2l.c, - sysdeps/ieee754/ldbl-128ibm/e_atanhl.c, - sysdeps/ieee754/ldbl-128ibm/e_coshl.c, - sysdeps/ieee754/ldbl-128ibm/e_fmodl.c, - sysdeps/ieee754/ldbl-128ibm/e_hypotl.c, - sysdeps/ieee754/ldbl-128ibm/e_jnl.c, - sysdeps/ieee754/ldbl-128ibm/e_log10l.c, - sysdeps/ieee754/ldbl-128ibm/e_log2l.c, - sysdeps/ieee754/ldbl-128ibm/e_logl.c, sysdeps/ieee754/ldbl-128ibm/e_powl.c, - sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c, - sysdeps/ieee754/ldbl-128ibm/e_remainderl.c, - sysdeps/ieee754/ldbl-128ibm/e_sinhl.c, sysdeps/ieee754/ldbl-128ibm/k_cosl.c, - sysdeps/ieee754/ldbl-128ibm/k_sincosl.c, - sysdeps/ieee754/ldbl-128ibm/k_sinl.c, sysdeps/ieee754/ldbl-128ibm/k_tanl.c, - sysdeps/ieee754/ldbl-128ibm/s_asinhl.c, - sysdeps/ieee754/ldbl-128ibm/s_atanl.c, - sysdeps/ieee754/ldbl-128ibm/s_copysignl.c, - sysdeps/ieee754/ldbl-128ibm/s_cosl.c, - sysdeps/ieee754/ldbl-128ibm/s_ctanhl.c, - sysdeps/ieee754/ldbl-128ibm/s_ctanl.c, - sysdeps/ieee754/ldbl-128ibm/s_erfl.c, - sysdeps/ieee754/ldbl-128ibm/s_expm1l.c, - sysdeps/ieee754/ldbl-128ibm/s_fabsl.c, - sysdeps/ieee754/ldbl-128ibm/s_finitel.c, - sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c, - sysdeps/ieee754/ldbl-128ibm/s_frexpl.c, - sysdeps/ieee754/ldbl-128ibm/s_ilogbl.c, - sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c, - sysdeps/ieee754/ldbl-128ibm/s_isinfl.c, - sysdeps/ieee754/ldbl-128ibm/s_isnanl.c, - sysdeps/ieee754/ldbl-128ibm/s_log1pl.c, - sysdeps/ieee754/ldbl-128ibm/s_logbl.c, - sysdeps/ieee754/ldbl-128ibm/s_modfl.c, - sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c, - sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c, - sysdeps/ieee754/ldbl-128ibm/s_remquol.c, - sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c, - sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c, - sysdeps/ieee754/ldbl-128ibm/s_signbitl.c, - sysdeps/ieee754/ldbl-128ibm/s_sincosl.c, - sysdeps/ieee754/ldbl-128ibm/s_sinl.c, - sysdeps/ieee754/ldbl-128ibm/s_tanhl.c, - sysdeps/ieee754/ldbl-128ibm/s_tanl.c, - sysdeps/ieee754/ldbl-96/e_acoshl.c, sysdeps/ieee754/ldbl-96/e_asinl.c, - sysdeps/ieee754/ldbl-96/e_atan2l.c, sysdeps/ieee754/ldbl-96/e_atanhl.c, - sysdeps/ieee754/ldbl-96/e_coshl.c, sysdeps/ieee754/ldbl-96/e_hypotl.c, - sysdeps/ieee754/ldbl-96/e_j0l.c, sysdeps/ieee754/ldbl-96/e_j1l.c, - sysdeps/ieee754/ldbl-96/e_jnl.c, sysdeps/ieee754/ldbl-96/e_lgammal_r.c, - sysdeps/ieee754/ldbl-96/e_remainderl.c, sysdeps/ieee754/ldbl-96/e_sinhl.c, - sysdeps/ieee754/ldbl-96/s_asinhl.c, sysdeps/ieee754/ldbl-96/s_cbrtl.c, - sysdeps/ieee754/ldbl-96/s_ceill.c, sysdeps/ieee754/ldbl-96/s_copysignl.c, - sysdeps/ieee754/ldbl-96/s_cosl.c, sysdeps/ieee754/ldbl-96/s_erfl.c, - sysdeps/ieee754/ldbl-96/s_fabsl.c, sysdeps/ieee754/ldbl-96/s_finitel.c, - sysdeps/ieee754/ldbl-96/s_floorl.c, sysdeps/ieee754/ldbl-96/s_fpclassifyl.c, - sysdeps/ieee754/ldbl-96/s_frexpl.c, sysdeps/ieee754/ldbl-96/s_ilogbl.c, - sysdeps/ieee754/ldbl-96/s_isinf_nsl.c, sysdeps/ieee754/ldbl-96/s_isinfl.c, - sysdeps/ieee754/ldbl-96/s_isnanl.c, sysdeps/ieee754/ldbl-96/s_llrintl.c, - sysdeps/ieee754/ldbl-96/s_llroundl.c, sysdeps/ieee754/ldbl-96/s_logbl.c, - sysdeps/ieee754/ldbl-96/s_lrintl.c, sysdeps/ieee754/ldbl-96/s_lroundl.c, - sysdeps/ieee754/ldbl-96/s_modfl.c, sysdeps/ieee754/ldbl-96/s_nearbyintl.c, - sysdeps/ieee754/ldbl-96/s_nextafterl.c, - sysdeps/ieee754/ldbl-96/s_nexttoward.c, - sysdeps/ieee754/ldbl-96/s_nexttowardf.c, - sysdeps/ieee754/ldbl-96/s_remquol.c, sysdeps/ieee754/ldbl-96/s_rintl.c, - sysdeps/ieee754/ldbl-96/s_roundl.c, sysdeps/ieee754/ldbl-96/s_scalblnl.c, - sysdeps/ieee754/ldbl-96/s_scalbnl.c, sysdeps/ieee754/ldbl-96/s_signbitl.c, - sysdeps/ieee754/ldbl-96/s_sincosl.c, sysdeps/ieee754/ldbl-96/s_sinl.c, - sysdeps/ieee754/ldbl-96/s_tanhl.c, sysdeps/ieee754/ldbl-96/s_tanl.c, - sysdeps/ieee754/ldbl-96/s_truncl.c, sysdeps/ieee754/s_lib_version.c, - sysdeps/ieee754/s_matherr.c, sysdeps/ieee754/s_signgam.c, - sysdeps/powerpc/fpu/e_hypot.c, sysdeps/powerpc/fpu/e_hypotf.c, - sysdeps/powerpc/fpu/e_rem_pio2f.c, sysdeps/powerpc/fpu/k_cosf.c, - sysdeps/powerpc/fpu/k_rem_pio2f.c, sysdeps/powerpc/fpu/k_sinf.c, - sysdeps/powerpc/fpu/s_cosf.c, sysdeps/powerpc/fpu/s_float_bitwise.h, - sysdeps/powerpc/fpu/s_isnan.c, sysdeps/powerpc/fpu/s_rint.c, - sysdeps/powerpc/fpu/s_rintf.c, sysdeps/powerpc/fpu/s_sinf.c, - sysdeps/powerpc/fpu/w_sqrt.c, sysdeps/powerpc/fpu/w_sqrtf.c, - sysdeps/powerpc/powerpc32/fpu/s_llrintf.c, - sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c, - sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c, - sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c, - sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c, - sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c, - sysdeps/powerpc/powerpc64/power4/fpu/w_sqrtf.c: Use <> to include both - and . + * sysdeps/i386/fpu/s_fpclassifyl.c Use <> to include both + and . + * sysdeps/i386/fpu/s_isinfl.c: Likewise. + * sysdeps/i386/fpu/s_isnanl.c: Likewise. + * sysdeps/i386/fpu/s_nextafterl.c: Likewise. + * sysdeps/i386/fpu/s_nexttoward.c: Likewise. + * sysdeps/i386/fpu/s_nexttowardf.c: Likewise. + * sysdeps/ieee754/dbl-64/branred.c: Likewise. + * sysdeps/ieee754/dbl-64/doasin.c: Likewise. + * sysdeps/ieee754/dbl-64/dosincos.c: Likewise. + * sysdeps/ieee754/dbl-64/e_acosh.c: Likewise. + * sysdeps/ieee754/dbl-64/e_asin.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atanh.c: Likewise. + * sysdeps/ieee754/dbl-64/e_cosh.c: Likewise. + * sysdeps/ieee754/dbl-64/e_exp.c: Likewise. + * sysdeps/ieee754/dbl-64/e_fmod.c: Likewise. + * sysdeps/ieee754/dbl-64/e_hypot.c: Likewise. + * sysdeps/ieee754/dbl-64/e_j0.c: Likewise. + * sysdeps/ieee754/dbl-64/e_j1.c: Likewise. + * sysdeps/ieee754/dbl-64/e_jn.c: Likewise. + * sysdeps/ieee754/dbl-64/e_lgamma_r.c: Likewise. + * sysdeps/ieee754/dbl-64/e_log.c: Likewise. + * sysdeps/ieee754/dbl-64/e_log10.c: Likewise. + * sysdeps/ieee754/dbl-64/e_log2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_pow.c: Likewise. + * sysdeps/ieee754/dbl-64/e_rem_pio2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_remainder.c: Likewise. + * sysdeps/ieee754/dbl-64/e_sinh.c: Likewise. + * sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise. + * sysdeps/ieee754/dbl-64/halfulp.c: Likewise. + * sysdeps/ieee754/dbl-64/k_rem_pio2.c: Likewise. + * sysdeps/ieee754/dbl-64/s_asinh.c: Likewise. + * sysdeps/ieee754/dbl-64/s_atan.c: Likewise. + * sysdeps/ieee754/dbl-64/s_cbrt.c: Likewise. + * sysdeps/ieee754/dbl-64/s_ceil.c: Likewise. + * sysdeps/ieee754/dbl-64/s_copysign.c: Likewise. + * sysdeps/ieee754/dbl-64/s_erf.c: Likewise. + * sysdeps/ieee754/dbl-64/s_expm1.c: Likewise. + * sysdeps/ieee754/dbl-64/s_fabs.c: Likewise. + * sysdeps/ieee754/dbl-64/s_finite.c: Likewise. + * sysdeps/ieee754/dbl-64/s_floor.c: Likewise. + * sysdeps/ieee754/dbl-64/s_fpclassify.c: Likewise. + * sysdeps/ieee754/dbl-64/s_frexp.c: Likewise. + * sysdeps/ieee754/dbl-64/s_ilogb.c: Likewise. + * sysdeps/ieee754/dbl-64/s_isinf.c: Likewise. + * sysdeps/ieee754/dbl-64/s_isinf_ns.c: Likewise. + * sysdeps/ieee754/dbl-64/s_isnan.c: Likewise. + * sysdeps/ieee754/dbl-64/s_llrint.c: Likewise. + * sysdeps/ieee754/dbl-64/s_llround.c: Likewise. + * sysdeps/ieee754/dbl-64/s_log1p.c: Likewise. + * sysdeps/ieee754/dbl-64/s_logb.c: Likewise. + * sysdeps/ieee754/dbl-64/s_lrint.c: Likewise. + * sysdeps/ieee754/dbl-64/s_lround.c: Likewise. + * sysdeps/ieee754/dbl-64/s_modf.c: Likewise. + * sysdeps/ieee754/dbl-64/s_nearbyint.c: Likewise. + * sysdeps/ieee754/dbl-64/s_remquo.c: Likewise. + * sysdeps/ieee754/dbl-64/s_rint.c: Likewise. + * sysdeps/ieee754/dbl-64/s_round.c: Likewise. + * sysdeps/ieee754/dbl-64/s_scalbln.c: Likewise. + * sysdeps/ieee754/dbl-64/s_scalbn.c: Likewise. + * sysdeps/ieee754/dbl-64/s_signbit.c: Likewise. + * sysdeps/ieee754/dbl-64/s_sin.c: Likewise. + * sysdeps/ieee754/dbl-64/s_sincos.c: Likewise. + * sysdeps/ieee754/dbl-64/s_tan.c: Likewise. + * sysdeps/ieee754/dbl-64/s_tanh.c: Likewise. + * sysdeps/ieee754/dbl-64/s_trunc.c: Likewise. + * sysdeps/ieee754/dbl-64/sincos32.c: Likewise. + * sysdeps/ieee754/dbl-64/slowexp.c: Likewise. + * sysdeps/ieee754/dbl-64/slowpow.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/e_acosh.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/e_fmod.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_isinf.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_isinf_ns.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_logb.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_modf.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_remquo.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_round.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_scalbln.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c: Likewise. + * sysdeps/ieee754/flt-32/e_acosf.c: Likewise. + * sysdeps/ieee754/flt-32/e_acoshf.c: Likewise. + * sysdeps/ieee754/flt-32/e_asinf.c: Likewise. + * sysdeps/ieee754/flt-32/e_atan2f.c: Likewise. + * sysdeps/ieee754/flt-32/e_atanhf.c: Likewise. + * sysdeps/ieee754/flt-32/e_coshf.c: Likewise. + * sysdeps/ieee754/flt-32/e_fmodf.c: Likewise. + * sysdeps/ieee754/flt-32/e_hypotf.c: Likewise. + * sysdeps/ieee754/flt-32/e_j0f.c: Likewise. + * sysdeps/ieee754/flt-32/e_j1f.c: Likewise. + * sysdeps/ieee754/flt-32/e_jnf.c: Likewise. + * sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise. + * sysdeps/ieee754/flt-32/e_log10f.c: Likewise. + * sysdeps/ieee754/flt-32/e_log2f.c: Likewise. + * sysdeps/ieee754/flt-32/e_logf.c: Likewise. + * sysdeps/ieee754/flt-32/e_powf.c: Likewise. + * sysdeps/ieee754/flt-32/e_rem_pio2f.c: Likewise. + * sysdeps/ieee754/flt-32/e_remainderf.c: Likewise. + * sysdeps/ieee754/flt-32/e_sinhf.c: Likewise. + * sysdeps/ieee754/flt-32/e_sqrtf.c: Likewise. + * sysdeps/ieee754/flt-32/k_cosf.c: Likewise. + * sysdeps/ieee754/flt-32/k_rem_pio2f.c: Likewise. + * sysdeps/ieee754/flt-32/k_sinf.c: Likewise. + * sysdeps/ieee754/flt-32/k_tanf.c: Likewise. + * sysdeps/ieee754/flt-32/s_asinhf.c: Likewise. + * sysdeps/ieee754/flt-32/s_atanf.c: Likewise. + * sysdeps/ieee754/flt-32/s_cbrtf.c: Likewise. + * sysdeps/ieee754/flt-32/s_ceilf.c: Likewise. + * sysdeps/ieee754/flt-32/s_copysignf.c: Likewise. + * sysdeps/ieee754/flt-32/s_cosf.c: Likewise. + * sysdeps/ieee754/flt-32/s_erff.c: Likewise. + * sysdeps/ieee754/flt-32/s_expm1f.c: Likewise. + * sysdeps/ieee754/flt-32/s_fabsf.c: Likewise. + * sysdeps/ieee754/flt-32/s_finitef.c: Likewise. + * sysdeps/ieee754/flt-32/s_floorf.c: Likewise. + * sysdeps/ieee754/flt-32/s_fpclassifyf.c: Likewise. + * sysdeps/ieee754/flt-32/s_frexpf.c: Likewise. + * sysdeps/ieee754/flt-32/s_ilogbf.c: Likewise. + * sysdeps/ieee754/flt-32/s_isinf_nsf.c: Likewise. + * sysdeps/ieee754/flt-32/s_isinff.c: Likewise. + * sysdeps/ieee754/flt-32/s_isnanf.c: Likewise. + * sysdeps/ieee754/flt-32/s_llrintf.c: Likewise. + * sysdeps/ieee754/flt-32/s_llroundf.c: Likewise. + * sysdeps/ieee754/flt-32/s_log1pf.c: Likewise. + * sysdeps/ieee754/flt-32/s_logbf.c: Likewise. + * sysdeps/ieee754/flt-32/s_lrintf.c: Likewise. + * sysdeps/ieee754/flt-32/s_lroundf.c: Likewise. + * sysdeps/ieee754/flt-32/s_modff.c: Likewise. + * sysdeps/ieee754/flt-32/s_nearbyintf.c: Likewise. + * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise. + * sysdeps/ieee754/flt-32/s_remquof.c: Likewise. + * sysdeps/ieee754/flt-32/s_rintf.c: Likewise. + * sysdeps/ieee754/flt-32/s_roundf.c: Likewise. + * sysdeps/ieee754/flt-32/s_scalblnf.c: Likewise. + * sysdeps/ieee754/flt-32/s_scalbnf.c: Likewise. + * sysdeps/ieee754/flt-32/s_signbitf.c: Likewise. + * sysdeps/ieee754/flt-32/s_sincosf.c: Likewise. + * sysdeps/ieee754/flt-32/s_sinf.c: Likewise. + * sysdeps/ieee754/flt-32/s_tanf.c: Likewise. + * sysdeps/ieee754/flt-32/s_tanhf.c: Likewise. + * sysdeps/ieee754/flt-32/s_truncf.c: Likewise. + * sysdeps/ieee754/k_standard.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_acoshl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_acosl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_asinl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_atan2l.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_atanhl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_coshl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_fmodl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_hypotl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_j0l.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_lgammal_r.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_log10l.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_log2l.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_logl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_powl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_rem_pio2l.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_remainderl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_sinhl.c: Likewise. + * sysdeps/ieee754/ldbl-128/k_cosl.c: Likewise. + * sysdeps/ieee754/ldbl-128/k_sincosl.c: Likewise. + * sysdeps/ieee754/ldbl-128/k_sinl.c: Likewise. + * sysdeps/ieee754/ldbl-128/k_tanl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_asinhl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_atanl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_cbrtl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_ceill.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_copysignl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_cosl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_erfl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_expm1l.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_fabsl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_finitel.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_floorl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_fpclassifyl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_frexpl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_ilogbl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_isinf_nsl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_isinfl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_isnanl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_llrintl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_llroundl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_log1pl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_logbl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_lrintl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_lroundl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_modfl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_nearbyintl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_nextafterl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_nexttowardf.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_remquol.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_rintl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_roundl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_scalblnl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_scalbnl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_signbitl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_sincosl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_sinl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_tanhl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_tanl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_truncl.c: Likewise. + * sysdeps/ieee754/ldbl-128/w_expl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_acoshl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_acosl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_asinl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_atan2l.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_atanhl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_coshl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_fmodl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_hypotl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_log10l.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_log2l.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_logl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_powl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_remainderl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_sinhl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/k_cosl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/k_sincosl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/k_sinl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/k_tanl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_asinhl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_atanl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_cosl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_ctanhl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_ctanl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_erfl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_expm1l.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_fabsl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_finitel.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_frexpl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_ilogbl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_isinfl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_isnanl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_log1pl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_logbl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_modfl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_remquol.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_signbitl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_sincosl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_sinl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_tanhl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_tanl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_acoshl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_asinl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_atan2l.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_atanhl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_coshl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_hypotl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_j0l.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_j1l.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_remainderl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_sinhl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_asinhl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_cbrtl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_ceill.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_copysignl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_cosl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_erfl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_fabsl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_finitel.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_floorl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_fpclassifyl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_frexpl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_ilogbl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_isinf_nsl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_isinfl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_isnanl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_llrintl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_llroundl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_logbl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_lrintl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_lroundl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_modfl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_nearbyintl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_nextafterl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_nexttowardf.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_remquol.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_rintl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_roundl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_scalblnl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_scalbnl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_signbitl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_sincosl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_sinl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_tanhl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_tanl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_truncl.c: Likewise. + * sysdeps/ieee754/s_lib_version.c: Likewise. + * sysdeps/ieee754/s_matherr.c: Likewise. + * sysdeps/ieee754/s_signgam.c: Likewise. + * sysdeps/powerpc/fpu/e_hypot.c: Likewise. + * sysdeps/powerpc/fpu/e_hypotf.c: Likewise. + * sysdeps/powerpc/fpu/e_rem_pio2f.c: Likewise. + * sysdeps/powerpc/fpu/k_cosf.c: Likewise. + * sysdeps/powerpc/fpu/k_rem_pio2f.c: Likewise. + * sysdeps/powerpc/fpu/k_sinf.c: Likewise. + * sysdeps/powerpc/fpu/s_cosf.c: Likewise. + * sysdeps/powerpc/fpu/s_float_bitwise.h: Likewise. + * sysdeps/powerpc/fpu/s_isnan.c: Likewise. + * sysdeps/powerpc/fpu/s_rint.c: Likewise. + * sysdeps/powerpc/fpu/s_rintf.c: Likewise. + * sysdeps/powerpc/fpu/s_sinf.c: Likewise. + * sysdeps/powerpc/fpu/w_sqrt.c: Likewise. + * sysdeps/powerpc/fpu/w_sqrtf.c: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_llrintf.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c: Likewise. + * sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c: Likewise. + * sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c: Likewise. + * sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c: Likewise. + * sysdeps/powerpc/powerpc64/power4/fpu/w_sqrtf.c: Likewise. 2012-03-09 Joseph Myers -- cgit 1.4.1 From 4e234f5d1b9247724453c4899239fb514c24779d Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Fri, 9 Mar 2012 16:45:04 -0800 Subject: Fix it harder. --- ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 29ffb37871..35b5fa3309 100644 --- a/ChangeLog +++ b/ChangeLog @@ -8,7 +8,7 @@ * sysdeps/powerpc/fpu/math_private.h: Likewise. * sysdeps/x86_64/fpu/math_private.h: Likewise. - * sysdeps/i386/fpu/s_fpclassifyl.c Use <> to include both + * sysdeps/i386/fpu/s_fpclassifyl.c: Use <> to include both and . * sysdeps/i386/fpu/s_isinfl.c: Likewise. * sysdeps/i386/fpu/s_isnanl.c: Likewise. -- cgit 1.4.1 From 547b5e30dc0828f20351be14d8db160870be72ee Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Fri, 9 Mar 2012 23:35:39 +0000 Subject: Replace FSF snail mail address with URL in Yacc input. --- ChangeLog | 6 + intl/plural.c | 539 +++++++++++++++++++++++++++++++--------------------------- intl/plural.y | 5 +- 3 files changed, 301 insertions(+), 249 deletions(-) diff --git a/ChangeLog b/ChangeLog index 35b5fa3309..8ce6438a93 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2012-03-09 Paul Eggert + + [BZ #13673] + * intl/plural.y: Replace FSF snail mail address with URL. + * intl/plural.c: Regenerated. + 2012-03-09 Richard Henderson * include/math_private.h: Remove file. diff --git a/intl/plural.c b/intl/plural.c index dc89c343d1..0d8bf4c6d5 100644 --- a/intl/plural.c +++ b/intl/plural.c @@ -1,9 +1,8 @@ -/* A Bison parser, made by GNU Bison 2.4.3. */ +/* A Bison parser, made by GNU Bison 2.5. */ -/* Skeleton implementation for Bison's Yacc-like parsers in C +/* Bison implementation for Yacc-like parsers in C - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006, - 2009, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -45,7 +44,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.4.3" +#define YYBISON_VERSION "2.5" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -74,7 +73,7 @@ /* Copy the first part of user declarations. */ -/* Line 189 of yacc.c */ +/* Line 268 of yacc.c */ #line 1 "plural.y" /* Expression parsing for plural form selection. @@ -93,9 +92,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ /* The bison generated parser uses alloca. AIX 3 forces us to put this declaration at the beginning of the file. The declaration in bison's @@ -123,8 +121,8 @@ #define YYPARSE_PARAM arg -/* Line 189 of yacc.c */ -#line 128 "plural.c" +/* Line 268 of yacc.c */ +#line 126 "plural.c" /* Enabling traces. */ #ifndef YYDEBUG @@ -158,6 +156,13 @@ NUMBER = 262 }; #endif +/* Tokens. */ +#define EQUOP2 258 +#define CMPOP2 259 +#define ADDOP2 260 +#define MULOP2 261 +#define NUMBER 262 + @@ -165,8 +170,8 @@ typedef union YYSTYPE { -/* Line 214 of yacc.c */ -#line 50 "plural.y" +/* Line 293 of yacc.c */ +#line 49 "plural.y" unsigned long int num; enum operator op; @@ -174,8 +179,8 @@ typedef union YYSTYPE -/* Line 214 of yacc.c */ -#line 179 "plural.c" +/* Line 293 of yacc.c */ +#line 184 "plural.c" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -185,8 +190,8 @@ typedef union YYSTYPE /* Copy the second part of user declarations. */ -/* Line 264 of yacc.c */ -#line 56 "plural.y" +/* Line 343 of yacc.c */ +#line 55 "plural.y" /* Prototypes for local functions. */ static struct expression *new_exp PARAMS ((int nargs, enum operator op, @@ -286,8 +291,8 @@ new_exp_3 (op, bexp, tbranch, fbranch) -/* Line 264 of yacc.c */ -#line 291 "plural.c" +/* Line 343 of yacc.c */ +#line 296 "plural.c" #ifdef short # undef short @@ -390,11 +395,11 @@ YYID (yyi) # define alloca _alloca # else # define YYSTACK_ALLOC alloca -# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) # include /* INFRINGES ON USER NAME SPACE */ -# ifndef _STDLIB_H -# define _STDLIB_H 1 +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 # endif # endif # endif @@ -417,24 +422,24 @@ YYID (yyi) # ifndef YYSTACK_ALLOC_MAXIMUM # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM # endif -# if (defined __cplusplus && ! defined _STDLIB_H \ +# if (defined __cplusplus && ! defined EXIT_SUCCESS \ && ! ((defined YYMALLOC || defined malloc) \ && (defined YYFREE || defined free))) # include /* INFRINGES ON USER NAME SPACE */ -# ifndef _STDLIB_H -# define _STDLIB_H 1 +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 # endif # endif # ifndef YYMALLOC # define YYMALLOC malloc -# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ # endif # endif # ifndef YYFREE # define YYFREE free -# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) void free (void *); /* INFRINGES ON USER NAME SPACE */ # endif @@ -463,23 +468,7 @@ union yyalloc ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ + YYSTACK_GAP_MAXIMUM) -/* Copy COUNT objects from FROM to TO. The source and destination do - not overlap. */ -# ifndef YYCOPY -# if defined __GNUC__ && 1 < __GNUC__ -# define YYCOPY(To, From, Count) \ - __builtin_memcpy (To, From, (Count) * sizeof (*(From))) -# else -# define YYCOPY(To, From, Count) \ - do \ - { \ - YYSIZE_T yyi; \ - for (yyi = 0; yyi < (Count); yyi++) \ - (To)[yyi] = (From)[yyi]; \ - } \ - while (YYID (0)) -# endif -# endif +# define YYCOPY_NEEDED 1 /* Relocate STACK from its old location to the new one. The local variables YYSIZE and YYSTACKSIZE give the old and new number of @@ -499,6 +488,26 @@ union yyalloc #endif +#if defined YYCOPY_NEEDED && YYCOPY_NEEDED +/* Copy COUNT objects from FROM to TO. The source and destination do + not overlap. */ +# ifndef YYCOPY +# if defined __GNUC__ && 1 < __GNUC__ +# define YYCOPY(To, From, Count) \ + __builtin_memcpy (To, From, (Count) * sizeof (*(From))) +# else +# define YYCOPY(To, From, Count) \ + do \ + { \ + YYSIZE_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (To)[yyi] = (From)[yyi]; \ + } \ + while (YYID (0)) +# endif +# endif +#endif /* !YYCOPY_NEEDED */ + /* YYFINAL -- State number of the termination state. */ #define YYFINAL 9 /* YYLAST -- Last index in YYTABLE. */ @@ -574,8 +583,8 @@ static const yytype_int8 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint8 yyrline[] = { - 0, 175, 175, 183, 187, 191, 195, 199, 203, 207, - 211, 215, 219, 224 + 0, 174, 174, 182, 186, 190, 194, 198, 202, 206, + 210, 214, 218, 223 }; #endif @@ -614,8 +623,8 @@ static const yytype_uint8 yyr2[] = 2, 1, 1, 3 }; -/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state - STATE-NUM when YYTABLE doesn't specify something else to do. Zero +/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM. + Performed when YYTABLE doesn't specify something else to do. Zero means the default is an error. */ static const yytype_uint8 yydefact[] = { @@ -648,8 +657,7 @@ static const yytype_int8 yypgoto[] = /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which - number is the opposite. If zero, do what YYDEFACT says. - If YYTABLE_NINF, syntax error. */ + number is the opposite. If YYTABLE_NINF, syntax error. */ #define YYTABLE_NINF -1 static const yytype_uint8 yytable[] = { @@ -661,6 +669,12 @@ static const yytype_uint8 yytable[] = 16, 13, 14, 15, 16 }; +#define yypact_value_is_default(yystate) \ + ((yystate) == (-10)) + +#define yytable_value_is_error(yytable_value) \ + YYID (0) + static const yytype_int8 yycheck[] = { 1, 10, 11, 4, 13, 14, 8, 9, 0, 10, @@ -713,7 +727,6 @@ do \ { \ yychar = (Token); \ yylval = (Value); \ - yytoken = YYTRANSLATE (yychar); \ YYPOPSTACK (1); \ goto yybackup; \ } \ @@ -755,19 +768,10 @@ while (YYID (0)) #endif -/* YY_LOCATION_PRINT -- Print the location on the stream. - This macro was not mandated originally: define only if we know - we won't break user code: when these are the locations we know. */ +/* This macro is provided for backward compatibility. */ #ifndef YY_LOCATION_PRINT -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -# define YY_LOCATION_PRINT(File, Loc) \ - fprintf (File, "%d.%d-%d.%d", \ - (Loc).first_line, (Loc).first_column, \ - (Loc).last_line, (Loc).last_column) -# else -# define YY_LOCATION_PRINT(File, Loc) ((void) 0) -# endif +# define YY_LOCATION_PRINT(File, Loc) ((void) 0) #endif @@ -959,7 +963,6 @@ int yydebug; # define YYMAXDEPTH 10000 #endif - #if YYERROR_VERBOSE @@ -1062,115 +1065,142 @@ yytnamerr (char *yyres, const char *yystr) } # endif -/* Copy into YYRESULT an error message about the unexpected token - YYCHAR while in state YYSTATE. Return the number of bytes copied, - including the terminating null byte. If YYRESULT is null, do not - copy anything; just return the number of bytes that would be - copied. As a special case, return 0 if an ordinary "syntax error" - message will do. Return YYSIZE_MAXIMUM if overflow occurs during - size calculation. */ -static YYSIZE_T -yysyntax_error (char *yyresult, int yystate, int yychar) -{ - int yyn = yypact[yystate]; +/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message + about the unexpected token YYTOKEN for the state stack whose top is + YYSSP. - if (! (YYPACT_NINF < yyn && yyn <= YYLAST)) - return 0; - else + Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is + not large enough to hold the message. In that case, also set + *YYMSG_ALLOC to the required number of bytes. Return 2 if the + required number of bytes is too large to store. */ +static int +yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, + yytype_int16 *yyssp, int yytoken) +{ + YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]); + YYSIZE_T yysize = yysize0; + YYSIZE_T yysize1; + enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; + /* Internationalized format string. */ + const char *yyformat = 0; + /* Arguments of yyformat. */ + char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; + /* Number of reported tokens (one for the "unexpected", one per + "expected"). */ + int yycount = 0; + + /* There are many possibilities here to consider: + - Assume YYFAIL is not used. It's too flawed to consider. See + + for details. YYERROR is fine as it does not invoke this + function. + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yychar) is if + this state is a consistent state with a default action. Thus, + detecting the absence of a lookahead is sufficient to determine + that there is no unexpected or expected token to report. In that + case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is a + consistent state with a default action. There might have been a + previous inconsistent state, consistent state with a non-default + action, or user semantic action that manipulated yychar. + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state. + */ + if (yytoken != YYEMPTY) { - int yytype = YYTRANSLATE (yychar); - YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); - YYSIZE_T yysize = yysize0; - YYSIZE_T yysize1; - int yysize_overflow = 0; - enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; - char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; - int yyx; - -# if 0 - /* This is so xgettext sees the translatable formats that are - constructed on the fly. */ - YY_("syntax error, unexpected %s"); - YY_("syntax error, unexpected %s, expecting %s"); - YY_("syntax error, unexpected %s, expecting %s or %s"); - YY_("syntax error, unexpected %s, expecting %s or %s or %s"); - YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); -# endif - char *yyfmt; - char const *yyf; - static char const yyunexpected[] = "syntax error, unexpected %s"; - static char const yyexpecting[] = ", expecting %s"; - static char const yyor[] = " or %s"; - char yyformat[sizeof yyunexpected - + sizeof yyexpecting - 1 - + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) - * (sizeof yyor - 1))]; - char const *yyprefix = yyexpecting; - - /* Start YYX at -YYN if negative to avoid negative indexes in - YYCHECK. */ - int yyxbegin = yyn < 0 ? -yyn : 0; - - /* Stay within bounds of both yycheck and yytname. */ - int yychecklim = YYLAST - yyn + 1; - int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; - int yycount = 1; - - yyarg[0] = yytname[yytype]; - yyfmt = yystpcpy (yyformat, yyunexpected); - - for (yyx = yyxbegin; yyx < yyxend; ++yyx) - if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) - { - if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) - { - yycount = 1; - yysize = yysize0; - yyformat[sizeof yyunexpected - 1] = '\0'; - break; - } - yyarg[yycount++] = yytname[yyx]; - yysize1 = yysize + yytnamerr (0, yytname[yyx]); - yysize_overflow |= (yysize1 < yysize); - yysize = yysize1; - yyfmt = yystpcpy (yyfmt, yyprefix); - yyprefix = yyor; - } + int yyn = yypact[*yyssp]; + yyarg[yycount++] = yytname[yytoken]; + if (!yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yyx; + + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR + && !yytable_value_is_error (yytable[yyx + yyn])) + { + if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) + { + yycount = 1; + yysize = yysize0; + break; + } + yyarg[yycount++] = yytname[yyx]; + yysize1 = yysize + yytnamerr (0, yytname[yyx]); + if (! (yysize <= yysize1 + && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) + return 2; + yysize = yysize1; + } + } + } - yyf = YY_(yyformat); - yysize1 = yysize + yystrlen (yyf); - yysize_overflow |= (yysize1 < yysize); - yysize = yysize1; + switch (yycount) + { +# define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + YYCASE_(0, YY_("syntax error")); + YYCASE_(1, YY_("syntax error, unexpected %s")); + YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +# undef YYCASE_ + } - if (yysize_overflow) - return YYSIZE_MAXIMUM; + yysize1 = yysize + yystrlen (yyformat); + if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) + return 2; + yysize = yysize1; - if (yyresult) - { - /* Avoid sprintf, as that infringes on the user's name space. - Don't have undefined behavior even if the translation - produced a string with the wrong number of "%s"s. */ - char *yyp = yyresult; - int yyi = 0; - while ((*yyp = *yyf) != '\0') - { - if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) - { - yyp += yytnamerr (yyp, yyarg[yyi++]); - yyf += 2; - } - else - { - yyp++; - yyf++; - } - } - } - return yysize; + if (*yymsg_alloc < yysize) + { + *yymsg_alloc = 2 * yysize; + if (! (yysize <= *yymsg_alloc + && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) + *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; + return 1; } + + /* Avoid sprintf, as that infringes on the user's name space. + Don't have undefined behavior even if the translation + produced a string with the wrong number of "%s"s. */ + { + char *yyp = *yymsg; + int yyi = 0; + while ((*yyp = *yyformat) != '\0') + if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) + { + yyp += yytnamerr (yyp, yyarg[yyi++]); + yyformat += 2; + } + else + { + yyp++; + yyformat++; + } + } + return 0; } #endif /* YYERROR_VERBOSE */ - /*-----------------------------------------------. | Release the memory associated to this symbol. | @@ -1203,6 +1233,7 @@ yydestruct (yymsg, yytype, yyvaluep) } } + /* Prevent warnings from -Wmissing-prototypes. */ #ifdef YYPARSE_PARAM #if defined __STDC__ || defined __cplusplus @@ -1219,12 +1250,9 @@ int yyparse (); #endif /* ! YYPARSE_PARAM */ - - - -/*-------------------------. -| yyparse or yypush_parse. | -`-------------------------*/ +/*----------. +| yyparse. | +`----------*/ #ifdef YYPARSE_PARAM #if (defined __STDC__ || defined __C99__FUNC__ \ @@ -1411,7 +1439,7 @@ yybackup: /* First try to decide what to do without reference to lookahead token. */ yyn = yypact[yystate]; - if (yyn == YYPACT_NINF) + if (yypact_value_is_default (yyn)) goto yydefault; /* Not known => get a lookahead token if don't already have one. */ @@ -1442,8 +1470,8 @@ yybackup: yyn = yytable[yyn]; if (yyn <= 0) { - if (yyn == 0 || yyn == YYTABLE_NINF) - goto yyerrlab; + if (yytable_value_is_error (yyn)) + goto yyerrlab; yyn = -yyn; goto yyreduce; } @@ -1496,123 +1524,134 @@ yyreduce: YY_REDUCE_PRINT (yyn); switch (yyn) { - case 2: + case 2: -/* Line 1464 of yacc.c */ -#line 176 "plural.y" +/* Line 1806 of yacc.c */ +#line 175 "plural.y" { if ((yyvsp[(1) - (1)].exp) == NULL) YYABORT; ((struct parse_args *) arg)->res = (yyvsp[(1) - (1)].exp); - ;} + } break; case 3: -/* Line 1464 of yacc.c */ -#line 184 "plural.y" +/* Line 1806 of yacc.c */ +#line 183 "plural.y" { (yyval.exp) = new_exp_3 (qmop, (yyvsp[(1) - (5)].exp), (yyvsp[(3) - (5)].exp), (yyvsp[(5) - (5)].exp)); - ;} + } break; case 4: -/* Line 1464 of yacc.c */ -#line 188 "plural.y" +/* Line 1806 of yacc.c */ +#line 187 "plural.y" { (yyval.exp) = new_exp_2 (lor, (yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].exp)); - ;} + } break; case 5: -/* Line 1464 of yacc.c */ -#line 192 "plural.y" +/* Line 1806 of yacc.c */ +#line 191 "plural.y" { (yyval.exp) = new_exp_2 (land, (yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].exp)); - ;} + } break; case 6: -/* Line 1464 of yacc.c */ -#line 196 "plural.y" +/* Line 1806 of yacc.c */ +#line 195 "plural.y" { (yyval.exp) = new_exp_2 ((yyvsp[(2) - (3)].op), (yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].exp)); - ;} + } break; case 7: -/* Line 1464 of yacc.c */ -#line 200 "plural.y" +/* Line 1806 of yacc.c */ +#line 199 "plural.y" { (yyval.exp) = new_exp_2 ((yyvsp[(2) - (3)].op), (yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].exp)); - ;} + } break; case 8: -/* Line 1464 of yacc.c */ -#line 204 "plural.y" +/* Line 1806 of yacc.c */ +#line 203 "plural.y" { (yyval.exp) = new_exp_2 ((yyvsp[(2) - (3)].op), (yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].exp)); - ;} + } break; case 9: -/* Line 1464 of yacc.c */ -#line 208 "plural.y" +/* Line 1806 of yacc.c */ +#line 207 "plural.y" { (yyval.exp) = new_exp_2 ((yyvsp[(2) - (3)].op), (yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].exp)); - ;} + } break; case 10: -/* Line 1464 of yacc.c */ -#line 212 "plural.y" +/* Line 1806 of yacc.c */ +#line 211 "plural.y" { (yyval.exp) = new_exp_1 (lnot, (yyvsp[(2) - (2)].exp)); - ;} + } break; case 11: -/* Line 1464 of yacc.c */ -#line 216 "plural.y" +/* Line 1806 of yacc.c */ +#line 215 "plural.y" { (yyval.exp) = new_exp_0 (var); - ;} + } break; case 12: -/* Line 1464 of yacc.c */ -#line 220 "plural.y" +/* Line 1806 of yacc.c */ +#line 219 "plural.y" { if (((yyval.exp) = new_exp_0 (num)) != NULL) (yyval.exp)->val.num = (yyvsp[(1) - (1)].num); - ;} + } break; case 13: -/* Line 1464 of yacc.c */ -#line 225 "plural.y" +/* Line 1806 of yacc.c */ +#line 224 "plural.y" { (yyval.exp) = (yyvsp[(2) - (3)].exp); - ;} + } break; -/* Line 1464 of yacc.c */ -#line 1614 "plural.c" +/* Line 1806 of yacc.c */ +#line 1642 "plural.c" default: break; } + /* User semantic actions sometimes alter yychar, and that requires + that yytoken be updated with the new translation. We take the + approach of translating immediately before every use of yytoken. + One alternative is translating here after every semantic action, + but that translation would be missed if the semantic action invokes + YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or + if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an + incorrect destructor might then be invoked immediately. In the + case of YYERROR or YYBACKUP, subsequent parser actions might lead + to an incorrect destructor call or verbose syntax error message + before the lookahead is translated. */ YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); YYPOPSTACK (yylen); @@ -1640,6 +1679,10 @@ yyreduce: | yyerrlab -- here on detecting error | `------------------------------------*/ yyerrlab: + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar); + /* If not already recovering from an error, report this error. */ if (!yyerrstatus) { @@ -1647,37 +1690,36 @@ yyerrlab: #if ! YYERROR_VERBOSE yyerror (YY_("syntax error")); #else +# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ + yyssp, yytoken) { - YYSIZE_T yysize = yysyntax_error (0, yystate, yychar); - if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM) - { - YYSIZE_T yyalloc = 2 * yysize; - if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM)) - yyalloc = YYSTACK_ALLOC_MAXIMUM; - if (yymsg != yymsgbuf) - YYSTACK_FREE (yymsg); - yymsg = (char *) YYSTACK_ALLOC (yyalloc); - if (yymsg) - yymsg_alloc = yyalloc; - else - { - yymsg = yymsgbuf; - yymsg_alloc = sizeof yymsgbuf; - } - } - - if (0 < yysize && yysize <= yymsg_alloc) - { - (void) yysyntax_error (yymsg, yystate, yychar); - yyerror (yymsg); - } - else - { - yyerror (YY_("syntax error")); - if (yysize != 0) - goto yyexhaustedlab; - } + char const *yymsgp = YY_("syntax error"); + int yysyntax_error_status; + yysyntax_error_status = YYSYNTAX_ERROR; + if (yysyntax_error_status == 0) + yymsgp = yymsg; + else if (yysyntax_error_status == 1) + { + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); + yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); + if (!yymsg) + { + yymsg = yymsgbuf; + yymsg_alloc = sizeof yymsgbuf; + yysyntax_error_status = 2; + } + else + { + yysyntax_error_status = YYSYNTAX_ERROR; + yymsgp = yymsg; + } + } + yyerror (yymsgp); + if (yysyntax_error_status == 2) + goto yyexhaustedlab; } +# undef YYSYNTAX_ERROR #endif } @@ -1736,7 +1778,7 @@ yyerrlab1: for (;;) { yyn = yypact[yystate]; - if (yyn != YYPACT_NINF) + if (!yypact_value_is_default (yyn)) { yyn += YYTERROR; if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) @@ -1795,8 +1837,13 @@ yyexhaustedlab: yyreturn: if (yychar != YYEMPTY) - yydestruct ("Cleanup: discarding lookahead", - yytoken, &yylval); + { + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = YYTRANSLATE (yychar); + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval); + } /* Do not reclaim the symbols of the rule which action triggered this YYABORT or YYACCEPT. */ YYPOPSTACK (yylen); @@ -1821,8 +1868,8 @@ yyreturn: -/* Line 1684 of yacc.c */ -#line 230 "plural.y" +/* Line 2067 of yacc.c */ +#line 229 "plural.y" void diff --git a/intl/plural.y b/intl/plural.y index a1ffb9e1ca..2df3604dcf 100644 --- a/intl/plural.y +++ b/intl/plural.y @@ -15,9 +15,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ /* The bison generated parser uses alloca. AIX 3 forces us to put this declaration at the beginning of the file. The declaration in bison's -- cgit 1.4.1 From 7b6235f261b1dbd9a2a639d5ca98cfec9584886f Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sat, 10 Mar 2012 00:43:12 +0000 Subject: Replace FSF snail mail address with URL in gperf input. --- ChangeLog | 7 +++++++ locale/programs/charmap-kw.gperf | 4 ++-- locale/programs/charmap-kw.h | 45 +++++++++++++++++++++------------------- locale/programs/locfile-kw.gperf | 4 ++-- locale/programs/locfile-kw.h | 9 +++++--- 5 files changed, 41 insertions(+), 28 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8ce6438a93..bced29e1f6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2012-03-09 Paul Eggert + [BZ #13673] + * locale/programs/charmap-kw.gperf: Replace FSF snail mail address + with URL. + * locale/programs/locfile-kw.gperf: Likewise. + * locale/programs/charmap-kw.h: Regenerated. + * locale/programs/locfile-kw.h: Likewise. + [BZ #13673] * intl/plural.y: Replace FSF snail mail address with URL. * intl/plural.c: Regenerated. diff --git a/locale/programs/charmap-kw.gperf b/locale/programs/charmap-kw.gperf index 03fea94844..4d5aecbf95 100644 --- a/locale/programs/charmap-kw.gperf +++ b/locale/programs/charmap-kw.gperf @@ -14,8 +14,8 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + along with this program; if not, see + . */ #include diff --git a/locale/programs/charmap-kw.h b/locale/programs/charmap-kw.h index 8ad6421639..8a8e70003f 100644 --- a/locale/programs/charmap-kw.h +++ b/locale/programs/charmap-kw.h @@ -1,4 +1,4 @@ -/* ANSI-C code produced by gperf version 3.0.1 */ +/* ANSI-C code produced by gperf version 3.0.4 */ /* Command-line: gperf -acCgopt -k'1,2,5,9,$' -L ANSI-C -N charmap_hash charmap-kw.gperf */ #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \ @@ -45,13 +45,13 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + along with this program; if not, see + . */ #include #include "locfile-token.h" -#line 23 "charmap-kw.gperf" +#line 24 "charmap-kw.gperf" struct keyword_t ; #define TOTAL_KEYWORDS 17 @@ -127,6 +127,9 @@ hash (register const char *str, register unsigned int len) #ifdef __GNUC__ __inline +#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__ +__attribute__ ((__gnu_inline__)) +#endif #endif const struct keyword_t * charmap_hash (register const char *str, register unsigned int len) @@ -134,45 +137,45 @@ charmap_hash (register const char *str, register unsigned int len) static const struct keyword_t wordlist[] = { {""}, {""}, {""}, -#line 38 "charmap-kw.gperf" +#line 39 "charmap-kw.gperf" {"END", tok_end, 0}, {""}, -#line 39 "charmap-kw.gperf" +#line 40 "charmap-kw.gperf" {"WIDTH", tok_width, 0}, -#line 34 "charmap-kw.gperf" +#line 35 "charmap-kw.gperf" {"escseq", tok_escseq, 1}, -#line 36 "charmap-kw.gperf" +#line 37 "charmap-kw.gperf" {"include", tok_include, 1}, {""}, {""}, -#line 27 "charmap-kw.gperf" - {"mb_cur_min", tok_mb_cur_min, 1}, #line 28 "charmap-kw.gperf" - {"escape_char", tok_escape_char, 1}, + {"mb_cur_min", tok_mb_cur_min, 1}, #line 29 "charmap-kw.gperf" + {"escape_char", tok_escape_char, 1}, +#line 30 "charmap-kw.gperf" {"comment_char", tok_comment_char, 1}, -#line 25 "charmap-kw.gperf" +#line 26 "charmap-kw.gperf" {"code_set_name", tok_code_set_name, 1}, -#line 40 "charmap-kw.gperf" +#line 41 "charmap-kw.gperf" {"WIDTH_VARIABLE", tok_width_variable, 0}, -#line 26 "charmap-kw.gperf" +#line 27 "charmap-kw.gperf" {"mb_cur_max", tok_mb_cur_max, 1}, -#line 35 "charmap-kw.gperf" +#line 36 "charmap-kw.gperf" {"addset", tok_addset, 1}, -#line 37 "charmap-kw.gperf" +#line 38 "charmap-kw.gperf" {"CHARMAP", tok_charmap, 0}, -#line 41 "charmap-kw.gperf" +#line 42 "charmap-kw.gperf" {"WIDTH_DEFAULT", tok_width_default, 0}, {""}, -#line 33 "charmap-kw.gperf" +#line 34 "charmap-kw.gperf" {"g3esc", tok_g3esc, 1}, {""}, {""}, {""}, {""}, -#line 32 "charmap-kw.gperf" +#line 33 "charmap-kw.gperf" {"g2esc", tok_g2esc, 1}, {""}, {""}, {""}, {""}, -#line 31 "charmap-kw.gperf" +#line 32 "charmap-kw.gperf" {"g1esc", tok_g1esc, 1}, {""}, {""}, {""}, {""}, -#line 30 "charmap-kw.gperf" +#line 31 "charmap-kw.gperf" {"g0esc", tok_g0esc, 1} }; diff --git a/locale/programs/locfile-kw.gperf b/locale/programs/locfile-kw.gperf index f0612e4882..ee9992dab7 100644 --- a/locale/programs/locfile-kw.gperf +++ b/locale/programs/locfile-kw.gperf @@ -14,8 +14,8 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + along with this program; if not, see + . */ #include diff --git a/locale/programs/locfile-kw.h b/locale/programs/locfile-kw.h index c0f9ce7810..f96167343f 100644 --- a/locale/programs/locfile-kw.h +++ b/locale/programs/locfile-kw.h @@ -1,4 +1,4 @@ -/* ANSI-C code produced by gperf version 3.0.2 */ +/* ANSI-C code produced by gperf version 3.0.4 */ /* Command-line: gperf -acCgopt -k'1,2,5,9,$' -L ANSI-C -N locfile_hash locfile-kw.gperf */ #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \ @@ -45,8 +45,8 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + along with this program; if not, see + . */ #include @@ -127,6 +127,9 @@ hash (register const char *str, register unsigned int len) #ifdef __GNUC__ __inline +#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__ +__attribute__ ((__gnu_inline__)) +#endif #endif const struct keyword_t * locfile_hash (register const char *str, register unsigned int len) -- cgit 1.4.1 From 57e128f551282a80916180ed18ff307e6eed5329 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sat, 10 Mar 2012 00:44:00 +0000 Subject: Replace FSF snail mail address with URL in localedata. --- localedata/ChangeLog | 5 +++++ localedata/locales/br_FR@euro | 2 +- localedata/locales/ca_ES@euro | 2 +- localedata/locales/cs_CZ | 2 +- localedata/locales/de_BE@euro | 2 +- localedata/locales/de_DE | 2 +- localedata/locales/de_DE@euro | 2 +- localedata/locales/de_LU@euro | 2 +- localedata/locales/el_GR@euro | 2 +- localedata/locales/en_AG | 2 +- localedata/locales/en_IE@euro | 2 +- localedata/locales/en_US | 2 +- localedata/locales/es_CR | 2 +- localedata/locales/es_ES@euro | 2 +- localedata/locales/es_NI | 2 +- localedata/locales/es_PR | 2 +- localedata/locales/eu_ES@euro | 2 +- localedata/locales/fi_FI@euro | 2 +- localedata/locales/fr_BE@euro | 2 +- localedata/locales/fr_FR@euro | 2 +- localedata/locales/fr_LU@euro | 2 +- localedata/locales/fy_NL | 2 +- localedata/locales/ga_IE@euro | 2 +- localedata/locales/gl_ES@euro | 2 +- localedata/locales/it_IT@euro | 2 +- localedata/locales/nl_AW | 2 +- localedata/locales/nl_BE@euro | 2 +- localedata/locales/nl_NL@euro | 2 +- localedata/locales/pt_PT@euro | 2 +- localedata/locales/sv_FI@euro | 2 +- localedata/locales/tr_CY | 2 +- localedata/locales/wa_BE@euro | 2 +- 32 files changed, 36 insertions(+), 31 deletions(-) diff --git a/localedata/ChangeLog b/localedata/ChangeLog index c5afba1b09..8567c6cd8f 100644 --- a/localedata/ChangeLog +++ b/localedata/ChangeLog @@ -1,3 +1,8 @@ +2012-03-09 Paul Eggert + + [BZ #13673] + Replace FSF snail mail address with URLs, as per GNU coding standards. + 2012-03-07 Ulrich Drepper * Makefile (distribute): Remove variable. diff --git a/localedata/locales/br_FR@euro b/localedata/locales/br_FR@euro index 62b1da934f..a28fcf61d2 100644 --- a/localedata/locales/br_FR@euro +++ b/localedata/locales/br_FR@euro @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "Breton locale for France with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" email "bug-glibc-locales@gnu.org" tel "" fax "" diff --git a/localedata/locales/ca_ES@euro b/localedata/locales/ca_ES@euro index 50609df06e..b3e6ecb676 100644 --- a/localedata/locales/ca_ES@euro +++ b/localedata/locales/ca_ES@euro @@ -16,7 +16,7 @@ escape_char / LC_IDENTIFICATION title "Catalan locale for Catalonia with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/cs_CZ b/localedata/locales/cs_CZ index 2f25e9a8f6..12fe5008e6 100644 --- a/localedata/locales/cs_CZ +++ b/localedata/locales/cs_CZ @@ -107,7 +107,7 @@ comment_char % LC_IDENTIFICATION title "Czech locale for the Czech Republic" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/de_BE@euro b/localedata/locales/de_BE@euro index e5f02dcfc0..d9c4188e7a 100644 --- a/localedata/locales/de_BE@euro +++ b/localedata/locales/de_BE@euro @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "German locale for Belgium with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/de_DE b/localedata/locales/de_DE index eac517a578..32cbd76dda 100644 --- a/localedata/locales/de_DE +++ b/localedata/locales/de_DE @@ -6,7 +6,7 @@ comment_char % LC_IDENTIFICATION title "German locale for Germany" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/de_DE@euro b/localedata/locales/de_DE@euro index d639e3fa4d..7e9c97a733 100644 --- a/localedata/locales/de_DE@euro +++ b/localedata/locales/de_DE@euro @@ -6,7 +6,7 @@ comment_char % LC_IDENTIFICATION title "German locale for Germany with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/de_LU@euro b/localedata/locales/de_LU@euro index 3c41ffb761..caff758712 100644 --- a/localedata/locales/de_LU@euro +++ b/localedata/locales/de_LU@euro @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "German locale for Luxemburg with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/el_GR@euro b/localedata/locales/el_GR@euro index bd1f6be068..2a37cf640d 100644 --- a/localedata/locales/el_GR@euro +++ b/localedata/locales/el_GR@euro @@ -4,7 +4,7 @@ comment_char % LC_IDENTIFICATION title "Greek locale for Greece with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/en_AG b/localedata/locales/en_AG index f39c410acb..b724eace81 100644 --- a/localedata/locales/en_AG +++ b/localedata/locales/en_AG @@ -6,7 +6,7 @@ comment_char % LC_IDENTIFICATION title "English language locale for Antigua and Barbuda" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/en_IE@euro b/localedata/locales/en_IE@euro index dc429d7710..7f5d518b1c 100644 --- a/localedata/locales/en_IE@euro +++ b/localedata/locales/en_IE@euro @@ -14,7 +14,7 @@ comment_char % LC_IDENTIFICATION title "English locale for Ireland with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/en_US b/localedata/locales/en_US index a41f5bc310..3560c5700b 100644 --- a/localedata/locales/en_US +++ b/localedata/locales/en_US @@ -6,7 +6,7 @@ comment_char % LC_IDENTIFICATION title "English locale for the USA" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/es_CR b/localedata/locales/es_CR index f998c86246..d7be7f8fa1 100644 --- a/localedata/locales/es_CR +++ b/localedata/locales/es_CR @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "Spanish locale for Costa Rica" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/es_ES@euro b/localedata/locales/es_ES@euro index 1d81e83652..721738e5b7 100644 --- a/localedata/locales/es_ES@euro +++ b/localedata/locales/es_ES@euro @@ -15,7 +15,7 @@ escape_char / LC_IDENTIFICATION title "Spanish locale for Spain with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/es_NI b/localedata/locales/es_NI index 207f2dabf8..7371532079 100644 --- a/localedata/locales/es_NI +++ b/localedata/locales/es_NI @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "Spanish locale for Nicaragua" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/es_PR b/localedata/locales/es_PR index 53496d48c0..b15ca45222 100644 --- a/localedata/locales/es_PR +++ b/localedata/locales/es_PR @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "Spanish locale for Puerto Rico" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/eu_ES@euro b/localedata/locales/eu_ES@euro index f88fce4c7f..356bf622d7 100644 --- a/localedata/locales/eu_ES@euro +++ b/localedata/locales/eu_ES@euro @@ -15,7 +15,7 @@ escape_char / LC_IDENTIFICATION title "Basque language locale for Spain with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/fi_FI@euro b/localedata/locales/fi_FI@euro index 836322b21f..39c51d64d1 100644 --- a/localedata/locales/fi_FI@euro +++ b/localedata/locales/fi_FI@euro @@ -15,7 +15,7 @@ comment_char % LC_IDENTIFICATION title "Finnish locale for Finland with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/fr_BE@euro b/localedata/locales/fr_BE@euro index 51968f8304..08f9298a9a 100644 --- a/localedata/locales/fr_BE@euro +++ b/localedata/locales/fr_BE@euro @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "French locale for Belgium with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/fr_FR@euro b/localedata/locales/fr_FR@euro index 63f805adc9..5f858fdddd 100644 --- a/localedata/locales/fr_FR@euro +++ b/localedata/locales/fr_FR@euro @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "French locale for France with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" email "bug-glibc-locales@gnu.org" tel "" fax "" diff --git a/localedata/locales/fr_LU@euro b/localedata/locales/fr_LU@euro index 3466e4081a..014ff1d5c4 100644 --- a/localedata/locales/fr_LU@euro +++ b/localedata/locales/fr_LU@euro @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "French locale for Luxemburg with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/fy_NL b/localedata/locales/fy_NL index a787e78f7a..b0cde4b271 100644 --- a/localedata/locales/fy_NL +++ b/localedata/locales/fy_NL @@ -13,7 +13,7 @@ escape_char / LC_IDENTIFICATION title "Frisian locale for the Netherlands" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/ga_IE@euro b/localedata/locales/ga_IE@euro index c7a929976e..c9474a594d 100644 --- a/localedata/locales/ga_IE@euro +++ b/localedata/locales/ga_IE@euro @@ -13,7 +13,7 @@ comment_char % LC_IDENTIFICATION title "Irish locale for Ireland with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/gl_ES@euro b/localedata/locales/gl_ES@euro index b5214516c9..534a092bf4 100644 --- a/localedata/locales/gl_ES@euro +++ b/localedata/locales/gl_ES@euro @@ -15,7 +15,7 @@ escape_char / LC_IDENTIFICATION title "Galician locale for Spain with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/it_IT@euro b/localedata/locales/it_IT@euro index e995eb385f..e34a8d55f6 100644 --- a/localedata/locales/it_IT@euro +++ b/localedata/locales/it_IT@euro @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "Italian locale for Italy with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/nl_AW b/localedata/locales/nl_AW index 9161977f0d..e9fe8f82e1 100644 --- a/localedata/locales/nl_AW +++ b/localedata/locales/nl_AW @@ -6,7 +6,7 @@ comment_char % LC_IDENTIFICATION title "Dutch language locale for Aruba" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/nl_BE@euro b/localedata/locales/nl_BE@euro index 333305cf67..413e8def48 100644 --- a/localedata/locales/nl_BE@euro +++ b/localedata/locales/nl_BE@euro @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "Dutch locale for Belgium with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/nl_NL@euro b/localedata/locales/nl_NL@euro index 98ee41c573..b0cc689d10 100644 --- a/localedata/locales/nl_NL@euro +++ b/localedata/locales/nl_NL@euro @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "Dutch locale for the Netherlands with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/pt_PT@euro b/localedata/locales/pt_PT@euro index 658976a657..f0a5c27af5 100644 --- a/localedata/locales/pt_PT@euro +++ b/localedata/locales/pt_PT@euro @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "Portuguese locale for Portugal with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/sv_FI@euro b/localedata/locales/sv_FI@euro index 095ef677ed..f69e5b5ae3 100644 --- a/localedata/locales/sv_FI@euro +++ b/localedata/locales/sv_FI@euro @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "Swedish locale for Finland with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/tr_CY b/localedata/locales/tr_CY index bc63829a4a..daeffc1b9c 100644 --- a/localedata/locales/tr_CY +++ b/localedata/locales/tr_CY @@ -16,7 +16,7 @@ escape_char / LC_IDENTIFICATION title "Turkish language locale for Cyprus" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" diff --git a/localedata/locales/wa_BE@euro b/localedata/locales/wa_BE@euro index a88b906997..78c6b6a01c 100644 --- a/localedata/locales/wa_BE@euro +++ b/localedata/locales/wa_BE@euro @@ -14,7 +14,7 @@ escape_char / LC_IDENTIFICATION title "Walloon locale for Belgium with Euro" source "Free Software Foundation, Inc." -address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA" +address "http:////www.gnu.org//software//libc//" contact "" email "bug-glibc-locales@gnu.org" tel "" -- cgit 1.4.1 From c524201ab0aee9e3228c43b5f53cc6364f548f8e Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sat, 10 Mar 2012 00:44:13 +0000 Subject: Replace FSF snail mail address with URL in miscellaneous files. --- ChangeLog | 13 +++++++++++++ NEWS | 4 ++-- nptl/ChangeLog | 5 +++++ nptl/pt-crti.S | 5 ++--- posix/bug-regex33.c | 5 ++--- stdio-common/bug-vfprintf-nargs.c | 5 ++--- sysdeps/i386/crti.S | 5 ++--- sysdeps/i386/crtn.S | 5 ++--- sysdeps/powerpc/powerpc32/crti.S | 5 ++--- sysdeps/powerpc/powerpc32/crtn.S | 5 ++--- sysdeps/powerpc/powerpc64/crti.S | 5 ++--- sysdeps/powerpc/powerpc64/crtn.S | 5 ++--- sysdeps/sh/crti.S | 5 ++--- sysdeps/sh/crtn.S | 5 ++--- sysdeps/x86_64/fpu/e_expf.S | 5 ++--- 15 files changed, 44 insertions(+), 38 deletions(-) diff --git a/ChangeLog b/ChangeLog index bced29e1f6..b95bb9d211 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,18 @@ 2012-03-09 Paul Eggert + [BZ #13673] + * posix/bug-regex33.c: Replace FSF snail mail address with URL. + * stdio-common/bug-vfprintf-nargs.c: Likewise. + * sysdeps/i386/crti.S: Likewise. + * sysdeps/i386/crtn.S: Likewise. + * sysdeps/powerpc/powerpc32/crti.S: Likewise. + * sysdeps/powerpc/powerpc32/crtn.S: Likewise. + * sysdeps/powerpc/powerpc64/crti.S: Likewise. + * sysdeps/powerpc/powerpc64/crtn.S: Likewise. + * sysdeps/sh/crti.S: Likewise. + * sysdeps/sh/crtn.S: Likewise. + * sysdeps/x86_64/fpu/e_expf.S: Likewise. + [BZ #13673] * locale/programs/charmap-kw.gperf: Replace FSF snail mail address with URL. diff --git a/NEWS b/NEWS index fd36632541..4f8938e1f5 100644 --- a/NEWS +++ b/NEWS @@ -13,8 +13,8 @@ Version 2.16 5077, 5461, 5805, 5993, 6884, 6907, 6911, 9739, 9902, 10110, 10135, 10140, 10210, 10545, 10716, 11174, 11322, 11365, 11494, 12047, 13058, 13525, 13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551, - 13552, 13553, 13555, 13559, 13583, 13618, 13637, 13656, 13695, 13704, - 13706, 13726, 13738, 13786, 13792, 13806 + 13552, 13553, 13555, 13559, 13583, 13618, 13637, 13656, 13673, 13695, + 13704, 13706, 13726, 13738, 13786, 13792, 13806 * ISO C11 support: diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 3f70b0a295..34a249207a 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,8 @@ +2012-03-09 Paul Eggert + + [BZ #13673] + * pt-crti.S: Replace FSF snail mail address with URL. + 2012-03-09 Joseph Myers * sysdeps/pthread/pthread.h (__need_clockid_t, __need_timespec): diff --git a/nptl/pt-crti.S b/nptl/pt-crti.S index 3ea359d7da..4c5cdddb90 100644 --- a/nptl/pt-crti.S +++ b/nptl/pt-crti.S @@ -30,9 +30,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ /* Arrange for __pthread_initialize_minimal_internal to be called at libpthread startup, instead of conditionally calling diff --git a/posix/bug-regex33.c b/posix/bug-regex33.c index c0c94aa43e..f78b354f1a 100644 --- a/posix/bug-regex33.c +++ b/posix/bug-regex33.c @@ -14,9 +14,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ #define _GNU_SOURCE 1 #include diff --git a/stdio-common/bug-vfprintf-nargs.c b/stdio-common/bug-vfprintf-nargs.c index 13c66c0486..4f621064cc 100644 --- a/stdio-common/bug-vfprintf-nargs.c +++ b/stdio-common/bug-vfprintf-nargs.c @@ -14,9 +14,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ #include #include diff --git a/sysdeps/i386/crti.S b/sysdeps/i386/crti.S index dfec2cbcd6..2ecc40d3c4 100644 --- a/sysdeps/i386/crti.S +++ b/sysdeps/i386/crti.S @@ -30,9 +30,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ /* crti.S puts a function prologue at the beginning of the .init and .fini sections and defines global symbols for those addresses, so diff --git a/sysdeps/i386/crtn.S b/sysdeps/i386/crtn.S index 2ea2a382cf..ad038fd4e9 100644 --- a/sysdeps/i386/crtn.S +++ b/sysdeps/i386/crtn.S @@ -30,9 +30,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ /* crtn.S puts function epilogues in the .init and .fini sections corresponding to the prologues in crti.S. */ diff --git a/sysdeps/powerpc/powerpc32/crti.S b/sysdeps/powerpc/powerpc32/crti.S index 72e9cf4ce0..b0e92fadfb 100644 --- a/sysdeps/powerpc/powerpc32/crti.S +++ b/sysdeps/powerpc/powerpc32/crti.S @@ -30,9 +30,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ /* crti.S puts a function prologue at the beginning of the .init and .fini sections and defines global symbols for those addresses, so diff --git a/sysdeps/powerpc/powerpc32/crtn.S b/sysdeps/powerpc/powerpc32/crtn.S index af690c1260..62a31df6b0 100644 --- a/sysdeps/powerpc/powerpc32/crtn.S +++ b/sysdeps/powerpc/powerpc32/crtn.S @@ -30,9 +30,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ /* crtn.S puts function epilogues in the .init and .fini sections corresponding to the prologues in crti.S. */ diff --git a/sysdeps/powerpc/powerpc64/crti.S b/sysdeps/powerpc/powerpc64/crti.S index bce256d9ca..96726b4317 100644 --- a/sysdeps/powerpc/powerpc64/crti.S +++ b/sysdeps/powerpc/powerpc64/crti.S @@ -30,9 +30,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ /* crti.S puts a function prologue at the beginning of the .init and .fini sections and defines global symbols for those addresses, so diff --git a/sysdeps/powerpc/powerpc64/crtn.S b/sysdeps/powerpc/powerpc64/crtn.S index 52d46b3364..39f5c143da 100644 --- a/sysdeps/powerpc/powerpc64/crtn.S +++ b/sysdeps/powerpc/powerpc64/crtn.S @@ -30,9 +30,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ /* crtn.S puts function epilogues in the .init and .fini sections corresponding to the prologues in crti.S. */ diff --git a/sysdeps/sh/crti.S b/sysdeps/sh/crti.S index 62b6c1cda8..c390485e98 100644 --- a/sysdeps/sh/crti.S +++ b/sysdeps/sh/crti.S @@ -30,9 +30,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ /* crti.S puts a function prologue at the beginning of the .init and .fini sections and defines global symbols for those addresses, so diff --git a/sysdeps/sh/crtn.S b/sysdeps/sh/crtn.S index 1b52770041..78537e754d 100644 --- a/sysdeps/sh/crtn.S +++ b/sysdeps/sh/crtn.S @@ -30,9 +30,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ /* crtn.S puts function epilogues in the .init and .fini sections corresponding to the prologues in crti.S. */ diff --git a/sysdeps/x86_64/fpu/e_expf.S b/sysdeps/x86_64/fpu/e_expf.S index f1ce2851b0..340a1c2f07 100644 --- a/sysdeps/x86_64/fpu/e_expf.S +++ b/sysdeps/x86_64/fpu/e_expf.S @@ -14,9 +14,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ #include -- cgit 1.4.1 From 253ef9ae7fe0305eb88234cb4c610dac9c27d134 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Sat, 10 Mar 2012 00:49:31 +0000 Subject: Add 13566 to list of bugs fixed in NEWS. --- NEWS | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index 4f8938e1f5..b6cd0a97cb 100644 --- a/NEWS +++ b/NEWS @@ -13,8 +13,8 @@ Version 2.16 5077, 5461, 5805, 5993, 6884, 6907, 6911, 9739, 9902, 10110, 10135, 10140, 10210, 10545, 10716, 11174, 11322, 11365, 11494, 12047, 13058, 13525, 13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551, - 13552, 13553, 13555, 13559, 13583, 13618, 13637, 13656, 13673, 13695, - 13704, 13706, 13726, 13738, 13786, 13792, 13806 + 13552, 13553, 13555, 13559, 13566, 13583, 13618, 13637, 13656, 13673, + 13695, 13704, 13706, 13726, 13738, 13786, 13792, 13806 * ISO C11 support: -- cgit 1.4.1 From 9a07f9d01f1689e99e89bbb5ec48e6930da755f1 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Sat, 10 Mar 2012 00:56:21 +0000 Subject: Use standard build rule to build rpcgen. --- ChangeLog | 7 +++++++ sunrpc/Makefile | 6 ++---- sunrpc/rpcgen.c | 2 ++ 3 files changed, 11 insertions(+), 4 deletions(-) create mode 100644 sunrpc/rpcgen.c diff --git a/ChangeLog b/ChangeLog index b95bb9d211..dbc58e6c0b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2012-03-10 Joseph Myers + + * sunrpc/Makefile (others): Add rpcgen. + ($(objpfx)rpcgen): Remove special build rule and dependency on + libc. + * sunrpc/rpcgen.c: New file. + 2012-03-09 Paul Eggert [BZ #13673] diff --git a/sunrpc/Makefile b/sunrpc/Makefile index 329d3f3d35..e0339ad77f 100644 --- a/sunrpc/Makefile +++ b/sunrpc/Makefile @@ -86,6 +86,7 @@ rpcgen-objs = rpc_main.o rpc_hout.o rpc_cout.o rpc_parse.o \ rpc_scan.o rpc_util.o rpc_svcout.o rpc_clntout.o \ rpc_tblout.o rpc_sample.o extra-objs = $(rpcgen-objs) +others += rpcgen all: # Make this the default target; it will be defined in Rules. @@ -149,10 +150,7 @@ $(objpfx)tst-getmyaddr: $(common-objpfx)linkobj/libc.so $(objpfx)tst-xdrmem: $(common-objpfx)linkobj/libc.so $(objpfx)tst-xdrmem2: $(common-objpfx)linkobj/libc.so -$(objpfx)rpcgen: $(addprefix $(objpfx),$(rpcgen-objs)) \ - $(sort $(filter $(common-objpfx)libc%,$(link-libc))) \ - $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit) - $(+link) +$(objpfx)rpcgen: $(addprefix $(objpfx),$(rpcgen-objs)) # This makes sure -DNOT_IN_libc is passed for all these modules. cpp-srcs-left := $(rpcgen-objs:.o=.c) diff --git a/sunrpc/rpcgen.c b/sunrpc/rpcgen.c new file mode 100644 index 0000000000..1b455ba243 --- /dev/null +++ b/sunrpc/rpcgen.c @@ -0,0 +1,2 @@ +/* Empty file expected by glibc's standard build rules for + executables. */ -- cgit 1.4.1 From 2d2cd51564c7fa6f82677e9f4baab8e6996380b5 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Fri, 9 Mar 2012 20:48:06 -0800 Subject: Fix bugs in sparc PLT profiling register management, and add sparc sotruss support. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Protect local variables with appropriate CPP guards. * sysdeps/sparc/sparc32/dl-trampoline.S: Propagate the stack_ptr from the frame pointer, not the stack pointer. Correct layout comments. Fix test on resulting framesize and the management of the outregs buffer for pltexit. Preserve floating point return values across _dl_call_pltexit call. * sysdeps/sparc/sparc64/dl-trampoline.S: Fix test on resulting framesize and the management of the outregs buffer for pltexit. Preserve floating point return values across _dl_call_pltexit call. * elf/sotruss-lib.c (la_sparc32_gnu_pltenter, la_sparc64_gnu_pltenter, la_sparc32_gnu_pltexit, la_sparc64_gnu_pltexit): New functions. (print_exit): Fix format string for return register value. --- ChangeLog | 16 ++++++++++ elf/sotruss-lib.c | 58 +++++++++++++++++++++++++++++++++-- sysdeps/sparc/sparc32/dl-machine.h | 6 +++- sysdeps/sparc/sparc32/dl-trampoline.S | 58 +++++++++++++++++++---------------- sysdeps/sparc/sparc64/dl-trampoline.S | 43 +++++++++++++------------- 5 files changed, 129 insertions(+), 52 deletions(-) diff --git a/ChangeLog b/ChangeLog index dbc58e6c0b..a07342dc80 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,19 @@ +2012-03-09 David S. Miller + + * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Protect local + variables with appropriate CPP guards. + * sysdeps/sparc/sparc32/dl-trampoline.S: Propagate the stack_ptr from the + frame pointer, not the stack pointer. Correct layout comments. Fix test + on resulting framesize and the management of the outregs buffer for pltexit. + Preserve floating point return values across _dl_call_pltexit call. + * sysdeps/sparc/sparc64/dl-trampoline.S: Fix test on resulting + framesize and the management of the outregs buffer for pltexit. + Preserve floating point return values across _dl_call_pltexit + call. + * elf/sotruss-lib.c (la_sparc32_gnu_pltenter, la_sparc64_gnu_pltenter, + la_sparc32_gnu_pltexit, la_sparc64_gnu_pltexit): New functions. + (print_exit): Fix format string for return register value. + 2012-03-10 Joseph Myers * sunrpc/Makefile (others): Add rpcgen. diff --git a/elf/sotruss-lib.c b/elf/sotruss-lib.c index 542672692f..c2ab7330d4 100644 --- a/elf/sotruss-lib.c +++ b/elf/sotruss-lib.c @@ -1,5 +1,5 @@ /* Trace calls through PLTs and show caller, callee, and parameters. - Copyright (C) 2011 Free Software Foundation, Inc. + Copyright (C) 2011, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 2011. @@ -288,6 +288,40 @@ la_x86_64_gnu_pltenter (Elf64_Sym *sym __attribute__ ((unused)), return sym->st_value; } +#elif defined __sparc__ && !defined __arch64__ +Elf32_Addr +la_sparc32_gnu_pltenter (Elf32_Sym *sym __attribute__ ((unused)), + unsigned int ndx __attribute__ ((unused)), + uintptr_t *refcook, uintptr_t *defcook, + La_sparc32_regs *regs, unsigned int *flags, + const char *symname, long int *framesizep) +{ + print_enter (refcook, defcook, symname, + regs->lr_reg[0], regs->lr_reg[1], regs->lr_reg[2], + *flags); + + /* No need to copy anything, we will not need the parameters in any case. */ + *framesizep = 0; + + return sym->st_value; +} +#elif defined __sparc__ && defined __arch64__ +Elf64_Addr +la_sparc64_gnu_pltenter (Elf64_Sym *sym __attribute__ ((unused)), + unsigned int ndx __attribute__ ((unused)), + uintptr_t *refcook, uintptr_t *defcook, + La_sparc64_regs *regs, unsigned int *flags, + const char *symname, long int *framesizep) +{ + print_enter (refcook, defcook, symname, + regs->lr_reg[0], regs->lr_reg[1], regs->lr_reg[2], + *flags); + + /* No need to copy anything, we will not need the parameters in any case. */ + *framesizep = 0; + + return sym->st_value; +} #elif !defined HAVE_ARCH_PLTENTER # warning "pltenter for architecture not supported" #endif @@ -302,7 +336,7 @@ print_exit (uintptr_t *refcook, uintptr_t *defcook, const char *symname, if (print_pid) snprintf (buf, sizeof (buf), "%5ld: ", (long int) getpid ()); - fprintf (out_file, "%s%15s -> %-15s:%s%s - 0x%lu\n", + fprintf (out_file, "%s%15s -> %-15s:%s%s - 0x%lx\n", buf, (char *) *refcook, (char *) *defcook, " ", symname, reg); } @@ -327,6 +361,26 @@ la_x86_64_gnu_pltexit (Elf64_Sym *sym, unsigned int ndx, uintptr_t *refcook, return 0; } +#elif defined __sparc__ && !defined __arch64__ +unsigned int +la_sparc32_gnu_pltexit (Elf32_Sym *sym, unsigned int ndx, uintptr_t *refcook, + uintptr_t *defcook, const struct La_sparc32_regs *inregs, + struct La_sparc32_retval *outregs, const char *symname) +{ + print_exit (refcook, defcook, symname, outregs->lrv_reg[0]); + + return 0; +} +#elif defined __sparc__ && defined __arch64__ +unsigned int +la_sparc64_gnu_pltexit (Elf64_Sym *sym, unsigned int ndx, uintptr_t *refcook, + uintptr_t *defcook, const struct La_sparc64_regs *inregs, + struct La_sparc64_retval *outregs, const char *symname) +{ + print_exit (refcook, defcook, symname, outregs->lrv_reg[0]); + + return 0; +} #elif !defined HAVE_ARCH_PLTEXIT # warning "pltexit for architecture not supported" #endif diff --git a/sysdeps/sparc/sparc32/dl-machine.h b/sysdeps/sparc/sparc32/dl-machine.h index 1620ca54df..f85683d1b0 100644 --- a/sysdeps/sparc/sparc32/dl-machine.h +++ b/sysdeps/sparc/sparc32/dl-machine.h @@ -1,5 +1,5 @@ /* Machine-dependent ELF dynamic relocation inline functions. SPARC version. - Copyright (C) 1996-2003, 2004, 2005, 2006, 2007, 2010, 2011 + Copyright (C) 1996-2003, 2004, 2005, 2006, 2007, 2010, 2011, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -341,10 +341,14 @@ elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc, void *const reloc_addr_arg, int skip_ifunc) { Elf32_Addr *const reloc_addr = reloc_addr_arg; +#if !defined RTLD_BOOTSTRAP && !defined RESOLVE_CONFLICT_FIND_MAP const Elf32_Sym *const refsym = sym; +#endif Elf32_Addr value; const unsigned int r_type = ELF32_R_TYPE (reloc->r_info); +#if !defined RESOLVE_CONFLICT_FIND_MAP struct link_map *sym_map = NULL; +#endif #if !defined RTLD_BOOTSTRAP && !defined HAVE_Z_COMBRELOC /* This is defined in rtld.c, but nowhere in the static libc.a; make the diff --git a/sysdeps/sparc/sparc32/dl-trampoline.S b/sysdeps/sparc/sparc32/dl-trampoline.S index 79ec79fe9e..44794592aa 100644 --- a/sysdeps/sparc/sparc32/dl-trampoline.S +++ b/sysdeps/sparc/sparc32/dl-trampoline.S @@ -1,5 +1,5 @@ /* PLT trampolines. Sparc 32-bit version. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -48,17 +48,20 @@ _dl_runtime_resolve: .size _dl_runtime_resolve, .-_dl_runtime_resolve /* For the profiling cases we pass in our stack frame - * as the base of the La_sparc64_regs, so it looks + * as the base of the La_sparc32_regs, so it looks * like: - * %l0 %sp + * %l0 %sp + (0 * 8) + * %l1 %sp + (0 * 8) + 4 * ... - * %l7 %sp + (7 * 8) - * %i0 %sp + (8 * 8) + * %l6 %sp + (3 * 8) + * %l7 %sp + (3 * 8) + 4 + * %i0 %sp + (4 * 8) + * %i1 %sp + (4 * 8) + 4 * ... - * %i7 %sp + (15 * 8) - * %f0 %sp + (16 * 8) - * %f16 %sp + (31 * 8) - * framesize %sp + (32 * 8) + * %i6 %sp + (7 * 8) + * %i7 %sp + (7 * 8) + 4 + * struct_ret_ptr %sp + (8 * 8) + * framesize %sp + (9 * 8) */ .globl _dl_profile_save_regs @@ -74,7 +77,7 @@ _dl_profile_save_regs: std %i2, [%sp + ( 5 * 8)] std %i4, [%sp + ( 6 * 8)] std %i6, [%sp + ( 7 * 8)] - ld [%sp + (8 * 8)], %l4 + ld [%fp + (8 * 8)], %l4 retl st %l4, [%sp + (8 * 8)] @@ -91,8 +94,11 @@ _dl_profile_save_regs: _dl_profile_invoke: cfi_startproc - sub %sp, %l0, %sp -1: + add %l0, 7, %l0 + andn %l0, 7, %l0 + add %l0, 2 * 8, %g1 + + sub %sp, %g1, %sp srl %l0, 3, %l7 mov %o0, %l1 mov %i0, %o0 @@ -101,8 +107,10 @@ _dl_profile_invoke: mov %i3, %o3 mov %i4, %o4 mov %i5, %o5 + cmp %l0, 0 mov %fp, %l2 - mov %sp, %l3 + be 2f + add %sp, (11 * 8), %l3 1: ldd [%l2], %g2 add %l2, 0x8, %l2 subcc %l7, 1, %l7 @@ -110,7 +118,7 @@ _dl_profile_invoke: bne 1b add %l3, 0x8, %l3 - jmpl %l1, %o7 +2: jmpl %l1, %o7 nop std %o0, [%sp + ( 9 * 8)] @@ -118,11 +126,12 @@ _dl_profile_invoke: mov %l5, %o0 mov %l6, %o1 - add %sp, %l0, %o2 + add %sp, (11 * 8), %o2 call _dl_call_pltexit - add %sp, (16 * 8), %o3 + add %sp, ( 9 * 8), %o3 - ldd [%sp + (9 * 8)], %i0 + ldd [%sp + ( 9 * 8)], %i0 + ldd [%sp + (10 * 8)], %f0 jmpl %i7 + 8, %g0 restore @@ -142,11 +151,7 @@ _dl_profile_invoke: _dl_runtime_profile: cfi_startproc - cmp %fp, 0 - be,a 1f - mov 104, %g3 - sub %fp, %sp, %g3 -1: save %sp, -104, %sp + save %sp, -104, %sp cfi_def_cfa_register(%fp) cfi_window_save cfi_register(%o7, %i7) @@ -156,20 +161,19 @@ _dl_runtime_profile: mov %i7, %o2 sub %o1, 4*12, %o1 - mov %g3, %l0 mov %o0, %l5 mov %o1, %l6 - call _dl_profile_save_regs + call _dl_profile_save_regs nop mov %sp, %o3 call _dl_profile_fixup add %sp, (9 * 8), %o4 - ld [%sp + (9 * 8)], %o1 - cmp %o1, 0 - bgeu 1f + ld [%sp + (9 * 8)], %l0 + cmp %l0, 0 + bl 1f nop call _dl_profile_invoke diff --git a/sysdeps/sparc/sparc64/dl-trampoline.S b/sysdeps/sparc/sparc64/dl-trampoline.S index 7caece3430..7d74fd0af8 100644 --- a/sysdeps/sparc/sparc64/dl-trampoline.S +++ b/sysdeps/sparc/sparc64/dl-trampoline.S @@ -1,5 +1,5 @@ /* PLT trampolines. Sparc 64-bit version. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -158,8 +158,11 @@ _dl_profile_save_regs: _dl_profile_invoke: cfi_startproc - sub %sp, %l0, %sp -1: + add %l0, 7, %l0 + andn %l0, 7, %l0 + add %l0, (8 * 8), %g1 + + sub %sp, %g1, %sp srlx %l0, 3, %l7 mov %o0, %l1 mov %i0, %o0 @@ -169,7 +172,8 @@ _dl_profile_invoke: mov %i4, %o4 mov %i5, %o5 add %fp, STACK_BIAS, %l2 - add %sp, STACK_BIAS, %l3 + brz %l0, 2f + add %sp, STACK_BIAS, %l3 1: ldx [%l2], %l4 add %l2, 0x8, %l2 subcc %l7, 1, %l7 @@ -177,7 +181,7 @@ _dl_profile_invoke: bne,pt %xcc, 1b add %l3, 0x8, %l3 - jmpl %l1, %o7 +2: jmpl %l1, %o7 nop stx %o0, [%sp + STACK_BIAS + (16 * 8)] @@ -191,15 +195,18 @@ _dl_profile_invoke: mov %l5, %o0 mov %l6, %o1 - add %sp, %l0, %o2 - add %sp, STACK_BIAS + (16 * 8), %o3 + add %sp, STACK_BIAS + (24 * 8), %o2 call _dl_call_pltexit - add %o2, STACK_BIAS, %o2 + add %sp, STACK_BIAS + (16 * 8), %o3 ldx [%sp + STACK_BIAS + (16 * 8)], %i0 ldx [%sp + STACK_BIAS + (17 * 8)], %i1 ldx [%sp + STACK_BIAS + (18 * 8)], %i2 ldx [%sp + STACK_BIAS + (19 * 8)], %i3 + ldd [%sp + STACK_BIAS + (20 * 8)], %f0 + ldd [%sp + STACK_BIAS + (21 * 8)], %f2 + ldd [%sp + STACK_BIAS + (22 * 8)], %f4 + ldd [%sp + STACK_BIAS + (23 * 8)], %f8 jmpl %i7 + 8, %g0 restore @@ -219,10 +226,7 @@ _dl_profile_invoke: _dl_runtime_profile_0: cfi_startproc - brz,a,pn %fp, 1f - mov 192, %g5 - sub %fp, %sp, %g5 -1: save %sp, -336, %sp + save %sp, -336, %sp cfi_def_cfa_register(%fp) cfi_window_save cfi_register(%o7, %i7) @@ -250,7 +254,6 @@ _dl_runtime_profile_0: mov %i7, %o2 sllx %l0, 3, %o1 - mov %g5, %l0 mov %o0, %l5 mov %o1, %l6 @@ -261,8 +264,8 @@ _dl_runtime_profile_0: call _dl_profile_fixup add %sp, (STACK_BIAS + (32 * 8)), %o4 - ldx [%sp + STACK_BIAS + (32 * 8)], %o1 - brgez,pt %o1, 1f + ldx [%sp + STACK_BIAS + (32 * 8)], %l0 + brlz,pt %l0, 1f nop call _dl_profile_invoke @@ -285,10 +288,7 @@ _dl_runtime_profile_0: _dl_runtime_profile_1: cfi_startproc - brz,a,pn %fp, 1f - mov 192, %g5 - sub %fp, %sp, %g5 -1: save %sp, -336, %sp + save %sp, -336, %sp cfi_def_cfa_register(%fp) cfi_window_save cfi_register(%o7, %i7) @@ -300,7 +300,6 @@ _dl_runtime_profile_1: mov %i7, %o2 add %o1, %o3, %o1 - mov %g5, %l0 mov %o0, %l5 mov %o1, %l6 @@ -311,8 +310,8 @@ _dl_runtime_profile_1: call _dl_profile_fixup add %sp, (STACK_BIAS + (32 * 8)), %o4 - ldx [%sp + STACK_BIAS + (32 * 8)], %o1 - brgez,pt %o1, 1f + ldx [%sp + STACK_BIAS + (32 * 8)], %l0 + brlz,pt %l0, 1f nop call _dl_profile_invoke -- cgit 1.4.1 From 058c132dd1ebeaf55e781c054937608b04f90b0b Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Sat, 10 Mar 2012 18:20:51 +0100 Subject: Update powerpc libm ULPs --- ChangeLog | 4 + sysdeps/powerpc/fpu/libm-test-ulps | 368 ++++++++++++++++++++++++++++++++++++- 2 files changed, 368 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index a07342dc80..33ef1c1cfa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2012-03-10 Andreas Schwab + + * sysdeps/powerpc/fpu/libm-test-ulps: Update. + 2012-03-09 David S. Miller * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Protect local diff --git a/sysdeps/powerpc/fpu/libm-test-ulps b/sysdeps/powerpc/fpu/libm-test-ulps index f3d4dd994a..5add0b4b9e 100644 --- a/sysdeps/powerpc/fpu/libm-test-ulps +++ b/sysdeps/powerpc/fpu/libm-test-ulps @@ -53,7 +53,151 @@ Test "cabs (0.75 + 12.390625 i) == 12.4133028598606664302388810868156657": float: 1 ifloat: 1 +# cacos +Test "Imaginary part of: cacos (+0 + 0.5 i) == pi/2 - 0.4812118250596034474977589134243684231352 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: cacos (+0 + 1.0 i) == pi/2 - 0.8813735870195430252326093249797923090282 i": +double: 3 +float: 1 +idouble: 3 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacos (+0 + 1.5 i) == pi/2 - 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacos (+0 - 0.5 i) == pi/2 + 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacos (+0 - 1.0 i) == pi/2 + 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacos (+0 - 1.5 i) == pi/2 + 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacos (-0 + 0.5 i) == pi/2 - 0.4812118250596034474977589134243684231352 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: cacos (-0 + 1.0 i) == pi/2 - 0.8813735870195430252326093249797923090282 i": +double: 3 +float: 1 +idouble: 3 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacos (-0 + 1.5 i) == pi/2 - 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacos (-0 - 0.5 i) == pi/2 + 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacos (-0 - 1.0 i) == pi/2 + 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacos (-0 - 1.5 i) == pi/2 + 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +Test "Real part of: cacos (-0.5 + +0 i) == 2.094395102393195492308428922186335256131 - 0 i": +double: 1 +idouble: 1 +Test "Real part of: cacos (-0.5 - 0 i) == 2.094395102393195492308428922186335256131 + +0 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacos (-1.5 + +0 i) == pi - 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacos (0.5 + +0 i) == 1.047197551196597746154214461093167628066 - 0 i": +double: 1 +idouble: 1 +Test "Real part of: cacos (0.5 - 0 i) == 1.047197551196597746154214461093167628066 + +0 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacos (1.5 + +0 i) == +0 - 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 + # cacosh +Test "Real part of: cacosh (+0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (+0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (-0.5 + +0 i) == +0 + 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (-0.5 - 0 i) == +0 - 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + pi i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - pi i": +float: 1 +ifloat: 1 Test "Real part of: cacosh (-2 - 3 i) == 1.9833870299165354323470769028940395 - 2.1414491111159960199416055713254211 i": double: 1 float: 7 @@ -64,18 +208,200 @@ double: 1 float: 3 idouble: 1 ifloat: 3 +Test "Imaginary part of: cacosh (0.5 + +0 i) == +0 + 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0 i) == +0 - 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + +0 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - 0 i": +float: 1 +ifloat: 1 # casin +Test "Imaginary part of: casin (+0 + 0.5 i) == +0 + 0.4812118250596034474977589134243684231352 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: casin (+0 + 1.0 i) == +0 + 0.8813735870195430252326093249797923090282 i": +double: 3 +float: 1 +idouble: 3 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casin (+0 + 1.5 i) == +0 + 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casin (+0 - 0.5 i) == +0 - 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: casin (+0 - 1.0 i) == +0 - 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: casin (+0 - 1.5 i) == +0 - 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +Test "Imaginary part of: casin (-0 + 0.5 i) == -0 + 0.4812118250596034474977589134243684231352 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: casin (-0 + 1.0 i) == -0 + 0.8813735870195430252326093249797923090282 i": +double: 3 +float: 1 +idouble: 3 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casin (-0 + 1.5 i) == -0 + 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casin (-0 - 0.5 i) == -0 - 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: casin (-0 - 1.0 i) == -0 - 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: casin (-0 - 1.5 i) == -0 - 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +Test "Real part of: casin (-0.5 + +0 i) == -0.5235987755982988730771072305465838140329 + +0 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casin (-0.5 - 0 i) == -0.5235987755982988730771072305465838140329 - 0 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casin (-1.5 + +0 i) == -pi/2 + 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 Test "Real part of: casin (-2 - 3 i) == -0.57065278432109940071028387968566963 - 1.9833870299165354323470769028940395 i": ildouble: 1 ldouble: 1 +Test "Real part of: casin (0.5 + +0 i) == 0.5235987755982988730771072305465838140329 + +0 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casin (0.5 - 0 i) == 0.5235987755982988730771072305465838140329 - 0 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 Test "Real part of: casin (0.75 + 1.25 i) == 0.453276177638793913448921196101971749 + 1.13239363160530819522266333696834467 i": double: 1 float: 1 idouble: 1 ifloat: 1 +Test "Imaginary part of: casin (1.5 + +0 i) == pi/2 + 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 # casinh +Test "Imaginary part of: casinh (+0 + 0.5 i) == +0 + 0.5235987755982988730771072305465838140329 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casinh (+0 - 0.5 i) == +0 - 0.5235987755982988730771072305465838140329 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casinh (-0 + 0.5 i) == -0 + 0.5235987755982988730771072305465838140329 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (-0 + 1.5 i) == -0.9624236501192068949955178268487368462704 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: casinh (-0 - 0.5 i) == -0 - 0.5235987755982988730771072305465838140329 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (-0 - 1.5 i) == -0.9624236501192068949955178268487368462704 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: casinh (-0.5 + +0 i) == -0.4812118250596034474977589134243684231352 + +0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Real part of: casinh (-0.5 - 0 i) == -0.4812118250596034474977589134243684231352 - 0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Real part of: casinh (-1.0 + +0 i) == -0.8813735870195430252326093249797923090282 + +0 i": +double: 3 +float: 1 +idouble: 3 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (-1.0 - 0 i) == -0.8813735870195430252326093249797923090282 - 0 i": +double: 3 +float: 1 +idouble: 3 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (-1.5 + +0 i) == -1.194763217287109304111930828519090523536 + +0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (-1.5 - 0 i) == -1.194763217287109304111930828519090523536 - 0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 1 +ldouble: 1 Test "Real part of: casinh (-2 - 3 i) == -1.9686379257930962917886650952454982 - 0.96465850440760279204541105949953237 i": double: 5 float: 1 @@ -90,6 +416,12 @@ idouble: 3 ifloat: 6 ildouble: 1 ldouble: 1 +Test "Real part of: casinh (0.5 + +0 i) == 0.4812118250596034474977589134243684231352 + +0 i": +float: 1 +ifloat: 1 +Test "Real part of: casinh (0.5 - 0 i) == 0.4812118250596034474977589134243684231352 - 0 i": +float: 1 +ifloat: 1 Test "Real part of: casinh (0.75 + 1.25 i) == 1.03171853444778027336364058631006594 + 0.911738290968487636358489564316731207 i": float: 1 ifloat: 1 @@ -98,6 +430,22 @@ double: 1 float: 1 idouble: 1 ifloat: 1 +Test "Real part of: casinh (1.0 + +0 i) == 0.8813735870195430252326093249797923090282 + +0 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: casinh (1.0 - 0 i) == 0.8813735870195430252326093249797923090282 - 0 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: casinh (1.5 + +0 i) == 1.194763217287109304111930828519090523536 + +0 i": +double: 1 +idouble: 1 +Test "Real part of: casinh (1.5 - 0 i) == 1.194763217287109304111930828519090523536 - 0 i": +double: 1 +idouble: 1 # catan Test "Real part of: catan (-2 - 3 i) == -1.4099210495965755225306193844604208 - 0.22907268296853876629588180294200276 i": @@ -1500,12 +1848,18 @@ ildouble: 1 ldouble: 1 Function: Real part of "cacos": +double: 1 +idouble: 1 ildouble: 1 ldouble: 1 Function: Imaginary part of "cacos": -ildouble: 1 -ldouble: 1 +double: 3 +float: 1 +idouble: 3 +ifloat: 1 +ildouble: 2 +ldouble: 2 Function: Real part of "cacosh": double: 1 @@ -1520,6 +1874,8 @@ double: 1 float: 3 idouble: 1 ifloat: 3 +ildouble: 1 +ldouble: 1 Function: Real part of "casin": double: 1 @@ -1530,8 +1886,12 @@ ildouble: 1 ldouble: 1 Function: Imaginary part of "casin": -ildouble: 1 -ldouble: 1 +double: 3 +float: 1 +idouble: 3 +ifloat: 1 +ildouble: 2 +ldouble: 2 Function: Real part of "casinh": double: 5 -- cgit 1.4.1 From 6e226b094f4d9fb00797f93d89773dc12811fd0f Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Sun, 11 Mar 2012 18:46:30 -0700 Subject: Update sparc ULPs for recently added tests. * sysdeps/sparc/fpu/libm-test-ulps: Update. --- ChangeLog | 4 + sysdeps/sparc/fpu/libm-test-ulps | 467 ++++++++++++++++++++++++++++++++++++++- 2 files changed, 468 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 33ef1c1cfa..85993dce6b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2012-03-11 David S. Miller + + * sysdeps/sparc/fpu/libm-test-ulps: Update. + 2012-03-10 Andreas Schwab * sysdeps/powerpc/fpu/libm-test-ulps: Update. diff --git a/sysdeps/sparc/fpu/libm-test-ulps b/sysdeps/sparc/fpu/libm-test-ulps index 178c1971b1..29e732c282 100644 --- a/sysdeps/sparc/fpu/libm-test-ulps +++ b/sysdeps/sparc/fpu/libm-test-ulps @@ -28,11 +28,195 @@ float: 1 ifloat: 1 # cacos +Test "Imaginary part of: cacos (+0 + 0.5 i) == pi/2 - 0.4812118250596034474977589134243684231352 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacos (+0 + 1.0 i) == pi/2 - 0.8813735870195430252326093249797923090282 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 3 +ldouble: 3 +Test "Imaginary part of: cacos (+0 + 1.5 i) == pi/2 - 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: cacos (+0 - 0.5 i) == pi/2 + 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacos (+0 - 1.0 i) == pi/2 + 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacos (+0 - 1.5 i) == pi/2 + 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacos (-0 + 0.5 i) == pi/2 - 0.4812118250596034474977589134243684231352 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacos (-0 + 1.0 i) == pi/2 - 0.8813735870195430252326093249797923090282 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 3 +ldouble: 3 +Test "Imaginary part of: cacos (-0 + 1.5 i) == pi/2 - 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: cacos (-0 - 0.5 i) == pi/2 + 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacos (-0 - 1.0 i) == pi/2 + 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacos (-0 - 1.5 i) == pi/2 + 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacos (-1.5 + +0 i) == pi - 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacos (0.5 + +0 i) == 1.047197551196597746154214461093167628066 - 0 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacos (0.5 - 0 i) == 1.047197551196597746154214461093167628066 + +0 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 Test "Imaginary part of: cacos (0.75 + 1.25 i) == 1.11752014915610270578240049553777969 - 1.13239363160530819522266333696834467 i": ildouble: 1 ldouble: 1 +Test "Imaginary part of: cacos (1.5 + +0 i) == +0 - 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 # cacosh +Test "Real part of: cacosh (+0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (+0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (+0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (+0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (+0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (+0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0.5 + +0 i) == +0 + 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (-0.5 - 0 i) == +0 - 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + pi i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - pi i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 Test "Real part of: cacosh (-2 - 3 i) == 1.9833870299165354323470769028940395 - 2.1414491111159960199416055713254211 i": double: 1 float: 7 @@ -47,8 +231,101 @@ idouble: 1 ifloat: 3 ildouble: 1 ldouble: 1 +Test "Real part of: cacosh (1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + +0 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - 0 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 # casin +Test "Imaginary part of: casin (+0 + 0.5 i) == +0 + 0.4812118250596034474977589134243684231352 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casin (+0 + 1.0 i) == +0 + 0.8813735870195430252326093249797923090282 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 3 +ldouble: 3 +Test "Imaginary part of: casin (+0 + 1.5 i) == +0 + 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: casin (+0 - 0.5 i) == +0 - 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casin (+0 - 1.0 i) == +0 - 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casin (+0 - 1.5 i) == +0 - 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casin (-0 + 0.5 i) == -0 + 0.4812118250596034474977589134243684231352 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casin (-0 + 1.0 i) == -0 + 0.8813735870195430252326093249797923090282 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 3 +ldouble: 3 +Test "Imaginary part of: casin (-0 + 1.5 i) == -0 + 1.194763217287109304111930828519090523536 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: casin (-0 - 0.5 i) == -0 - 0.4812118250596034474977589134243684231352 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casin (-0 - 1.0 i) == -0 - 0.8813735870195430252326093249797923090282 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casin (-0 - 1.5 i) == -0 - 1.194763217287109304111930828519090523536 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: casin (-1.5 + +0 i) == -pi/2 + 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 Test "Real part of: casin (0.75 + 1.25 i) == 0.453276177638793913448921196101971749 + 1.13239363160530819522266333696834467 i": double: 1 float: 1 @@ -57,8 +334,71 @@ ifloat: 1 Test "Imaginary part of: casin (0.75 + 1.25 i) == 0.453276177638793913448921196101971749 + 1.13239363160530819522266333696834467 i": ildouble: 1 ldouble: 1 +Test "Imaginary part of: casin (1.5 + +0 i) == pi/2 + 0.9624236501192068949955178268487368462704 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 # casinh +Test "Real part of: casinh (-0 + 1.5 i) == -0.9624236501192068949955178268487368462704 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (-0 - 1.5 i) == -0.9624236501192068949955178268487368462704 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (-0.5 + +0 i) == -0.4812118250596034474977589134243684231352 + +0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (-0.5 - 0 i) == -0.4812118250596034474977589134243684231352 - 0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (-1.0 + +0 i) == -0.8813735870195430252326093249797923090282 + +0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 3 +ldouble: 3 +Test "Real part of: casinh (-1.0 - 0 i) == -0.8813735870195430252326093249797923090282 - 0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 3 +ldouble: 3 +Test "Real part of: casinh (-1.5 + +0 i) == -1.194763217287109304111930828519090523536 + +0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "Real part of: casinh (-1.5 - 0 i) == -1.194763217287109304111930828519090523536 - 0 i": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 2 +ldouble: 2 Test "Real part of: casinh (-2 - 3 i) == -1.9686379257930962917886650952454982 - 0.96465850440760279204541105949953237 i": double: 5 float: 1 @@ -73,6 +413,16 @@ idouble: 3 ifloat: 6 ildouble: 2 ldouble: 2 +Test "Real part of: casinh (0.5 + +0 i) == 0.4812118250596034474977589134243684231352 + +0 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (0.5 - 0 i) == 0.4812118250596034474977589134243684231352 - 0 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 Test "Real part of: casinh (0.75 + 1.25 i) == 1.03171853444778027336364058631006594 + 0.911738290968487636358489564316731207 i": float: 1 ifloat: 1 @@ -85,6 +435,30 @@ idouble: 1 ifloat: 1 ildouble: 1 ldouble: 1 +Test "Real part of: casinh (1.0 + +0 i) == 0.8813735870195430252326093249797923090282 + +0 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (1.0 - 0 i) == 0.8813735870195430252326093249797923090282 - 0 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (1.5 + +0 i) == 1.194763217287109304111930828519090523536 + +0 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: casinh (1.5 - 0 i) == 1.194763217287109304111930828519090523536 - 0 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 # catan Test "Real part of: catan (-2 - 3 i) == -1.4099210495965755225306193844604208 - 0.22907268296853876629588180294200276 i": @@ -419,23 +793,51 @@ ldouble: 1 Test "cosh_downward (22) == 1792456423.065795780980053377632656584997": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 Test "cosh_downward (23) == 4872401723.124451300068625740569997090344": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 Test "cosh_downward (24) == 13244561064.92173614708845674912733665919": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 + +# cosh_tonearest +Test "cosh_tonearest (22) == 1792456423.065795780980053377632656584997": +ildouble: 1 +ldouble: 1 # cosh_towardzero Test "cosh_towardzero (22) == 1792456423.065795780980053377632656584997": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 Test "cosh_towardzero (23) == 4872401723.124451300068625740569997090344": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 Test "cosh_towardzero (24) == 13244561064.92173614708845674912733665919": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 + +# cosh_upward +Test "cosh_upward (22) == 1792456423.065795780980053377632656584997": +ildouble: 1 +ldouble: 1 +Test "cosh_upward (23) == 4872401723.124451300068625740569997090344": +ildouble: 1 +ldouble: 1 +Test "cosh_upward (24) == 13244561064.92173614708845674912733665919": +ildouble: 1 +ldouble: 1 # cpow Test "Real part of: cpow (0.75 + 1.25 i, 0.0 + 1.0 i) == 0.331825439177608832276067945276730566 + 0.131338600281188544930936345230903032 i": @@ -954,6 +1356,8 @@ ifloat: 1 Test "pow_upward (1.0625, 1.125) == 1.070582293028761362162622578677070098674": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 # sin_downward Test "sin_downward (1) == 0.8414709848078965066525023216302989996226": @@ -1095,24 +1499,45 @@ ifloat: 1 Test "sinh_downward (22) == 1792456423.065795780701106568345764104225": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 Test "sinh_downward (23) == 4872401723.124451299966006944252978187305": float: 1 ifloat: 1 +ildouble: 2 +ldouble: 2 Test "sinh_downward (24) == 13244561064.92173614705070540368454568168": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 # sinh_towardzero Test "sinh_towardzero (22) == 1792456423.065795780701106568345764104225": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 Test "sinh_towardzero (23) == 4872401723.124451299966006944252978187305": float: 1 ifloat: 1 +ildouble: 2 +ldouble: 2 Test "sinh_towardzero (24) == 13244561064.92173614705070540368454568168": float: 1 ifloat: 1 +# sinh_upward +Test "sinh_upward (22) == 1792456423.065795780701106568345764104225": +ildouble: 1 +ldouble: 1 +Test "sinh_upward (23) == 4872401723.124451299966006944252978187305": +ildouble: 1 +ldouble: 1 +Test "sinh_upward (24) == 13244561064.92173614705070540368454568168": +ildouble: 1 +ldouble: 1 + # sqrt Test "sqrt (2) == M_SQRT2l": ildouble: 1 @@ -1413,10 +1838,20 @@ Function: "atanh": float: 1 ifloat: 1 -Function: Imaginary part of "cacos": +Function: Real part of "cacos": +double: 1 +idouble: 1 ildouble: 1 ldouble: 1 +Function: Imaginary part of "cacos": +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 3 +ldouble: 3 + Function: Real part of "cacosh": double: 1 float: 7 @@ -1440,8 +1875,12 @@ idouble: 1 ifloat: 1 Function: Imaginary part of "casin": -ildouble: 1 -ldouble: 1 +double: 2 +float: 1 +idouble: 2 +ifloat: 1 +ildouble: 3 +ldouble: 3 Function: Real part of "casinh": double: 5 @@ -1586,10 +2025,22 @@ ldouble: 1 Function: "cosh_downward": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 + +Function: "cosh_tonearest": +ildouble: 1 +ldouble: 1 Function: "cosh_towardzero": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 + +Function: "cosh_upward": +ildouble: 1 +ldouble: 1 Function: Real part of "cpow": double: 2 @@ -1782,6 +2233,8 @@ ifloat: 1 Function: "pow_upward": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 Function: "sin_downward": float: 1 @@ -1818,10 +2271,18 @@ ldouble: 1 Function: "sinh_downward": float: 1 ifloat: 1 +ildouble: 2 +ldouble: 2 Function: "sinh_towardzero": float: 1 ifloat: 1 +ildouble: 2 +ldouble: 2 + +Function: "sinh_upward": +ildouble: 1 +ldouble: 1 Function: "sqrt": ildouble: 1 -- cgit 1.4.1 From cb9d617437084b4ebf02e50c0a82c5dd2582029a Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Sun, 11 Mar 2012 19:41:43 -0700 Subject: Fix typing of the bit twiddling done in _dl_setup_stack_chk_guard. * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard): Fix masking out of the most significant byte of random value used. --- ChangeLog | 3 +++ sysdeps/unix/sysv/linux/dl-osinfo.h | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 85993dce6b..29b7c67e9e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2012-03-11 David S. Miller + * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard): + Fix masking out of the most significant byte of random value used. + * sysdeps/sparc/fpu/libm-test-ulps: Update. 2012-03-10 Andreas Schwab diff --git a/sysdeps/unix/sysv/linux/dl-osinfo.h b/sysdeps/unix/sysv/linux/dl-osinfo.h index 780b20ab6a..1ff8a2f6a2 100644 --- a/sysdeps/unix/sysv/linux/dl-osinfo.h +++ b/sysdeps/unix/sysv/linux/dl-osinfo.h @@ -95,9 +95,9 @@ _dl_setup_stack_chk_guard (void *dl_random) directly and not use the kernel-provided data to seed a PRNG. */ memcpy (ret.bytes, dl_random, sizeof (ret)); #if BYTE_ORDER == LITTLE_ENDIAN - ret.num &= ~0xff; + ret.num &= ~(uintptr_t)0xff; #elif BYTE_ORDER == BIG_ENDIAN - ret.num &= ~(0xff << (8 * (sizeof (ret) - 1))); + ret.num &= ~((uintptr_t)0xff << (8 * (sizeof (ret) - 1))); #else # error "BYTE_ORDER unknown" #endif -- cgit 1.4.1 From a1bcbd4035ac2483dc10da150d4db46f3e1744f8 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Sun, 11 Mar 2012 20:13:55 -0700 Subject: Fix some 64-bit sparc build warnings. * sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c (__makecontext): Fix signedness of pointer casts setting up 'sp'. * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL) Use 'long' for 'resultvar' otherwise things get truncated on 64-bit. --- ChangeLog | 5 +++++ sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c | 4 ++-- sysdeps/unix/sysv/linux/sparc/sysdep.h | 6 +++--- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 29b7c67e9e..7b6bc84be0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2012-03-11 David S. Miller + * sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c + (__makecontext): Fix signedness of pointer casts setting up 'sp'. + * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL) Use 'long' + for 'resultvar' otherwise things get truncated on 64-bit. + * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard): Fix masking out of the most significant byte of random value used. diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c b/sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c index 3bb4e7a28b..e925040d14 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c @@ -29,9 +29,9 @@ __makecontext (ucontext_t *ucp, void (*func) (void), int argc, ...) va_list ap; int i; - sp = (long *) ((long) ucp->uc_stack.ss_sp + ucp->uc_stack.ss_size); + sp = (unsigned long *) ((long) ucp->uc_stack.ss_sp + ucp->uc_stack.ss_size); sp -= (argc > 6 ? argc : 6) + 32; - sp = (long *) (((long) sp) & -16L); + sp = (unsigned long *) (((long) sp) & -16L); topsp = sp + (argc > 6 ? argc : 6) + 16; ucp->uc_mcontext.mc_gregs[MC_PC] = (long) func; diff --git a/sysdeps/unix/sysv/linux/sparc/sysdep.h b/sysdeps/unix/sysv/linux/sparc/sysdep.h index 542e94040c..fc955c236c 100644 --- a/sysdeps/unix/sysv/linux/sparc/sysdep.h +++ b/sysdeps/unix/sysv/linux/sparc/sysdep.h @@ -22,13 +22,13 @@ #undef INLINE_SYSCALL #define INLINE_SYSCALL(name, nr, args...) \ ({ INTERNAL_SYSCALL_DECL(err); \ - unsigned int resultvar = INTERNAL_SYSCALL(name, err, nr, args); \ + unsigned long resultvar = INTERNAL_SYSCALL(name, err, nr, args);\ if (INTERNAL_SYSCALL_ERROR_P (resultvar, err)) \ { \ __set_errno (INTERNAL_SYSCALL_ERRNO (resultvar, err)); \ - resultvar = 0xffffffff; \ + resultvar = (unsigned long) -1; \ } \ - (int) resultvar; \ + (long) resultvar; \ }) #undef INTERNAL_SYSCALL_DECL -- cgit 1.4.1 From b4b2eb5eae714b97d6a4315846e5fec72096806c Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Mon, 12 Mar 2012 15:51:15 -0700 Subject: Add some missing sparc kernel-feature.h entries. * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_CLONE_THREAD_FLAGS): Set on sparc when 2.5.64 and later. (__ASSUME_TGKILL): Set on sparc when 2.6.1 and later, simplify expression. (__ASSUME_FADVISE64_64_SYSCALL): Set on sparc when 2.6.1 and later. --- ChangeLog | 9 +++++++++ sysdeps/unix/sysv/linux/kernel-features.h | 19 ++++++++++--------- 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7b6bc84be0..2d9dd85cf7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2012-03-12 David S. Miller + + * sysdeps/unix/sysv/linux/kernel-features.h + (__ASSUME_CLONE_THREAD_FLAGS): Set on sparc when 2.5.64 and later. + (__ASSUME_TGKILL): Set on sparc when 2.6.1 and later, simplify + expression. + (__ASSUME_FADVISE64_64_SYSCALL): Set on sparc when 2.6.1 and + later. + 2012-03-11 David S. Miller * sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c diff --git a/sysdeps/unix/sysv/linux/kernel-features.h b/sysdeps/unix/sysv/linux/kernel-features.h index 3125be3131..ffaae5d144 100644 --- a/sysdeps/unix/sysv/linux/kernel-features.h +++ b/sysdeps/unix/sysv/linux/kernel-features.h @@ -273,11 +273,11 @@ their availability with one define. The changes were made first for i386 and the have to be done separately for the other archs. For i386 we pick 2.5.50 as the first version with support. - For s390*, PPC, x86-64, and SH we pick 2.5.64 as the first + For s390*, SPARC, PPC, x86-64, and SH we pick 2.5.64 as the first version with support. */ #if ((__LINUX_KERNEL_VERSION >= 132402 && defined __i386__) \ || (__LINUX_KERNEL_VERSION >= 132416 \ - && (defined __s390__ \ + && (defined __s390__ || defined __sparc__ \ || defined __powerpc__ || defined __x86_64__ || defined __sh__))) # define __ASSUME_CLONE_THREAD_FLAGS 1 #endif @@ -322,11 +322,11 @@ #endif /* The tgkill syscall was instroduced for i386 in 2.5.75. On x86-64, - ppc, and ppc64 it was introduced in 2.6.0-test3. */ + sparc, SH, ppc, and ppc64 it was introduced in 2.6.0-test3. */ #if (__LINUX_KERNEL_VERSION >= 132427 && defined __i386__) \ - || (__LINUX_KERNEL_VERSION >= 132609 && defined __x86_64__) \ - || (__LINUX_KERNEL_VERSION >= 132609 && defined __powerpc__) \ - || (__LINUX_KERNEL_VERSION >= 132609 && defined __sh__) + || (__LINUX_KERNEL_VERSION >= 132609 \ + && (defined __x86_64__ || defined __powerpc__ \ + || defined __sh__ || defined __sparc__)) # define __ASSUME_TGKILL 1 #endif @@ -350,9 +350,10 @@ #endif /* The fixed version of the posix_fadvise64 syscall appeared in - 2.6.0-test3. At least for x86. Powerpc support appeared in - 2.6.2, but for 32-bit userspace only. */ -#if (__LINUX_KERNEL_VERSION >= 132609 && defined __i386__) \ + 2.6.0-test3. At least for x86 and sparc. Powerpc support appeared + in 2.6.2, but for 32-bit userspace only. */ +#if (__LINUX_KERNEL_VERSION >= 132609 \ + && (defined __i386__ || defined __sparc__)) \ || (__LINUX_KERNEL_VERSION >= 132610 && defined __powerpc__ \ && !defined __powerpc64__) # define __ASSUME_FADVISE64_64_SYSCALL 1 -- cgit 1.4.1 From 98bb2f1cd2b6eb794ecaf5ce4fcc3c79ee4df3e5 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Mon, 12 Mar 2012 15:57:17 -0700 Subject: Fix another instance of the _dl_random masking bug, plus coding style. * sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Fix masking out of the most significant byte of random value used. * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard): Fix coding style in previous change. --- ChangeLog | 5 +++++ sysdeps/generic/dl-osinfo.h | 4 ++-- sysdeps/unix/sysv/linux/dl-osinfo.h | 4 ++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2d9dd85cf7..e9ea42a673 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2012-03-12 David S. Miller + * sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Fix + masking out of the most significant byte of random value used. + * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard): + Fix coding style in previous change. + * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_CLONE_THREAD_FLAGS): Set on sparc when 2.5.64 and later. (__ASSUME_TGKILL): Set on sparc when 2.6.1 and later, simplify diff --git a/sysdeps/generic/dl-osinfo.h b/sysdeps/generic/dl-osinfo.h index 548fc4666a..983cd557b0 100644 --- a/sysdeps/generic/dl-osinfo.h +++ b/sysdeps/generic/dl-osinfo.h @@ -37,9 +37,9 @@ _dl_setup_stack_chk_guard (void *dl_random) { memcpy (ret.bytes, dl_random, sizeof (ret)); #if BYTE_ORDER == LITTLE_ENDIAN - ret.num &= ~0xff; + ret.num &= ~(uintptr_t) 0xff; #elif BYTE_ORDER == BIG_ENDIAN - ret.num &= ~(0xff << (8 * (sizeof (ret) - 1))); + ret.num &= ~((uintptr_t) 0xff << (8 * (sizeof (ret) - 1))); #else # error "BYTE_ORDER unknown" #endif diff --git a/sysdeps/unix/sysv/linux/dl-osinfo.h b/sysdeps/unix/sysv/linux/dl-osinfo.h index 1ff8a2f6a2..d0f41a7b2c 100644 --- a/sysdeps/unix/sysv/linux/dl-osinfo.h +++ b/sysdeps/unix/sysv/linux/dl-osinfo.h @@ -95,9 +95,9 @@ _dl_setup_stack_chk_guard (void *dl_random) directly and not use the kernel-provided data to seed a PRNG. */ memcpy (ret.bytes, dl_random, sizeof (ret)); #if BYTE_ORDER == LITTLE_ENDIAN - ret.num &= ~(uintptr_t)0xff; + ret.num &= ~(uintptr_t) 0xff; #elif BYTE_ORDER == BIG_ENDIAN - ret.num &= ~((uintptr_t)0xff << (8 * (sizeof (ret) - 1))); + ret.num &= ~((uintptr_t) 0xff << (8 * (sizeof (ret) - 1))); #else # error "BYTE_ORDER unknown" #endif -- cgit 1.4.1 From 09a3453f637006538b45f9da69d1895d26a15473 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Tue, 13 Mar 2012 00:33:58 -0700 Subject: Add missing string.h include for strcpy calls. * nss/nss_db/db-init.c: Include string.h --- ChangeLog | 4 ++++ nss/nss_db/db-init.c | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index e9ea42a673..dc93fce69e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2012-03-13 David S. Miller + + * nss/nss_db/db-init.c: Include string.h + 2012-03-12 David S. Miller * sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Fix diff --git a/nss/nss_db/db-init.c b/nss/nss_db/db-init.c index 906331ae0a..d23e8f81d6 100644 --- a/nss/nss_db/db-init.c +++ b/nss/nss_db/db-init.c @@ -1,5 +1,5 @@ /* Initialization in nss_db module. - Copyright (C) 2011 Free Software Foundation, Inc. + Copyright (C) 2011, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -18,7 +18,7 @@ #include #include - +#include static union { -- cgit 1.4.1 From 5f0bdb18942a9749303ebb17ac8d080872557974 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Tue, 13 Mar 2012 00:43:20 -0700 Subject: Fix warning in Linux openat implementation when __ASSUME_ATFCTS is set. * sysdeps/unix/sysv/linux/openat.c (OPENAT_NOT_CANCEL): Declare syscall 'err' in the ifdef scope in which it is actually used. --- ChangeLog | 3 +++ sysdeps/unix/sysv/linux/openat.c | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index dc93fce69e..906df52dcd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2012-03-13 David S. Miller + * sysdeps/unix/sysv/linux/openat.c (OPENAT_NOT_CANCEL): Declare syscall + 'err' in the ifdef scope in which it is actually used. + * nss/nss_db/db-init.c: Include string.h 2012-03-12 David S. Miller diff --git a/sysdeps/unix/sysv/linux/openat.c b/sysdeps/unix/sysv/linux/openat.c index 11e673fe61..62ea1e3c97 100644 --- a/sysdeps/unix/sysv/linux/openat.c +++ b/sysdeps/unix/sysv/linux/openat.c @@ -84,7 +84,6 @@ OPENAT_NOT_CANCEL (fd, file, oflag, mode) oflag |= MORE_OFLAGS; #endif - INTERNAL_SYSCALL_DECL (err); int res; #ifdef __NR_openat @@ -104,6 +103,7 @@ OPENAT_NOT_CANCEL (fd, file, oflag, mode) #endif #ifndef __ASSUME_ATFCTS + INTERNAL_SYSCALL_DECL (err); char *buf = NULL; if (fd != AT_FDCWD && file[0] != '/') -- cgit 1.4.1 From 10f62770e115d9f16a67a974f79fa9b100cf827b Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Tue, 13 Mar 2012 00:45:34 -0700 Subject: Use correct implementation for dl-fxstatat64 on sparc64. * sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c: New file. --- ChangeLog | 2 ++ sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c | 6 ++++++ 2 files changed, 8 insertions(+) create mode 100644 sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c diff --git a/ChangeLog b/ChangeLog index 906df52dcd..b11f82d24f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,7 @@ 2012-03-13 David S. Miller + * sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c: New file. + * sysdeps/unix/sysv/linux/openat.c (OPENAT_NOT_CANCEL): Declare syscall 'err' in the ifdef scope in which it is actually used. diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c b/sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c new file mode 100644 index 0000000000..339e5f4335 --- /dev/null +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c @@ -0,0 +1,6 @@ +/* In this implementation we do not really care whether the call fails + because of missing kernel support since we do not even call the + function in this case. */ +#undef __ASSUME_ATFCTS +#define __ASSUME_ATFCTS 1 +#include "fxstatat.c" -- cgit 1.4.1 From 2a8ab7f26591053136bc17be34499db5c64e89d6 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Tue, 13 Mar 2012 00:31:48 -0700 Subject: Fix generic ldbl-128 expm1l just like x86-64 and i386 variants were. * sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Use expl for large parameters. --- ChangeLog | 3 +++ sysdeps/ieee754/ldbl-128/s_expm1l.c | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/ChangeLog b/ChangeLog index b11f82d24f..57046513ed 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2012-03-13 David S. Miller + * sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Use expl for + large parameters. + * sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c: New file. * sysdeps/unix/sysv/linux/openat.c (OPENAT_NOT_CANCEL): Declare syscall diff --git a/sysdeps/ieee754/ldbl-128/s_expm1l.c b/sysdeps/ieee754/ldbl-128/s_expm1l.c index 17769dd6a3..ea63501819 100644 --- a/sysdeps/ieee754/ldbl-128/s_expm1l.c +++ b/sysdeps/ieee754/ldbl-128/s_expm1l.c @@ -102,6 +102,11 @@ __expm1l (long double x) ix = u.parts32.w0; sign = ix & 0x80000000; ix &= 0x7fffffff; + if (!sign && ix >= 0x40060000) + { + /* If num is positive and exp >= 6 use plain exp. */ + return __expl (x); + } if (ix >= 0x7fff0000) { /* Infinity. */ -- cgit 1.4.1 From 8e59da90ce7ef7b4226b9516116353cfceb5bb1c Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Tue, 13 Mar 2012 03:09:00 -0700 Subject: Remove no longer needed assembler offset generation on sparc. * sysdeps/sparc/Makefile: Remove rtld-global-offsets.sym handling. * sysdeps/sparc/elf/rtld-global-offsets.sym: Delete. * sysdeps/sparc/sparc64/multiarch/memcpy.S: Don't include rtld-global-offsets.h * sysdeps/sparc/sparc64/multiarch/memset.S: Likewise. --- ChangeLog | 6 ++++++ sysdeps/sparc/Makefile | 2 -- sysdeps/sparc/elf/rtld-global-offsets.sym | 7 ------- sysdeps/sparc/sparc64/multiarch/memcpy.S | 1 - sysdeps/sparc/sparc64/multiarch/memset.S | 1 - 5 files changed, 6 insertions(+), 11 deletions(-) delete mode 100644 sysdeps/sparc/elf/rtld-global-offsets.sym diff --git a/ChangeLog b/ChangeLog index 57046513ed..391bb6050f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 2012-03-13 David S. Miller + * sysdeps/sparc/Makefile: Remove rtld-global-offsets.sym handling. + * sysdeps/sparc/elf/rtld-global-offsets.sym: Delete. + * sysdeps/sparc/sparc64/multiarch/memcpy.S: Don't include + rtld-global-offsets.h + * sysdeps/sparc/sparc64/multiarch/memset.S: Likewise. + * sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Use expl for large parameters. diff --git a/sysdeps/sparc/Makefile b/sysdeps/sparc/Makefile index 45609d55f1..1dd70e8b55 100644 --- a/sysdeps/sparc/Makefile +++ b/sysdeps/sparc/Makefile @@ -12,8 +12,6 @@ CPPFLAGS += -DHAVE_SPINLOCKS=1 -DHAVE_ASSEM_SPARC_GCC=1 endif ifeq ($(subdir),csu) -# get offset to rtld_global._dl_hwcap -gen-as-const-headers += rtld-global-offsets.sym CPPFLAGS-crti.S += -fPIC CPPFLAGS-crtn.S += -fPIC endif diff --git a/sysdeps/sparc/elf/rtld-global-offsets.sym b/sysdeps/sparc/elf/rtld-global-offsets.sym deleted file mode 100644 index ff4e97f2a6..0000000000 --- a/sysdeps/sparc/elf/rtld-global-offsets.sym +++ /dev/null @@ -1,7 +0,0 @@ -#define SHARED 1 - -#include - -#define rtld_global_ro_offsetof(mem) offsetof (struct rtld_global_ro, mem) - -RTLD_GLOBAL_RO_DL_HWCAP_OFFSET rtld_global_ro_offsetof (_dl_hwcap) diff --git a/sysdeps/sparc/sparc64/multiarch/memcpy.S b/sysdeps/sparc/sparc64/multiarch/memcpy.S index 739687f3b8..36c488672d 100644 --- a/sysdeps/sparc/sparc64/multiarch/memcpy.S +++ b/sysdeps/sparc/sparc64/multiarch/memcpy.S @@ -18,7 +18,6 @@ . */ #include -#include #if !defined NOT_IN_libc .text diff --git a/sysdeps/sparc/sparc64/multiarch/memset.S b/sysdeps/sparc/sparc64/multiarch/memset.S index 13533450c2..c717f0c9a5 100644 --- a/sysdeps/sparc/sparc64/multiarch/memset.S +++ b/sysdeps/sparc/sparc64/multiarch/memset.S @@ -18,7 +18,6 @@ . */ #include -#include #if !defined NOT_IN_libc .text -- cgit 1.4.1 From f453b98b6bf698ddb4d49cd3dc0f94d2da2a8968 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Tue, 13 Mar 2012 14:12:44 +0000 Subject: Clean up dbl-64 rint, nearbyint. --- ChangeLog | 9 +++++++ sysdeps/ieee754/dbl-64/s_nearbyint.c | 33 +++--------------------- sysdeps/ieee754/dbl-64/s_rint.c | 33 +++--------------------- sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c | 12 --------- sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c | 12 --------- 5 files changed, 15 insertions(+), 84 deletions(-) diff --git a/ChangeLog b/ChangeLog index 391bb6050f..b8f1fe53ca 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2012-03-13 Joseph Myers + + * sysdeps/ieee754/dbl-64/s_nearbyint.c (__nearbyint): Do not + manipulate bits before adding and subtracting TWO52[sx]. + * sysdeps/ieee754/dbl-64/s_rint.c (__rint): Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c (__nearbyint): + Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c (__rint): Likewise. + 2012-03-13 David S. Miller * sysdeps/sparc/Makefile: Remove rtld-global-offsets.sym handling. diff --git a/sysdeps/ieee754/dbl-64/s_nearbyint.c b/sysdeps/ieee754/dbl-64/s_nearbyint.c index d780150a90..60afafdedd 100644 --- a/sysdeps/ieee754/dbl-64/s_nearbyint.c +++ b/sysdeps/ieee754/dbl-64/s_nearbyint.c @@ -38,18 +38,12 @@ double __nearbyint(double x) { fenv_t env; int32_t i0,j0,sx; - u_int32_t i,i1; double w,t; - EXTRACT_WORDS(i0,i1,x); + GET_HIGH_WORD(i0,x); sx = (i0>>31)&1; j0 = ((i0>>20)&0x7ff)-0x3ff; - if(j0<20) { + if(j0<52) { if(j0<0) { - if(((i0&0x7fffffff)|i1)==0) return x; - i1 |= (i0&0x0fffff); - i0 &= 0xfffe0000; - i0 |= ((i1|-i1)>>12)&0x80000; - SET_HIGH_WORD(x,i0); feholdexcept (&env); w = TWO52[sx]+x; t = w-TWO52[sx]; @@ -57,32 +51,11 @@ double __nearbyint(double x) GET_HIGH_WORD(i0,t); SET_HIGH_WORD(t,(i0&0x7fffffff)|(sx<<31)); return t; - } else { - i = (0x000fffff)>>j0; - if(((i0&i)|i1)==0) return x; /* x is integral */ - i>>=1; - if(((i0&i)|i1)!=0) { - if (j0==19) - i1 = 0x40000000; - else if (j0<18) - i0 = (i0&(~i))|((0x20000)>>j0); - else - { - i0 &= ~i; - i1 = 0x80000000; - } - } } - } else if (j0>51) { + } else { if(j0==0x400) return x+x; /* inf or NaN */ else return x; /* x is integral */ - } else { - i = ((u_int32_t)(0xffffffff))>>(j0-20); - if((i1&i)==0) return x; /* x is integral */ - i>>=1; - if((i1&i)!=0) i1 = (i1&(~i))|((0x40000000)>>(j0-20)); } - INSERT_WORDS(x,i0,i1); feholdexcept (&env); w = TWO52[sx]+x; t = w-TWO52[sx]; diff --git a/sysdeps/ieee754/dbl-64/s_rint.c b/sysdeps/ieee754/dbl-64/s_rint.c index c45d7848d7..8458909165 100644 --- a/sysdeps/ieee754/dbl-64/s_rint.c +++ b/sysdeps/ieee754/dbl-64/s_rint.c @@ -33,49 +33,22 @@ double __rint(double x) { int32_t i0,j0,sx; - u_int32_t i,i1; double w,t; - EXTRACT_WORDS(i0,i1,x); + GET_HIGH_WORD(i0,x); sx = (i0>>31)&1; j0 = ((i0>>20)&0x7ff)-0x3ff; - if(j0<20) { + if(j0<52) { if(j0<0) { - if(((i0&0x7fffffff)|i1)==0) return x; - i1 |= (i0&0x0fffff); - i0 &= 0xfffe0000; - i0 |= ((i1|-i1)>>12)&0x80000; - SET_HIGH_WORD(x,i0); w = TWO52[sx]+x; t = w-TWO52[sx]; GET_HIGH_WORD(i0,t); SET_HIGH_WORD(t,(i0&0x7fffffff)|(sx<<31)); return t; - } else { - i = (0x000fffff)>>j0; - if(((i0&i)|i1)==0) return x; /* x is integral */ - i>>=1; - if(((i0&i)|i1)!=0) { - if (j0==19) - i1 = 0x40000000; - else if (j0<18) - i0 = (i0&(~i))|((0x20000)>>j0); - else - { - i0 &= ~i; - i1 = 0x80000000; - } - } } - } else if (j0>51) { + } else { if(j0==0x400) return x+x; /* inf or NaN */ else return x; /* x is integral */ - } else { - i = ((u_int32_t)(0xffffffff))>>(j0-20); - if((i1&i)==0) return x; /* x is integral */ - i>>=1; - if((i1&i)!=0) i1 = (i1&(~i))|((0x40000000)>>(j0-20)); } - INSERT_WORDS(x,i0,i1); w = TWO52[sx]+x; return w-TWO52[sx]; } diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c index a3809984e2..a58a6202ef 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c @@ -41,29 +41,17 @@ __nearbyint(double x) j0 = ((i0>>52)&0x7ff)-0x3ff; if(__builtin_expect(j0<52, 1)) { if(j0<0) { - if((i0&UINT64_C(0x7fffffffffffffff))==0) return x; - uint64_t i = i0 & UINT64_C(0xfffffffffffff); - i0 &= UINT64_C(0xfffe000000000000); - i0 |= (((i|-i) >> 12) & UINT64_C(0x8000000000000)); - INSERT_WORDS64(x,i0); libc_feholdexcept (&env); double w = TWO52[sx]+x; double t = w-TWO52[sx]; math_opt_barrier(t); libc_fesetenv (&env); return copysign(t, x); - } else { - uint64_t i = UINT64_C(0x000fffffffffffff)>>j0; - if((i0&i)==0) return x; /* x is integral */ - i>>=1; - if((i0&i)!=0) - i0 = (i0&(~i))|(UINT64_C(0x4000000000000)>>j0); } } else { if(j0==0x400) return x+x; /* inf or NaN */ else return x; /* x is integral */ } - INSERT_WORDS64(x,i0); libc_feholdexcept (&env); double w = TWO52[sx]+x; double t = w-TWO52[sx]; diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c index 20eef3c5ea..87b2339d43 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c @@ -38,28 +38,16 @@ __rint(double x) j0 = ((i0>>52)&0x7ff)-0x3ff; if(j0<52) { if(j0<0) { - if((i0 & UINT64_C(0x7fffffffffffffff))==0) return x; - uint64_t i = i0 & UINT64_C(0xfffffffffffff); - i0 &= UINT64_C(0xfffe000000000000); - i0 |= (((i|-i) >> 12) & UINT64_C(0x8000000000000)); - INSERT_WORDS64(x,i0); double w = TWO52[sx]+x; double t = w-TWO52[sx]; EXTRACT_WORDS64(i0,t); INSERT_WORDS64(t,(i0&UINT64_C(0x7fffffffffffffff))|(sx<<63)); return t; - } else { - uint64_t i = UINT64_C(0x000fffffffffffff)>>j0; - if((i0&i)==0) return x; /* x is integral */ - i>>=1; - if((i0&i)!=0) - i0 = (i0&(~i))|(UINT64_C(0x4000000000000)>>j0); } } else { if(j0==0x400) return x+x; /* inf or NaN */ else return x; /* x is integral */ } - INSERT_WORDS64(x,i0); double w = TWO52[sx]+x; return w-TWO52[sx]; } -- cgit 1.4.1 From 7c10fd3515f983ca732b2166ccffebbf83603f1f Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Tue, 13 Mar 2012 18:08:58 -0700 Subject: Fix hypotf overflow/underflow by using double precision instead of scaling. [BZ #13840] * sysdeps/ieee754/flt-32/e_hypotf.c (__ieee754_hypotf): Rewrite to use double-precision for the calculation instead of scaling. --- ChangeLog | 6 +++ sysdeps/ieee754/flt-32/e_hypotf.c | 77 +++++++++++++-------------------------- 2 files changed, 31 insertions(+), 52 deletions(-) diff --git a/ChangeLog b/ChangeLog index b8f1fe53ca..b65f68af6b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2012-03-13 David S. Miller + + [BZ #13840] + * sysdeps/ieee754/flt-32/e_hypotf.c (__ieee754_hypotf): Rewrite to use + double-precision for the calculation instead of scaling. + 2012-03-13 Joseph Myers * sysdeps/ieee754/dbl-64/s_nearbyint.c (__nearbyint): Do not diff --git a/sysdeps/ieee754/flt-32/e_hypotf.c b/sysdeps/ieee754/flt-32/e_hypotf.c index 97e7d34b64..8f499b5fde 100644 --- a/sysdeps/ieee754/flt-32/e_hypotf.c +++ b/sysdeps/ieee754/flt-32/e_hypotf.c @@ -19,62 +19,35 @@ float __ieee754_hypotf(float x, float y) { - float a,b,t1,t2,y1,y2,w; - int32_t j,k,ha,hb; + double d_x, d_y; + int32_t ha, hb; GET_FLOAT_WORD(ha,x); ha &= 0x7fffffff; GET_FLOAT_WORD(hb,y); hb &= 0x7fffffff; - if(hb > ha) {a=y;b=x;j=ha; ha=hb;hb=j;} else {a=x;b=y;} - SET_FLOAT_WORD(a,ha); /* a <- |a| */ - SET_FLOAT_WORD(b,hb); /* b <- |b| */ - if((ha-hb)>0xf000000) {return a+b;} /* x/y > 2**30 */ - k=0; - if(__builtin_expect(ha > 0x58800000, 0)) { /* a>2**50 */ - if(ha >= 0x7f800000) { /* Inf or NaN */ - w = a+b; /* for sNaN */ - if(ha == 0x7f800000) w = a; - if(hb == 0x7f800000) w = b; - return w; - } - /* scale a and b by 2**-60 */ - ha -= 0x1e000000; hb -= 0x1e000000; k += 60; - SET_FLOAT_WORD(a,ha); - SET_FLOAT_WORD(b,hb); - } - if(__builtin_expect(hb < 0x26800000, 0)) { /* b < 2**-50 */ - if(hb <= 0x007fffff) { /* subnormal b or 0 */ - if(hb==0) return a; - SET_FLOAT_WORD(t1,0x7e800000); /* t1=2^126 */ - b *= t1; - a *= t1; - k -= 126; - } else { /* scale a and b by 2^60 */ - ha += 0x1e000000; /* a *= 2^60 */ - hb += 0x1e000000; /* b *= 2^60 */ - k -= 60; - SET_FLOAT_WORD(a,ha); - SET_FLOAT_WORD(b,hb); - } - } - /* medium size a and b */ - w = a-b; - if (w>b) { - SET_FLOAT_WORD(t1,ha&0xfffff000); - t2 = a-t1; - w = __ieee754_sqrtf(t1*t1-(b*(-b)-t2*(a+t1))); - } else { - a = a+a; - SET_FLOAT_WORD(y1,hb&0xfffff000); - y2 = b - y1; - SET_FLOAT_WORD(t1,ha+0x00800000); - t2 = a - t1; - w = __ieee754_sqrtf(t1*y1-(w*(-w)-(t1*y2+t2*b))); - } - if(k!=0) { - SET_FLOAT_WORD(t1,0x3f800000+(k<<23)); - return t1*w; - } else return w; + if (ha == 0x7f800000) + { + if (x == y) + return fabsf(y); + return fabsf(x); + } + else if (hb == 0x7f800000) + { + if (x == y) + return fabsf(x); + return fabsf(y); + } + else if (ha > 0x7f800000 || hb > 0x7f800000) + return fabsf(x) * fabsf(y); + else if (ha == 0) + return fabsf(y); + else if (hb == 0) + return fabsf(x); + + d_x = (double) x; + d_y = (double) y; + + return (float) __ieee754_sqrt(d_x * d_x + d_y * d_y); } strong_alias (__ieee754_hypotf, __hypotf_finite) -- cgit 1.4.1 From aa4a2ae1dbc2c7a3469ec13610f0d7a84e3bfc79 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Wed, 14 Mar 2012 01:12:05 +0000 Subject: Add tests for hypot overflow/underflow. --- ChangeLog | 5 +++++ math/libm-test.inc | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/ChangeLog b/ChangeLog index b65f68af6b..2915e96ad9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2012-03-14 Joseph Myers + + [BZ #13840] + * math/libm-test.inc (hypot_test): Add more tests. + 2012-03-13 David S. Miller [BZ #13840] diff --git a/math/libm-test.inc b/math/libm-test.inc index 39cda6663c..191f35959b 100644 --- a/math/libm-test.inc +++ b/math/libm-test.inc @@ -3557,6 +3557,19 @@ hypot_test (void) TEST_ff_f (hypot, 0.75L, 1.25L, 1.45773797371132511771853821938639577L); +#if !(defined TEST_FLOAT && defined TEST_INLINE) + TEST_ff_f (hypot, 0x3p125L, 0x4p125L, 0x5p125L); + TEST_ff_f (hypot, 0x1.234566p-126L, 0x1.234566p-126L, 1.891441686191081936598531534017449451173e-38L); +#endif + +#ifndef TEST_FLOAT + TEST_ff_f (hypot, 0x3p1021L, 0x4p1021L, 0x5p1021L); +#endif + +#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384 && !defined TEST_INLINE + TEST_ff_f (hypot, 0x3p16381L, 0x4p16381L, 0x5p16381L); +#endif + END (hypot); } -- cgit 1.4.1 From 6278569b6c1ee1b6e2b36af059e699233da0b88b Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Wed, 14 Mar 2012 01:18:57 +0000 Subject: Add 13840 to NEWS. --- NEWS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NEWS b/NEWS index b6cd0a97cb..ea56e6d832 100644 --- a/NEWS +++ b/NEWS @@ -14,7 +14,7 @@ Version 2.16 10210, 10545, 10716, 11174, 11322, 11365, 11494, 12047, 13058, 13525, 13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551, 13552, 13553, 13555, 13559, 13566, 13583, 13618, 13637, 13656, 13673, - 13695, 13704, 13706, 13726, 13738, 13786, 13792, 13806 + 13695, 13704, 13706, 13726, 13738, 13786, 13792, 13806, 13840 * ISO C11 support: -- cgit 1.4.1 From e456826d7a539fb322bb9719297bd386eded8e32 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Wed, 14 Mar 2012 11:53:32 +0000 Subject: Fix csqrt overflow/underflow (bug 13841). --- ChangeLog | 9 +++++++++ NEWS | 2 +- math/libm-test.inc | 18 ++++++++++++++++++ math/s_csqrt.c | 26 ++++++++++++++++++++++++-- math/s_csqrtf.c | 26 ++++++++++++++++++++++++-- math/s_csqrtl.c | 26 ++++++++++++++++++++++++-- sysdeps/i386/fpu/libm-test-ulps | 24 ++++++++++++++++++++++++ sysdeps/x86_64/fpu/libm-test-ulps | 39 +++++++++++++++++++++++++++++++++++++++ 8 files changed, 163 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2915e96ad9..41355aeec7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,14 @@ 2012-03-14 Joseph Myers + [BZ #13841] + * math/s_csqrt.c: Include . + (__csqrt): Scale large or subnormal inputs. + * math/s_csqrtf.c: Likewise. + * math/s_csqrtl.c: Likewise. + * math/libm-test.inc (csqrt_test): Add more tests. + * sysdeps/i386/fpu/libm-test-ulps: Update. + * sysdeps/x86_64/fpu/libm-test-ulps: Likewise. + [BZ #13840] * math/libm-test.inc (hypot_test): Add more tests. diff --git a/NEWS b/NEWS index ea56e6d832..2f38ad0307 100644 --- a/NEWS +++ b/NEWS @@ -14,7 +14,7 @@ Version 2.16 10210, 10545, 10716, 11174, 11322, 11365, 11494, 12047, 13058, 13525, 13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551, 13552, 13553, 13555, 13559, 13566, 13583, 13618, 13637, 13656, 13673, - 13695, 13704, 13706, 13726, 13738, 13786, 13792, 13806, 13840 + 13695, 13704, 13706, 13726, 13738, 13786, 13792, 13806, 13840, 13841 * ISO C11 support: diff --git a/math/libm-test.inc b/math/libm-test.inc index 191f35959b..caa3ba414d 100644 --- a/math/libm-test.inc +++ b/math/libm-test.inc @@ -2657,6 +2657,24 @@ csqrt_test (void) part). */ TEST_c_c (csqrt, 0, -1, M_SQRT_2_2, -M_SQRT_2_2); + TEST_c_c (csqrt, 0x1.fffffep+127L, 0x1.fffffep+127L, 2.026714405498316804978751017492482558075e+19L, 8.394925938143272988211878516208015586281e+18L); + TEST_c_c (csqrt, 0x1.fffffep+127L, 1.0L, 1.844674352395372953599975585936590505260e+19L, 2.710505511993121390769065968615872097053e-20L); + TEST_c_c (csqrt, 0x1p-149L, 0x1p-149L, 4.112805464342778798097003462770175200803e-23L, 1.703579802732953750368659735601389709551e-23L); + TEST_c_c (csqrt, 0x1p-147L, 0x1p-147L, 8.225610928685557596194006925540350401606e-23L, 3.407159605465907500737319471202779419102e-23L); + +#ifndef TEST_FLOAT + TEST_c_c (csqrt, 0x1.fffffffffffffp+1023L, 0x1.fffffffffffffp+1023L, 1.473094556905565378990473658199034571917e+154L, 6.101757441282702188537080005372547713595e+153L); + TEST_c_c (csqrt, 0x1.fffffffffffffp+1023L, 0x1p+1023L, 1.379778091031440685006200821918878702861e+154L, 3.257214233483129514781233066898042490248e+153L); + TEST_c_c (csqrt, 0x1p-1074L, 0x1p-1074L, 2.442109726130830256743814843868934877597e-162L, 1.011554969366634726113090867589031782487e-162L); + TEST_c_c (csqrt, 0x1p-1073L, 0x1p-1073L, 3.453664695497464982856905711457966660085e-162L, 1.430554756764195530630723976279903095110e-162L); +#endif + +#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384 + TEST_c_c (csqrt, 0x1.fp+16383L, 0x1.fp+16383L, 1.179514222452201722651836720466795901016e+2466L, 4.885707879516577666702435054303191575148e+2465L); + TEST_c_c (csqrt, 0x1.fp+16383L, 0x1p+16383L, 1.106698967236475180613254276996359485630e+2466L, 2.687568007603946993388538156299100955642e+2465L); + TEST_c_c (csqrt, 0x1p-16440L, 0x1p-16441L, 3.514690655930285351254618340783294558136e-2475L, 8.297059146828716918029689466551384219370e-2476L); +#endif + END (csqrt, complex); } diff --git a/math/s_csqrt.c b/math/s_csqrt.c index 76585e889c..002ea5fdc2 100644 --- a/math/s_csqrt.c +++ b/math/s_csqrt.c @@ -1,5 +1,5 @@ /* Complex square root of double value. - Copyright (C) 1997, 1998, 2005, 2011 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Based on an algorithm by Stephen L. Moshier . Contributed by Ulrich Drepper , 1997. @@ -21,7 +21,7 @@ #include #include #include - +#include __complex__ double __csqrt (__complex__ double x) @@ -83,6 +83,22 @@ __csqrt (__complex__ double x) else { double d, r, s; + int scale = 0; + + if (fabs (__real__ x) > DBL_MAX / 2.0 + || fabs (__imag__ x) > DBL_MAX / 2.0) + { + scale = 1; + __real__ x = __scalbn (__real__ x, -2 * scale); + __imag__ x = __scalbn (__imag__ x, -2 * scale); + } + else if (fabs (__real__ x) < DBL_MIN + && fabs (__imag__ x) < DBL_MIN) + { + scale = -(DBL_MANT_DIG / 2); + __real__ x = __scalbn (__real__ x, -2 * scale); + __imag__ x = __scalbn (__imag__ x, -2 * scale); + } d = __ieee754_hypot (__real__ x, __imag__ x); /* Use the identity 2 Re res Im res = Im x @@ -98,6 +114,12 @@ __csqrt (__complex__ double x) r = fabs ((0.5 * __imag__ x) / s); } + if (scale) + { + r = __scalbn (r, scale); + s = __scalbn (s, scale); + } + __real__ res = r; __imag__ res = __copysign (s, __imag__ x); } diff --git a/math/s_csqrtf.c b/math/s_csqrtf.c index d9949c685b..6539ba2249 100644 --- a/math/s_csqrtf.c +++ b/math/s_csqrtf.c @@ -1,5 +1,5 @@ /* Complex square root of float value. - Copyright (C) 1997, 1998, 2005, 2011 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Based on an algorithm by Stephen L. Moshier . Contributed by Ulrich Drepper , 1997. @@ -21,7 +21,7 @@ #include #include #include - +#include __complex__ float __csqrtf (__complex__ float x) @@ -83,6 +83,22 @@ __csqrtf (__complex__ float x) else { float d, r, s; + int scale = 0; + + if (fabsf (__real__ x) > FLT_MAX / 2.0f + || fabsf (__imag__ x) > FLT_MAX / 2.0f) + { + scale = 1; + __real__ x = __scalbnf (__real__ x, -2 * scale); + __imag__ x = __scalbnf (__imag__ x, -2 * scale); + } + else if (fabsf (__real__ x) < FLT_MIN + && fabsf (__imag__ x) < FLT_MIN) + { + scale = -(FLT_MANT_DIG / 2); + __real__ x = __scalbnf (__real__ x, -2 * scale); + __imag__ x = __scalbnf (__imag__ x, -2 * scale); + } d = __ieee754_hypotf (__real__ x, __imag__ x); /* Use the identity 2 Re res Im res = Im x @@ -98,6 +114,12 @@ __csqrtf (__complex__ float x) r = fabsf ((0.5f * __imag__ x) / s); } + if (scale) + { + r = __scalbnf (r, scale); + s = __scalbnf (s, scale); + } + __real__ res = r; __imag__ res = __copysignf (s, __imag__ x); } diff --git a/math/s_csqrtl.c b/math/s_csqrtl.c index 0c624c7a73..64332f67b2 100644 --- a/math/s_csqrtl.c +++ b/math/s_csqrtl.c @@ -1,5 +1,5 @@ /* Complex square root of long double value. - Copyright (C) 1997, 1998, 2005, 2011 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Based on an algorithm by Stephen L. Moshier . Contributed by Ulrich Drepper , 1997. @@ -21,7 +21,7 @@ #include #include #include - +#include __complex__ long double __csqrtl (__complex__ long double x) @@ -83,6 +83,22 @@ __csqrtl (__complex__ long double x) else { long double d, r, s; + int scale = 0; + + if (fabsl (__real__ x) > LDBL_MAX / 2.0L + || fabsl (__imag__ x) > LDBL_MAX / 2.0L) + { + scale = 1; + __real__ x = __scalbnl (__real__ x, -2 * scale); + __imag__ x = __scalbnl (__imag__ x, -2 * scale); + } + else if (fabsl (__real__ x) < LDBL_MIN + && fabsl (__imag__ x) < LDBL_MIN) + { + scale = -(LDBL_MANT_DIG / 2); + __real__ x = __scalbnl (__real__ x, -2 * scale); + __imag__ x = __scalbnl (__imag__ x, -2 * scale); + } d = __ieee754_hypotl (__real__ x, __imag__ x); /* Use the identity 2 Re res Im res = Im x @@ -98,6 +114,12 @@ __csqrtl (__complex__ long double x) r = fabsl ((0.5L * __imag__ x) / s); } + if (scale) + { + r = __scalbnl (r, scale); + s = __scalbnl (s, scale); + } + __real__ res = r; __imag__ res = __copysignl (s, __imag__ x); } diff --git a/sysdeps/i386/fpu/libm-test-ulps b/sysdeps/i386/fpu/libm-test-ulps index 977a3abd14..2e86ff6234 100644 --- a/sysdeps/i386/fpu/libm-test-ulps +++ b/sysdeps/i386/fpu/libm-test-ulps @@ -805,6 +805,26 @@ Test "Imaginary part of: csinh (0.75 + 1.25 i) == 0.2592948545511627791533498306 float: 1 ifloat: 1 +# csqrt +Test "Imaginary part of: csqrt (0x1.fffffffffffffp+1023 + 0x1p+1023 i) == 1.379778091031440685006200821918878702861e+154 + 3.257214233483129514781233066898042490248e+153 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: csqrt (0x1.fp+16383 + 0x1.fp+16383 i) == 1.179514222452201722651836720466795901016e+2466 + 4.885707879516577666702435054303191575148e+2465 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: csqrt (0x1p-1073 + 0x1p-1073 i) == 3.453664695497464982856905711457966660085e-162 + 1.430554756764195530630723976279903095110e-162 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: csqrt (0x1p-1074 + 0x1p-1074 i) == 2.442109726130830256743814843868934877597e-162 + 1.011554969366634726113090867589031782487e-162 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: csqrt (0x1p-147 + 0x1p-147 i) == 8.225610928685557596194006925540350401606e-23 + 3.407159605465907500737319471202779419102e-23 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: csqrt (0x1p-149 + 0x1p-149 i) == 4.112805464342778798097003462770175200803e-23 + 1.703579802732953750368659735601389709551e-23 i": +ildouble: 1 +ldouble: 1 + # ctan Test "Real part of: ctan (-2 - 3 i) == 0.376402564150424829275122113032269084e-2 - 1.00323862735360980144635859782192726 i": double: 1 @@ -2054,6 +2074,10 @@ ifloat: 1 ildouble: 2 ldouble: 2 +Function: Imaginary part of "csqrt": +ildouble: 1 +ldouble: 1 + Function: Real part of "ctan": double: 1 idouble: 1 diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps index 867e8dd41f..33efe9df51 100644 --- a/sysdeps/x86_64/fpu/libm-test-ulps +++ b/sysdeps/x86_64/fpu/libm-test-ulps @@ -848,6 +848,35 @@ ifloat: 1 Test "Real part of: csqrt (-2 - 3 i) == 0.89597747612983812471573375529004348 - 1.6741492280355400404480393008490519 i": float: 1 ifloat: 1 +Test "Imaginary part of: csqrt (0x1.fffffep+127 + 1.0 i) == 1.844674352395372953599975585936590505260e+19 + 2.710505511993121390769065968615872097053e-20 i": +float: 1 +ifloat: 1 +Test "Real part of: csqrt (0x1.fffffffffffffp+1023 + 0x1.fffffffffffffp+1023 i) == 1.473094556905565378990473658199034571917e+154 + 6.101757441282702188537080005372547713595e+153 i": +double: 1 +idouble: 1 +Test "Imaginary part of: csqrt (0x1.fffffffffffffp+1023 + 0x1.fffffffffffffp+1023 i) == 1.473094556905565378990473658199034571917e+154 + 6.101757441282702188537080005372547713595e+153 i": +double: 1 +idouble: 1 +Test "Imaginary part of: csqrt (0x1.fffffffffffffp+1023 + 0x1p+1023 i) == 1.379778091031440685006200821918878702861e+154 + 3.257214233483129514781233066898042490248e+153 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: csqrt (0x1.fp+16383 + 0x1.fp+16383 i) == 1.179514222452201722651836720466795901016e+2466 + 4.885707879516577666702435054303191575148e+2465 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: csqrt (0x1p-1073 + 0x1p-1073 i) == 3.453664695497464982856905711457966660085e-162 + 1.430554756764195530630723976279903095110e-162 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: csqrt (0x1p-1074 + 0x1p-1074 i) == 2.442109726130830256743814843868934877597e-162 + 1.011554969366634726113090867589031782487e-162 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: csqrt (0x1p-147 + 0x1p-147 i) == 8.225610928685557596194006925540350401606e-23 + 3.407159605465907500737319471202779419102e-23 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: csqrt (0x1p-149 + 0x1p-149 i) == 4.112805464342778798097003462770175200803e-23 + 1.703579802732953750368659735601389709551e-23 i": +ildouble: 1 +ldouble: 1 # ctan Test "Real part of: ctan (-2 - 3 i) == 0.376402564150424829275122113032269084e-2 - 1.00323862735360980144635859782192726 i": @@ -2033,8 +2062,18 @@ ildouble: 2 ldouble: 2 Function: Real part of "csqrt": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 + +Function: Imaginary part of "csqrt": +double: 1 float: 1 +idouble: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 Function: Real part of "ctan": double: 1 -- cgit 1.4.1