mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-05 19:35:52 +03:00
Update.
1997-03-17 04:00 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libmieee754/w_atan2.c: Don't ignore exception if library type is SVID. * sysdeps/libmieee754/w_atan2f.c: Likewise. * sysdeps/libmieee754/w_atan2l.c: Likewise. * sysdeps/unix/sysv/linux/sys/mman.h (msync): Add descrption for FLAGS parameter. 1997-03-16 20:28 Philip Blundell <phil@london.uk.eu.org> * sysdeps/unix/sysv/linux/socketbits.h: Add more SOL_ values. Change msg_iovlen and msg_controllen (in struct msghdr) to `size_t' to keep in step with kernel. * manual/examples/dir2.c: New example for scandir. * math/test/float.c: New file. Frontend for float tests. * math/test/double.c: New file. Frontend for double tests. * math/test/longdouble.c: New file. Frontend for long double tests. * sysdeps/ieee754/huge_val.h: Remove definition of long double * sysdeps/libm-i387/s_scalbn.S: Likewise. * sysdeps/libm-i387/s_scalbnf.S: Likewise. * sysdeps/libm-i387/s_scalbnl.S: Likewise. * sysdeps/libm-i387/s_expm1.S: Change return value for -inf * sysdeps/libm-i387/s_expm1f.S: Likewise. * sysdeps/libm-i387/s_expm1l.S: Likewise. * sysdeps/libm-i387/s_isinfl.c: Return -1 for -inf. * sysdeps/libm-i387/s_logbl.S: Correct return value. Discard first * sysdeps/libm-ieee754/w_powf.c: Likewise. * sysdeps/libm-ieee754/w_powl.c: Likewise. * sysdeps/unix/sysv/linux/alpha/statbuf.h: Likewise. * nss/nss_files/files-hosts.c: Likewise. Based on a patch by H.J. Lu <hjl@gnu.ai.mit.edu>. * nis/ypclnt.c (__yp_bind): Fix possible buffer overflow. * posix/unistd.h: Add prototype for __euidaccess. * sysdeps/stub/euidaccess.c: Likewise.
This commit is contained in:
55
ChangeLog
55
ChangeLog
@@ -1,12 +1,30 @@
|
|||||||
|
1997-03-17 04:00 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
|
* sysdeps/libmieee754/w_atan2.c: Don't ignore exception if library
|
||||||
|
type is SVID.
|
||||||
|
* sysdeps/libmieee754/w_atan2f.c: Likewise.
|
||||||
|
* sysdeps/libmieee754/w_atan2l.c: Likewise.
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/sys/mman.h (msync): Add descrption for
|
||||||
|
FLAGS parameter.
|
||||||
|
|
||||||
|
1997-03-16 20:28 Philip Blundell <phil@london.uk.eu.org>
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/socketbits.h: Add more SOL_ values.
|
||||||
|
Change msg_iovlen and msg_controllen (in struct msghdr) to
|
||||||
|
`size_t' to keep in step with kernel.
|
||||||
|
|
||||||
1997-03-16 18:43 Ulrich Drepper <drepper@cygnus.com>
|
1997-03-16 18:43 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
* manual/filesys.texi: Add documentation for scandir and alphasort.
|
* manual/filesys.texi: Add documentation for scandir and alphasort.
|
||||||
|
* manual/examples/dir2.c: New example for scandir.
|
||||||
|
|
||||||
* math/math.c (fpclassify): Correct stupid typos.
|
* math/math.c (fpclassify): Correct stupid typos.
|
||||||
|
|
||||||
* math/libm-test.c: New file. libm test suite by Andreas Jaeger.
|
* math/libm-test.c: New file. libm test suite by Andreas Jaeger.
|
||||||
|
* math/test/float.c: New file. Frontend for float tests.
|
||||||
* nss/nss_files/files-hosts.c: Add gethostbyname2 imlementation.
|
* math/test/double.c: New file. Frontend for double tests.
|
||||||
|
* math/test/longdouble.c: New file. Frontend for long double tests.
|
||||||
|
|
||||||
* posix/Makefile (routines): Add bsd-getpgrp.
|
* posix/Makefile (routines): Add bsd-getpgrp.
|
||||||
* posix/bsd-getpgrp.c: New file.
|
* posix/bsd-getpgrp.c: New file.
|
||||||
@@ -17,7 +35,7 @@
|
|||||||
|
|
||||||
* sysdeps/i386/huge_val.h: New file. ix87 specific infinity values.
|
* sysdeps/i386/huge_val.h: New file. ix87 specific infinity values.
|
||||||
* sysdeps/m68k/huge_val.h: New file. m68k specific infinity values.
|
* sysdeps/m68k/huge_val.h: New file. m68k specific infinity values.
|
||||||
* sysdeps/generic/huge_val.h: Remove definition of long double
|
* sysdeps/ieee754/huge_val.h: Remove definition of long double
|
||||||
definition. Make it the same as the double definition.
|
definition. Make it the same as the double definition.
|
||||||
|
|
||||||
* sysdeps/libm-i387/e_acos.S: Fix bug in FPU stack handling.
|
* sysdeps/libm-i387/e_acos.S: Fix bug in FPU stack handling.
|
||||||
@@ -29,9 +47,9 @@
|
|||||||
* sysdeps/libm-i387/e_exp.S: Likewise.
|
* sysdeps/libm-i387/e_exp.S: Likewise.
|
||||||
* sysdeps/libm-i387/e_expf.S: Likewise.
|
* sysdeps/libm-i387/e_expf.S: Likewise.
|
||||||
* sysdeps/libm-i387/e_expl.S: Likewise.
|
* sysdeps/libm-i387/e_expl.S: Likewise.
|
||||||
* sysdeps/libm-i387/e_scalbn.S: Likewise.
|
* sysdeps/libm-i387/s_scalbn.S: Likewise.
|
||||||
* sysdeps/libm-i387/e_scalbnf.S: Likewise.
|
* sysdeps/libm-i387/s_scalbnf.S: Likewise.
|
||||||
* sysdeps/libm-i387/e_scalbnl.S: Likewise.
|
* sysdeps/libm-i387/s_scalbnl.S: Likewise.
|
||||||
|
|
||||||
* sysdeps/libm-i387/e_log.S: Optimize branch code.
|
* sysdeps/libm-i387/e_log.S: Optimize branch code.
|
||||||
* sysdeps/libm-i387/e_logf.S: Likewise.
|
* sysdeps/libm-i387/e_logf.S: Likewise.
|
||||||
@@ -44,14 +62,14 @@
|
|||||||
* sysdeps/libm-i387/e_powf.S: Likewise.
|
* sysdeps/libm-i387/e_powf.S: Likewise.
|
||||||
* sysdeps/libm-i387/e_powl.S: Likewise.
|
* sysdeps/libm-i387/e_powl.S: Likewise.
|
||||||
|
|
||||||
* sysdeps/libm-i387/e_expm1.S: Change return value for -inf
|
* sysdeps/libm-i387/s_expm1.S: Change return value for -inf
|
||||||
argument to -1.0.
|
argument to -1.0.
|
||||||
* sysdeps/libm-i387/e_expm1f.S: Likewise.
|
* sysdeps/libm-i387/s_expm1f.S: Likewise.
|
||||||
* sysdeps/libm-i387/e_expm1l.S: Likewise.
|
* sysdeps/libm-i387/s_expm1l.S: Likewise.
|
||||||
|
|
||||||
* sysdeps/libm-i387/e_isinfl.c: Return -1 for -inf.
|
* sysdeps/libm-i387/s_isinfl.c: Return -1 for -inf.
|
||||||
|
|
||||||
* sysdeps/libm-i387/e_logbl.S: Correct return value. Discard first
|
* sysdeps/libm-i387/s_logbl.S: Correct return value. Discard first
|
||||||
stack element after fxtract.
|
stack element after fxtract.
|
||||||
|
|
||||||
* sysdeps/libm-ieee754/e_atan2l.c: New file. `long double'
|
* sysdeps/libm-ieee754/e_atan2l.c: New file. `long double'
|
||||||
@@ -81,6 +99,8 @@
|
|||||||
|
|
||||||
* sysdeps/libm-ieee754/w_pow.c: Distinguish error cases for x is +0
|
* sysdeps/libm-ieee754/w_pow.c: Distinguish error cases for x is +0
|
||||||
or -0.
|
or -0.
|
||||||
|
* sysdeps/libm-ieee754/w_powf.c: Likewise.
|
||||||
|
* sysdeps/libm-ieee754/w_powl.c: Likewise.
|
||||||
|
|
||||||
* sysdeps/posix/isfdtype.c: Add cast to prevent warning.
|
* sysdeps/posix/isfdtype.c: Add cast to prevent warning.
|
||||||
|
|
||||||
@@ -113,7 +133,7 @@
|
|||||||
* sysdeps/unix/sysv/linux/statbuf.h (struct stat): Change definition
|
* sysdeps/unix/sysv/linux/statbuf.h (struct stat): Change definition
|
||||||
to use prescribed types for elements.
|
to use prescribed types for elements.
|
||||||
(_STAT_VER): Change to value 3.
|
(_STAT_VER): Change to value 3.
|
||||||
* sysdeps/unix/sysv/linux/alph/statbuf.h: Likewise.
|
* sysdeps/unix/sysv/linux/alpha/statbuf.h: Likewise.
|
||||||
* sysdeps/unix/sysv/linux/Dist: Add kernel_stat.h.
|
* sysdeps/unix/sysv/linux/Dist: Add kernel_stat.h.
|
||||||
* sysdeps/unix/sysv/linux/alpha/Dist: Likewise.
|
* sysdeps/unix/sysv/linux/alpha/Dist: Likewise.
|
||||||
|
|
||||||
@@ -150,6 +170,7 @@
|
|||||||
* nis/nss_nis/nis-hosts.c (_nss_nis_gethostbyname2_r): New
|
* nis/nss_nis/nis-hosts.c (_nss_nis_gethostbyname2_r): New
|
||||||
functions. Compare result for correct address type.
|
functions. Compare result for correct address type.
|
||||||
(_nss_nis_gethostbyname_r): Use _nss_nis_gethostbyname2_r.
|
(_nss_nis_gethostbyname_r): Use _nss_nis_gethostbyname2_r.
|
||||||
|
* nss/nss_files/files-hosts.c: Likewise.
|
||||||
Reported by Mirko Streckenbach <mirko@marian.hil.de>.
|
Reported by Mirko Streckenbach <mirko@marian.hil.de>.
|
||||||
|
|
||||||
1997-02-17 01:40 Zlatko Calusic <zcalusic@srce.hr>
|
1997-02-17 01:40 Zlatko Calusic <zcalusic@srce.hr>
|
||||||
@@ -182,7 +203,7 @@
|
|||||||
Pretty print header.
|
Pretty print header.
|
||||||
|
|
||||||
* Makerules (build-shlib): Also create symlink if library is versioned.
|
* Makerules (build-shlib): Also create symlink if library is versioned.
|
||||||
based on a patch by H.J. Lu <hjl@gnu.ai.mit.edu>.
|
Based on a patch by H.J. Lu <hjl@gnu.ai.mit.edu>.
|
||||||
Remove special rule to libc.so symlink.
|
Remove special rule to libc.so symlink.
|
||||||
|
|
||||||
1997-03-11 20:16 Andreas Jaeger <aj@arthur.pfalz.de>
|
1997-03-11 20:16 Andreas Jaeger <aj@arthur.pfalz.de>
|
||||||
@@ -198,7 +219,7 @@
|
|||||||
|
|
||||||
1997-03-10 18:16 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
|
1997-03-10 18:16 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
|
||||||
|
|
||||||
* ypclnt.c (__yp_bind): Fix possible buffer overflow.
|
* nis/ypclnt.c (__yp_bind): Fix possible buffer overflow.
|
||||||
|
|
||||||
1997-03-10 18:06 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
|
1997-03-10 18:06 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
|
||||||
|
|
||||||
@@ -297,8 +318,6 @@
|
|||||||
* mach/mach/error.h (mach_error_fn_t): Comment out declaration; it
|
* mach/mach/error.h (mach_error_fn_t): Comment out declaration; it
|
||||||
appears to be entirely unused dead code.
|
appears to be entirely unused dead code.
|
||||||
|
|
||||||
* stdio/stdio.h (freopen): Fix spelling error.
|
|
||||||
|
|
||||||
1997-03-02 13:38 Miles Bader <miles@gnu.ai.mit.edu>
|
1997-03-02 13:38 Miles Bader <miles@gnu.ai.mit.edu>
|
||||||
|
|
||||||
* string/argz.h (__need_error_t): New macro, before including <errno.h>
|
* string/argz.h (__need_error_t): New macro, before including <errno.h>
|
||||||
@@ -315,10 +334,10 @@
|
|||||||
* configure.in: Substitute ASFLAGS_SO.
|
* configure.in: Substitute ASFLAGS_SO.
|
||||||
* sysdeps/sparc/configure.in: New file.
|
* sysdeps/sparc/configure.in: New file.
|
||||||
|
|
||||||
* posix/unitstd.h: Add prototype for __euidaccess.
|
* posix/unistd.h: Add prototype for __euidaccess.
|
||||||
* sysdeps/posix/euidaccess.c: Define as __euidaccess and make
|
* sysdeps/posix/euidaccess.c: Define as __euidaccess and make
|
||||||
euidaccess weak alias.
|
euidaccess weak alias.
|
||||||
* sysdeps/stubs/euidaccess.c: Likewise.
|
* sysdeps/stub/euidaccess.c: Likewise.
|
||||||
* inet/rcmd.c: Use __ protected versions of non-standard functions.
|
* inet/rcmd.c: Use __ protected versions of non-standard functions.
|
||||||
|
|
||||||
* locale/setlocale.c (setlocale): Don't set usage_count to
|
* locale/setlocale.c (setlocale): Don't set usage_count to
|
||||||
|
@@ -1,6 +1,11 @@
|
|||||||
|
1997-03-17 03:32 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
|
* sort-test.sh: Call localedef with additional environment variable
|
||||||
|
I18NPATH to point to not-yet-installed locale data files.
|
||||||
|
|
||||||
1997-02-15 14:32 15:10 Andreas Jaeger <aj@arthur.pfalz.de>
|
1997-02-15 14:32 15:10 Andreas Jaeger <aj@arthur.pfalz.de>
|
||||||
|
|
||||||
* collate-test.c (main): change prototype definition to prevent
|
* collate-test.c (main): Change prototype definition to prevent
|
||||||
warning.
|
warning.
|
||||||
|
|
||||||
1997-02-15 17:46 Ulrich Drepper <drepper@cygnus.com>
|
1997-02-15 17:46 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
@@ -11,9 +11,9 @@ for l in $lang; do
|
|||||||
cns=`echo $l | sed 's/\(.*\)[.][^.]*/\1/'`
|
cns=`echo $l | sed 's/\(.*\)[.][^.]*/\1/'`
|
||||||
cn=locales/$cns
|
cn=locales/$cns
|
||||||
fn=charmaps/`echo $l | sed 's/.*[.]\([^.]*\)/\1/'`
|
fn=charmaps/`echo $l | sed 's/.*[.]\([^.]*\)/\1/'`
|
||||||
LD_LIBRARY_PATH=$common_objpfx $common_objpfx/elf/ld.so \
|
LD_LIBRARY_PATH=$common_objpfx I18NPATH=./locales ${common_objpfx}elf/ld.so \
|
||||||
$common_objpfx/locale/localedef --quiet -i $cn -f $fn \
|
${common_objpfx}locale/localedef --quiet -i $cn -f $fn \
|
||||||
$common_objpfx/localedata/$cns
|
${common_objpfx}localedata/$cns
|
||||||
done
|
done
|
||||||
|
|
||||||
# Run collation tests.
|
# Run collation tests.
|
||||||
|
29
math/test-double.c
Normal file
29
math/test-double.c
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
/* Copyright (C) 1997 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
Contributed by Andreas Jaeger <aj@arthur.pfalz.de>, 1997.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Library General Public License as
|
||||||
|
published by the Free Software Foundation; either version 2 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
|
||||||
|
Library General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Library General Public
|
||||||
|
License along with the GNU C Library; see the file COPYING.LIB. If not,
|
||||||
|
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||||
|
Boston, MA 02111-1307, USA. */
|
||||||
|
|
||||||
|
#define FUNC(function) function
|
||||||
|
#define MATHTYPE double
|
||||||
|
#define TEST_MSG "testing double (without inline functions)\n"
|
||||||
|
#define MATHCONST(x) x
|
||||||
|
#define CHOOSE(Clongdouble,Cdouble,Cfloat) Cdouble
|
||||||
|
#define PRINTF_EXPR "e"
|
||||||
|
|
||||||
|
#define __NO_MATH_INLINES
|
||||||
|
|
||||||
|
#include "libm-test.c"
|
29
math/test-float.c
Normal file
29
math/test-float.c
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
/* Copyright (C) 1997 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
Contributed by Andreas Jaeger <aj@arthur.pfalz.de>, 1997.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Library General Public License as
|
||||||
|
published by the Free Software Foundation; either version 2 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
|
||||||
|
Library General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Library General Public
|
||||||
|
License along with the GNU C Library; see the file COPYING.LIB. If not,
|
||||||
|
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||||
|
Boston, MA 02111-1307, USA. */
|
||||||
|
|
||||||
|
#define FUNC(function) function ## f
|
||||||
|
#define MATHTYPE float
|
||||||
|
#define TEST_MSG "testing float (without inline functions)\n"
|
||||||
|
#define MATHCONST(x) x
|
||||||
|
#define CHOOSE(Clongdouble,Cdouble,Cfloat) Cfloat
|
||||||
|
#define PRINTF_EXPR "e"
|
||||||
|
|
||||||
|
#define __NO_MATH_INLINES
|
||||||
|
|
||||||
|
#include "libm-test.c"
|
29
math/test-longdouble.c
Normal file
29
math/test-longdouble.c
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
/* Copyright (C) 1997 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
Contributed by Andreas Jaeger <aj@arthur.pfalz.de>, 1997.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Library General Public License as
|
||||||
|
published by the Free Software Foundation; either version 2 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
|
||||||
|
Library General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Library General Public
|
||||||
|
License along with the GNU C Library; see the file COPYING.LIB. If not,
|
||||||
|
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||||
|
Boston, MA 02111-1307, USA. */
|
||||||
|
|
||||||
|
#define FUNC(function) function##l
|
||||||
|
#define MATHTYPE long double
|
||||||
|
#define TEST_MSG "testing long double (without inline functions)\n"
|
||||||
|
#define MATHCONST(x) x##L
|
||||||
|
#define CHOOSE(Clongdouble,Cdouble,Cfloat) Clongdouble
|
||||||
|
#define PRINTF_EXPR "Le"
|
||||||
|
|
||||||
|
#define __NO_MATH_INLINES
|
||||||
|
|
||||||
|
#include "libm-test.c"
|
@@ -18,6 +18,8 @@ static char rcsid[] = "$NetBSD: k_standard.c,v 1.6 1995/05/10 20:46:35 jtc Exp $
|
|||||||
#include "math_private.h"
|
#include "math_private.h"
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
|
||||||
|
#include <assert.h>
|
||||||
|
|
||||||
#ifndef _USE_WRITE
|
#ifndef _USE_WRITE
|
||||||
#include <stdio.h> /* fputs(), stderr */
|
#include <stdio.h> /* fputs(), stderr */
|
||||||
#define WRITE2(u,v) fputs(u, stderr)
|
#define WRITE2(u,v) fputs(u, stderr)
|
||||||
@@ -109,7 +111,10 @@ static double zero = 0.0; /* used as const */
|
|||||||
exc.type = DOMAIN;
|
exc.type = DOMAIN;
|
||||||
exc.name = type < 100 ? "acos" : (type < 200
|
exc.name = type < 100 ? "acos" : (type < 200
|
||||||
? "acosf" : "acosl");;
|
? "acosf" : "acosl");;
|
||||||
exc.retval = zero;
|
if (_LIB_VERSION == _SVID_)
|
||||||
|
exc.retval = HUGE;
|
||||||
|
else
|
||||||
|
exc.retval = NAN;
|
||||||
if (_LIB_VERSION == _POSIX_)
|
if (_LIB_VERSION == _POSIX_)
|
||||||
__set_errno (EDOM);
|
__set_errno (EDOM);
|
||||||
else if (!__matherr(&exc)) {
|
else if (!__matherr(&exc)) {
|
||||||
@@ -126,7 +131,10 @@ static double zero = 0.0; /* used as const */
|
|||||||
exc.type = DOMAIN;
|
exc.type = DOMAIN;
|
||||||
exc.name = type < 100 ? "asin" : (type < 200
|
exc.name = type < 100 ? "asin" : (type < 200
|
||||||
? "asinf" : "asinl");
|
? "asinf" : "asinl");
|
||||||
exc.retval = zero;
|
if (_LIB_VERSION == _SVID_)
|
||||||
|
exc.retval = HUGE;
|
||||||
|
else
|
||||||
|
exc.retval = NAN;
|
||||||
if(_LIB_VERSION == _POSIX_)
|
if(_LIB_VERSION == _POSIX_)
|
||||||
__set_errno (EDOM);
|
__set_errno (EDOM);
|
||||||
else if (!__matherr(&exc)) {
|
else if (!__matherr(&exc)) {
|
||||||
@@ -145,7 +153,8 @@ static double zero = 0.0; /* used as const */
|
|||||||
exc.type = DOMAIN;
|
exc.type = DOMAIN;
|
||||||
exc.name = type < 100 ? "atan2" : (type < 200
|
exc.name = type < 100 ? "atan2" : (type < 200
|
||||||
? "atan2f" : "atan2l");
|
? "atan2f" : "atan2l");
|
||||||
exc.retval = zero;
|
assert (_LIB_VERSION == _SVID_);
|
||||||
|
exc.retval = HUGE;
|
||||||
if(_LIB_VERSION == _POSIX_)
|
if(_LIB_VERSION == _POSIX_)
|
||||||
__set_errno (EDOM);
|
__set_errno (EDOM);
|
||||||
else if (!__matherr(&exc)) {
|
else if (!__matherr(&exc)) {
|
||||||
@@ -399,7 +408,7 @@ static double zero = 0.0; /* used as const */
|
|||||||
if (_LIB_VERSION == _SVID_)
|
if (_LIB_VERSION == _SVID_)
|
||||||
exc.retval = -HUGE;
|
exc.retval = -HUGE;
|
||||||
else
|
else
|
||||||
exc.retval = -HUGE_VAL;
|
exc.retval = NAN;
|
||||||
if (_LIB_VERSION == _POSIX_)
|
if (_LIB_VERSION == _POSIX_)
|
||||||
__set_errno (EDOM);
|
__set_errno (EDOM);
|
||||||
else if (!__matherr(&exc)) {
|
else if (!__matherr(&exc)) {
|
||||||
@@ -439,7 +448,7 @@ static double zero = 0.0; /* used as const */
|
|||||||
if (_LIB_VERSION == _SVID_)
|
if (_LIB_VERSION == _SVID_)
|
||||||
exc.retval = -HUGE;
|
exc.retval = -HUGE;
|
||||||
else
|
else
|
||||||
exc.retval = -HUGE_VAL;
|
exc.retval = NAN;
|
||||||
if (_LIB_VERSION == _POSIX_)
|
if (_LIB_VERSION == _POSIX_)
|
||||||
__set_errno (EDOM);
|
__set_errno (EDOM);
|
||||||
else if (!__matherr(&exc)) {
|
else if (!__matherr(&exc)) {
|
||||||
@@ -500,7 +509,7 @@ static double zero = 0.0; /* used as const */
|
|||||||
case 23:
|
case 23:
|
||||||
case 123:
|
case 123:
|
||||||
case 223:
|
case 223:
|
||||||
/* 0**neg */
|
/* -0**neg */
|
||||||
exc.type = DOMAIN;
|
exc.type = DOMAIN;
|
||||||
exc.name = type < 100 ? "pow" : (type < 200 ? "powf" : "powl");
|
exc.name = type < 100 ? "pow" : (type < 200 ? "powf" : "powl");
|
||||||
if (_LIB_VERSION == _SVID_)
|
if (_LIB_VERSION == _SVID_)
|
||||||
@@ -516,6 +525,25 @@ static double zero = 0.0; /* used as const */
|
|||||||
__set_errno (EDOM);
|
__set_errno (EDOM);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case 43:
|
||||||
|
case 143:
|
||||||
|
case 243:
|
||||||
|
/* +0**neg */
|
||||||
|
exc.type = DOMAIN;
|
||||||
|
exc.name = type < 100 ? "pow" : (type < 200 ? "powf" : "powl");
|
||||||
|
if (_LIB_VERSION == _SVID_)
|
||||||
|
exc.retval = zero;
|
||||||
|
else
|
||||||
|
exc.retval = HUGE_VAL;
|
||||||
|
if (_LIB_VERSION == _POSIX_)
|
||||||
|
__set_errno (EDOM);
|
||||||
|
else if (!__matherr(&exc)) {
|
||||||
|
if (_LIB_VERSION == _SVID_) {
|
||||||
|
(void) WRITE2("pow(0,neg): DOMAIN error\n", 25);
|
||||||
|
}
|
||||||
|
__set_errno (EDOM);
|
||||||
|
}
|
||||||
|
break;
|
||||||
case 24:
|
case 24:
|
||||||
case 124:
|
case 124:
|
||||||
case 224:
|
case 224:
|
||||||
@@ -842,6 +870,8 @@ static double zero = 0.0; /* used as const */
|
|||||||
__set_errno (EDOM);
|
__set_errno (EDOM);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
/* #### Last used is 43/143/243 ### */
|
||||||
}
|
}
|
||||||
return exc.retval;
|
return exc.retval;
|
||||||
}
|
}
|
||||||
|
@@ -35,8 +35,8 @@ __fpclassifyf (float x)
|
|||||||
retval = FP_ZERO;
|
retval = FP_ZERO;
|
||||||
else if (wx < 0x1000000)
|
else if (wx < 0x1000000)
|
||||||
retval = FP_SUBNORMAL;
|
retval = FP_SUBNORMAL;
|
||||||
else if (wx == 0x7f000000)
|
else if (wx >= 0x7f800000)
|
||||||
retval = wx > 0x7f000000 ? FP_NAN : FP_INFINITE;
|
retval = wx > 0x7f800000 ? FP_NAN : FP_INFINITE;
|
||||||
|
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
@@ -35,7 +35,7 @@ static char rcsid[] = "$NetBSD: w_atan2.c,v 1.6 1995/05/10 20:48:39 jtc Exp $";
|
|||||||
double z;
|
double z;
|
||||||
z = __ieee754_atan2(y,x);
|
z = __ieee754_atan2(y,x);
|
||||||
if(_LIB_VERSION != _SVID_||__isnan(x)||__isnan(y)) return z;
|
if(_LIB_VERSION != _SVID_||__isnan(x)||__isnan(y)) return z;
|
||||||
if(x==0.0&&y==0.0) {
|
if(x==0.0&&y==0.0)
|
||||||
return __kernel_standard(y,x,3); /* atan2(+-0,+-0) */
|
return __kernel_standard(y,x,3); /* atan2(+-0,+-0) */
|
||||||
return z;
|
return z;
|
||||||
#endif
|
#endif
|
||||||
|
@@ -37,7 +37,9 @@ static char rcsid[] = "$NetBSD: w_atan2f.c,v 1.3 1995/05/10 20:48:42 jtc Exp $";
|
|||||||
#else
|
#else
|
||||||
float z;
|
float z;
|
||||||
z = __ieee754_atan2f(y,x);
|
z = __ieee754_atan2f(y,x);
|
||||||
if(_LIB_VERSION == _IEEE_||__isnanf(x)||__isnanf(y)) return z;
|
if(_LIB_VERSION != _SVID_||__isnanf(x)||__isnanf(y)) return z;
|
||||||
|
if(x==0.0&&y==0.0)
|
||||||
|
return __kernel_standard(y,x,103); /* atan2(+-0,+-0) */
|
||||||
return z;
|
return z;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
@@ -38,7 +38,9 @@ static char rcsid[] = "$NetBSD: $";
|
|||||||
#else
|
#else
|
||||||
long double z;
|
long double z;
|
||||||
z = __ieee754_atan2l(y,x);
|
z = __ieee754_atan2l(y,x);
|
||||||
if(_LIB_VERSION == _IEEE_||__isnanl(x)||__isnanl(y)) return z;
|
if(_LIB_VERSION != _SVID_||__isnanl(x)||__isnanl(y)) return z;
|
||||||
|
if(x==0.0&&y==0.0)
|
||||||
|
return __kernel_standard(y,x,203); /* atan2(+-0,+-0) */
|
||||||
return z;
|
return z;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
@@ -83,8 +83,20 @@ enum __socket_type
|
|||||||
#define AF_INET6 PF_INET6
|
#define AF_INET6 PF_INET6
|
||||||
#define AF_MAX PF_MAX
|
#define AF_MAX PF_MAX
|
||||||
|
|
||||||
/* Raw IP packet level. */
|
/* Socket level values. */
|
||||||
|
#define SOL_IP 0
|
||||||
|
#define SOL_TCP 6
|
||||||
|
#define SOL_UDP 17
|
||||||
|
#define SOL_IPV6 41
|
||||||
|
#define SOL_ICMPV6 58
|
||||||
#define SOL_RAW 255
|
#define SOL_RAW 255
|
||||||
|
#define SOL_IPX 256
|
||||||
|
#define SOL_AX25 257
|
||||||
|
#define SOL_ATALK 258
|
||||||
|
#define SOL_NETROM 259
|
||||||
|
#define SOL_ROSE 260
|
||||||
|
#define SOL_DECNET 261
|
||||||
|
#define SOL_X25 262
|
||||||
|
|
||||||
/* Maximum queue length specifiable by listen. */
|
/* Maximum queue length specifiable by listen. */
|
||||||
#define SOMAXCONN 128
|
#define SOMAXCONN 128
|
||||||
@@ -120,21 +132,18 @@ struct msghdr
|
|||||||
/* XXX Should be type `size_t' according to POSIX.1g. */
|
/* XXX Should be type `size_t' according to POSIX.1g. */
|
||||||
|
|
||||||
struct iovec *msg_iov; /* Vector of data to send/receive into. */
|
struct iovec *msg_iov; /* Vector of data to send/receive into. */
|
||||||
int msg_iovlen; /* Number of elements in the vector. */
|
size_t msg_iovlen; /* Number of elements in the vector. */
|
||||||
/* XXX Should be type `size_t' according to POSIX.1g. */
|
|
||||||
|
|
||||||
__ptr_t msg_control; /* Ancillary data (eg BSD filedesc passing). */
|
__ptr_t msg_control; /* Ancillary data (eg BSD filedesc passing). */
|
||||||
int msg_controllen; /* Ancillary data buffer length. */
|
size_t msg_controllen; /* Ancillary data buffer length. */
|
||||||
/* XXX Should be type `size_t' according to POSIX.1g. */
|
|
||||||
int msg_flags; /* Flags on received message. */
|
int msg_flags; /* Flags on received message. */
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Structure used for storage of ancillary data object information. */
|
/* Structure used for storage of ancillary data object information. */
|
||||||
struct cmsghdr
|
struct cmsghdr
|
||||||
{
|
{
|
||||||
int cmsg_len; /* Length of data in cmsg_data plus length
|
size_t cmsg_len; /* Length of data in cmsg_data plus length
|
||||||
of cmsghdr structure. */
|
of cmsghdr structure. */
|
||||||
/* XXX Should be type `size_t' according to POSIX.1g. */
|
|
||||||
int cmsg_level; /* Originating protocol. */
|
int cmsg_level; /* Originating protocol. */
|
||||||
int cmsg_type; /* Protocol specific type. */
|
int cmsg_type; /* Protocol specific type. */
|
||||||
#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2
|
#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/* Definitions for BSD-style memory management. Linux version.
|
/* Definitions for POSIX-style memory management. Linux version.
|
||||||
Copyright (C) 1994, 1995, 1996 Free Software Foundation, Inc.
|
Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
@@ -66,7 +66,7 @@ extern int mprotect __P ((__caddr_t __addr, size_t __len, int __prot));
|
|||||||
|
|
||||||
/* Synchronize the region starting at ADDR and extending LEN bytes with the
|
/* Synchronize the region starting at ADDR and extending LEN bytes with the
|
||||||
file it maps. Filesystem operations on a file being mapped are
|
file it maps. Filesystem operations on a file being mapped are
|
||||||
unpredictable before this is done. */
|
unpredictable before this is done. Flags are from the MS_* set. */
|
||||||
extern int msync __P ((__caddr_t __addr, size_t __len, int __flags));
|
extern int msync __P ((__caddr_t __addr, size_t __len, int __flags));
|
||||||
|
|
||||||
/* Advise the system about particular usage patterns the program follows
|
/* Advise the system about particular usage patterns the program follows
|
||||||
|
Reference in New Issue
Block a user