2000-10-09  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward): If x == y,
	return y not x.
	* manual/arith.texi (nextafter): Document it.
	* sysdeps/ieee754/ldbl-96/s_nexttoward.c: Fix a comment.
This commit is contained in:
Ulrich Drepper 2000-10-09 15:37:39 +00:00
parent e340a2a2e2
commit 0a7fef0159
5 changed files with 39 additions and 9 deletions

View File

@ -62,9 +62,11 @@ of the C standard (as indicated by __STDC_VERSION__):
GCC options Standard version
-ansi ISO/IEC 9899:1990
-std=c89 ISO/IEC 9899:1990
-std=iso9899:199409 ISO/IEC 9899:1990 as amended by Amd.1:1995
-std=iso9899:199409 ISO/IEC 9899:1990 as amended by Amd.1:1995 *
-std=c99 ISO/IEC 9899:1999
* glibc does not support this standard version.
(Note that -std=c99 is not available in GCC 2.95.2, and that no
version of GCC presently existing implements the full C99 standard.)
@ -127,8 +129,8 @@ library in use, so glibc defines them in <features.h>. Programs that
test them before including any standard headers may misbehave.
GCC doesn't support the optional imaginary types. Nor does it
understand the keyword _Complex. This has the corresponding impact on
the relevant headers.
understand the keyword _Complex before GCC 3.0. This has the
corresponding impact on the relevant headers.
glibc's use of extern inline conflicts with C99: in C99, extern inline
means that an external definition is generated as well as possibly an
@ -162,7 +164,28 @@ Issues with headers
===================
There are various technical issues with the definitions contained in
glibc's headers. See
glibc's headers, listed below. The list below assumes current CVS GCC
as of 2000-10-08, and relates to i686-linux; older GCC may lead to
more problems in the headers.
http://sources.redhat.com/ml/libc-alpha/2000-07/msg00259.html
http://sources.redhat.com/ml/libc-alpha/2000-07/msg00279.html
Note that the _t suffix is reserved by POSIX, but not by pure ISO C.
Also, the Single Unix Specification generally requires more types to
be included in headers (if _XOPEN_SOURCE is defined appropriately)
than ISO C permits.
<ctype.h> should not declare size_t.
<inttypes.h> should not declare wchar_t.
<signal.h> should not declare size_t.
<stdint.h> should not declare wchar_t.
<stdio.h> should not declare or use wchar_t, wint_t or off_t.
<wchar.h> does not support AMD1; to support it, the functions
fwprintf, fwscanf, wprintf, wscanf, swprintf, swscanf, vfwprintf,
vwprintf, vswprintf and fwide would need to be declared when
__STDC_VERSION__ >= 199409L and not just for C99.
<wctype.h> should not declare size_t.

View File

@ -1,3 +1,10 @@
2000-10-09 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward): If x == y,
return y not x.
* manual/arith.texi (nextafter): Document it.
* sysdeps/ieee754/ldbl-96/s_nexttoward.c: Fix a comment.
2000-10-08 Ulrich Drepper <drepper@redhat.com>
* version.h (VERSION): Bump to 2.1.95.

View File

@ -1640,7 +1640,7 @@ false, but @code{signbit (-0.0)} will return a nonzero value.
The @code{nextafter} function returns the next representable neighbor of
@var{x} in the direction towards @var{y}. The size of the step between
@var{x} and the result depends on the type of the result. If
@math{@var{x} = @var{y}} the function simply returns @var{x}. If either
@math{@var{x} = @var{y}} the function simply returns @var{y}. If either
value is @code{NaN}, @code{NaN} is returned. Otherwise
a value corresponding to the value of the least significant bit in the
mantissa is added or subtracted, depending on the direction.

View File

@ -50,7 +50,7 @@ static char rcsid[] = "$NetBSD: $";
((iy>=0x7fff000000000000LL)&&((iy-0x7fff000000000000LL)|ly)!=0))
/* y is nan */
return x+y;
if((long double) x==y) return x; /* x=y, return x */
if((long double) x==y) return y; /* x=y, return y */
if((ix|lx)==0) { /* x == 0 */
double x2;
INSERT_WORDS(x,(u_int32_t)((hy>>32)&0x80000000),1);/* return +-minsub */

View File

@ -19,7 +19,7 @@ static char rcsid[] = "$NetBSD: $";
#endif
/* IEEE functions
* nextafterx(x,y)
* nexttoward(x,y)
* return the next machine floating-point number of x in the
* direction toward y.
* Special cases: