diff options
| author | Ulrich Drepper <drepper@redhat.com> | 1997-11-13 00:21:19 +0000 |
|---|---|---|
| committer | Ulrich Drepper <drepper@redhat.com> | 1997-11-13 00:21:19 +0000 |
| commit | fe0ec73edb48eff3785f29ddbac75cae5f8b361b (patch) | |
| tree | d862765d3e48bfde1ee82de94b4e4f039ee7f205 | |
| parent | cc3fa755128c70f8afc2d604936f33e4d7d652d8 (diff) | |
| download | glibc-fe0ec73edb48eff3785f29ddbac75cae5f8b361b.tar.xz glibc-fe0ec73edb48eff3785f29ddbac75cae5f8b361b.zip | |
Update.cvs/libc-ud-971112
1997-11-13 01:07 Ulrich Drepper <drepper@cygnus.com>
* manual/arith.texi: Update documentation according to most recent
ISO C 9X draft.
Document fma, fdim, fmin, and fmax.
* manual/math.texi: Allow multiple defitino of mul etc.
* math/complex.h (I): Define using _Complex_U not _Imaginary_I.
* math/libm-test.c: Add tests for fma.
* math/math.h: Describe DECIMAL_DIG macro. Pretty print.
* sysdeps/alpha/fpu/bits/mathdef.h: Define INFINITY as of type float.
Define DECIMAL_DIG.
* sysdeps/generic/bits/mathdef.h: Likewise.
* sysdeps/i386/bits/mathdef.h: Likewise.
* sysdeps/m68k/fpu/bits/mathdef.h: Likewise.
* sysdeps/powerpc/bits/mathdef.h: Likewise.
* sysdeps/sparc/fpu/bits/mathdef.h: Likewise.
* sysdeps/ieee754/bits/nan.h: Define NAN as of type float.
* sysdeps/m68k/bits/nan.h. Likewise. Remove NANF and NANL.
1997-11-12 17:50 Ulrich Drepper <drepper@cygnus.com>
* sunrpc/xcrypt.c: Don't process #ident preprocessor instruction.
Reported by Philip Blundell <pb@nexus.co.uk>.
* string/strndup.c: Use K&R like definition.
* sysdeps/unix/sysv/linux/getcwd.c: New file. Use kernel information
instead of longish search for the name.
* sysdeps/posix/getcwd.c: Add support for use of the code as a
backup solution.
1997-11-12 15:31 Philip Blundell <pb@nexus.co.uk>
* sysdeps/unix/sysv/linux/arm/sysdep.h (SYS_ify): Don't add
SWI_BASE in twice.
* sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
Use correct name to access PC.
* sysdeps/unix/arm/sysdep.S: Include <bits/errno.h> not <errnos.h>.
* sysdeps/generic/bits/types.h: Add __ino64_t and __off64_t.
* sysdeps/generic/bits/stat.h: Add struct stat64.
1997-11-12 16:08 Ulrich Drepper <drepper@cygnus.com>
* intl/loadmsgcat.c [_LIBC] (fstat): Don't define as __fstat since
now we have a definition as _fxstat.
* libio/fileops.c: Likewise.
* libio/oldfileops.c: Likewise.
Reported by Andreas Jaeger <aj@arthur.rhein-neckar.de>.
1997-11-12 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/wordsize-32/inttypes.h (SIG_ATOMIC_MAX): Correct value.
* sysdeps/wordsize-64/inttypes.h (SIG_ATOMIC_MAX): Likewise.
1997-11-11 Paul Eggert <eggert@twinsun.com>
Add overflow checking for 64-bit time_t and 32-bit int.
* time/time.h (__offtime): Now returns int.
* time/offtime.c (__offtime): Return nonzero if successful;
check for tm_year overflow.
(DIV): New macro.
(LEAPS_THRU_END_OF): Handle negative years correctly.
* time/tzset.c (__tz_convert): Return NULL if offtime cannot convert.
* time/mktime.c (ranged_convert): New function.
(ydhms_tm_diff): Return nonzero if TP is null.
(__mktime_internal): Handle cases correctly even if they are near or
past the limits of time_t values that can be broken down to struct tm.
(print_tm, check_result, main): Diagnose localtime failures.
* manual/time.texi: Document the fact that localtime returns 0
if the time can't be represented.
1997-11-12 06:03 Ulrich Drepper <drepper@cygnus.com>
* time/strftime.c (memset_space, memset_zero): Use MEMPCPY, not
mempcpy. Patch by Ken'ichi Handa <handa@etl.go.jp>.
* manual/time.texi: Document %F and %f format for strftime.
* manual/arith.texi: Document copysign, nextafter and nan.
1997-11-06 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* test-installation.pl: New file. Tests for some installation
problems.
39 files changed, 802 insertions, 266 deletions
@@ -1,7 +1,7 @@ List of known bugs (certainly very incomplete) ---------------------------------------------- -Time-stamp: <1997-11-05T16:59:11+0100 drepper> +Time-stamp: <1997-11-12T04:42:03+0100 drepper> This following list contains those bugs which I'm aware of. Please make sure that bugs you report are not listed here. If you can fix one @@ -55,6 +55,11 @@ Severity: [ *] to [***] checked for errors, but the whole file containing the same category. [PR libc/207] + +[ *] The libm-ieee `asin' function gives wrong results (at least for 0.5). + +[ *] _IO_getline can loop forever, at least with C++ + [PR libc/332] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Ulrich Drepper drepper@cygnus.com @@ -1,3 +1,101 @@ +1997-11-13 01:07 Ulrich Drepper <drepper@cygnus.com> + + * manual/arith.texi: Update documentation according to most recent + ISO C 9X draft. + Document fma, fdim, fmin, and fmax. + * manual/math.texi: Allow multiple defitino of mul etc. + + * math/complex.h (I): Define using _Complex_U not _Imaginary_I. + + * math/libm-test.c: Add tests for fma. + + * math/math.h: Describe DECIMAL_DIG macro. Pretty print. + + * sysdeps/alpha/fpu/bits/mathdef.h: Define INFINITY as of type float. + Define DECIMAL_DIG. + * sysdeps/generic/bits/mathdef.h: Likewise. + * sysdeps/i386/bits/mathdef.h: Likewise. + * sysdeps/m68k/fpu/bits/mathdef.h: Likewise. + * sysdeps/powerpc/bits/mathdef.h: Likewise. + * sysdeps/sparc/fpu/bits/mathdef.h: Likewise. + + * sysdeps/ieee754/bits/nan.h: Define NAN as of type float. + * sysdeps/m68k/bits/nan.h. Likewise. Remove NANF and NANL. + +1997-11-12 17:50 Ulrich Drepper <drepper@cygnus.com> + + * sunrpc/xcrypt.c: Don't process #ident preprocessor instruction. + Reported by Philip Blundell <pb@nexus.co.uk>. + + * string/strndup.c: Use K&R like definition. + + * sysdeps/unix/sysv/linux/getcwd.c: New file. Use kernel information + instead of longish search for the name. + * sysdeps/posix/getcwd.c: Add support for use of the code as a + backup solution. + +1997-11-12 15:31 Philip Blundell <pb@nexus.co.uk> + + * sysdeps/unix/sysv/linux/arm/sysdep.h (SYS_ify): Don't add + SWI_BASE in twice. + + * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter): + Use correct name to access PC. + + * sysdeps/unix/arm/sysdep.S: Include <bits/errno.h> not <errnos.h>. + + * sysdeps/generic/bits/types.h: Add __ino64_t and __off64_t. + * sysdeps/generic/bits/stat.h: Add struct stat64. + +1997-11-12 16:08 Ulrich Drepper <drepper@cygnus.com> + + * intl/loadmsgcat.c [_LIBC] (fstat): Don't define as __fstat since + now we have a definition as _fxstat. + * libio/fileops.c: Likewise. + * libio/oldfileops.c: Likewise. + Reported by Andreas Jaeger <aj@arthur.rhein-neckar.de>. + +1997-11-12 Andreas Jaeger <aj@arthur.rhein-neckar.de> + + * sysdeps/wordsize-32/inttypes.h (SIG_ATOMIC_MAX): Correct value. + * sysdeps/wordsize-64/inttypes.h (SIG_ATOMIC_MAX): Likewise. + +1997-11-11 Paul Eggert <eggert@twinsun.com> + + Add overflow checking for 64-bit time_t and 32-bit int. + + * time/time.h (__offtime): Now returns int. + + * time/offtime.c (__offtime): Return nonzero if successful; + check for tm_year overflow. + (DIV): New macro. + (LEAPS_THRU_END_OF): Handle negative years correctly. + + * time/tzset.c (__tz_convert): Return NULL if offtime cannot convert. + + * time/mktime.c (ranged_convert): New function. + (ydhms_tm_diff): Return nonzero if TP is null. + (__mktime_internal): Handle cases correctly even if they are near or + past the limits of time_t values that can be broken down to struct tm. + (print_tm, check_result, main): Diagnose localtime failures. + + * manual/time.texi: Document the fact that localtime returns 0 + if the time can't be represented. + +1997-11-12 06:03 Ulrich Drepper <drepper@cygnus.com> + + * time/strftime.c (memset_space, memset_zero): Use MEMPCPY, not + mempcpy. Patch by Ken'ichi Handa <handa@etl.go.jp>. + + * manual/time.texi: Document %F and %f format for strftime. + + * manual/arith.texi: Document copysign, nextafter and nan. + +1997-11-06 Andreas Jaeger <aj@arthur.rhein-neckar.de> + + * test-installation.pl: New file. Tests for some installation + problems. + 1997-11-11 21:30 Ulrich Drepper <drepper@cygnus.com> * include/sys/stat.h: Define stat, fstat, lstat and *64 variants diff --git a/bits/mathdef.h b/bits/mathdef.h index 93b60bd25f..15140997c0 100644 --- a/bits/mathdef.h +++ b/bits/mathdef.h @@ -31,10 +31,13 @@ typedef double double_t; /* `double' expressions are evaluated as /* Signal that both types are `double'. */ #define FLT_EVAL_METHOD 1 -/* Define `INFINITY' as value of type `float_t'. */ -#define INFINITY HUGE_VAL +/* Define `INFINITY' as value of type `float'. */ +#define INFINITY HUGE_VALF /* The values returned by `ilogb' for 0 and NaN respectively. */ #define FP_ILOGB0 0x80000001 #define FP_ILOGBNAN 0x7fffffff + +/* Number of decimal digits for the `double' type. */ +#define DECIMAL_DIG 15 diff --git a/bits/stat.h b/bits/stat.h index dab0cd00cb..3648fed738 100644 --- a/bits/stat.h +++ b/bits/stat.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992, 1996 Free Software Foundation, Inc. +/* Copyright (C) 1992, 1996, 1997 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 @@ -70,5 +70,23 @@ struct stat #define __S_IWRITE 0200 /* Write by owner. */ #define __S_IEXEC 0100 /* Execute by owner. */ +#ifdef __USE_LARGEFILE64 +struct stat64 + { + __dev_t st_dev; /* Device. */ + + __ino64_t st_ino; /* File serial number. */ + __mode_t st_mode; /* File mode. */ + __nlink_t st_nlink; /* Link count. */ + __uid_t st_uid; /* User ID of the file's owner. */ + __gid_t st_gid; /* Group ID of the file's group.*/ + __off64_t st_size; /* Size of file, in bytes. */ + + __time_t st_atime; /* Time of last access. */ + __time_t st_mtime; /* Time of last modification. */ + __time_t st_ctime; /* Time of last status change. */ + }; +#endif + #endif /* bits/stat.h */ diff --git a/bits/types.h b/bits/types.h index fdb36f0b54..51fadd196e 100644 --- a/bits/types.h +++ b/bits/types.h @@ -67,6 +67,8 @@ typedef __u_quad_t __fsid_t; /* Type of file system IDs. */ typedef long int __clock_t; /* Type of CPU usage counts. */ typedef long int __rlim_t; /* Type for resource measurement. */ typedef __quad_t __rlim64_t; /* Type for resource measurement (LFS). */ +typedef __quad_t __ino64_t; /* Type for file serial numbers. */ +typedef __loff_t __off64_t; /* Type of file izes and offsets. */ /* Everythin' else. */ typedef long int __daddr_t; /* The type of a disk address. */ diff --git a/include/sys/stat.h b/include/sys/stat.h index be9bdd0c42..16950eb039 100644 --- a/include/sys/stat.h +++ b/include/sys/stat.h @@ -8,6 +8,7 @@ #define stat(fname, buf) __xstat (_STAT_VER, fname, buf) #define fstat(fd, buf) __fxstat (_STAT_VER, fd, buf) #define lstat(fname, buf) __lxstat (_STAT_VER, fname, buf) +#define __lstat(fname, buf) __lxstat (_STAT_VER, fname, buf) #define stat64(fname, buf) __xstat64 (_STAT_VER, fname, buf) #define fstat64(fd, buf) __fxstat64 (_STAT_VER, fd, buf) #define lstat64(fname, buf) __lxstat64 (_STAT_VER, fname, buf) diff --git a/intl/loadmsgcat.c b/intl/loadmsgcat.c index a67223ff7e..de0534269f 100644 --- a/intl/loadmsgcat.c +++ b/intl/loadmsgcat.c @@ -48,7 +48,6 @@ /* Rename the non ISO C functions. This is required by the standard because some ISO C functions will require linking with this object file and the name space must not be polluted. */ -# define fstat __fstat # define open __open # define close __close # define read __read diff --git a/libio/fileops.c b/libio/fileops.c index ffc57f1d37..a0cc2f7d0e 100644 --- a/libio/fileops.c +++ b/libio/fileops.c @@ -45,7 +45,6 @@ extern int errno; #ifdef _LIBC # define open(Name, Flags, Prot) __open (Name, Flags, Prot) # define close(FD) __close (FD) -# define fstat(FD, Statbuf) __fstat (FD, Statbuf) # define lseek(FD, Offset, Whence) __lseek (FD, Offset, Whence) # define read(FD, Buf, NBytes) __read (FD, Buf, NBytes) # define write(FD, Buf, NBytes) __write (FD, Buf, NBytes) diff --git a/libio/oldfileops.c b/libio/oldfileops.c index 71a2bc27a1..b426e88364 100644 --- a/libio/oldfileops.c +++ b/libio/oldfileops.c @@ -49,7 +49,6 @@ extern int errno; #ifdef _LIBC # define open(Name, Flags, Prot) __open (Name, Flags, Prot) # define close(FD) __close (FD) -# define fstat(FD, Statbuf) __fstat (FD, Statbuf) # define lseek(FD, Offset, Whence) __lseek (FD, Offset, Whence) # define read(FD, Buf, NBytes) __read (FD, Buf, NBytes) # define write(FD, Buf, NBytes) __write (FD, Buf, NBytes) diff --git a/manual/arith.texi b/manual/arith.texi index d0863f98df..a5ba31dde8 100644 --- a/manual/arith.texi +++ b/manual/arith.texi @@ -1,3 +1,19 @@ +@c We need some definitions here. +@ifclear cdor +@ifhtml +@set cdot · +@end ifhtml +@iftex +@set cdot @cdot +@end iftex +@ifclear cdot +@set cdot x +@end ifclear +@macro mul +@value{cdot} +@end macro +@end ifclear + @node Arithmetic, Date and Time, Mathematics, Top @chapter Low-Level Arithmetic Functions @@ -18,6 +34,8 @@ These functions are declared in the header files @file{math.h} and * Normalization Functions:: Hacks for radix-2 representations. * Rounding and Remainders:: Determining the integer and fractional parts of a float. +* Arithmetic on FP Values:: Setting and Modifying Single Bits of FP Values. +* Special arithmetic on FPs:: Special Arithmetic on FPs. * Integer Division:: Functions for performing integer division. * Parsing of Numbers:: Functions for ``reading'' numbers @@ -40,7 +58,7 @@ these situations. There is a special value for infinity. @comment math.h @comment ISO -@deftypevr Macro float_t INFINITY +@deftypevr Macro float INFINITY An expression representing the infinite value. @code{INFINITY} values are produced by mathematical operations like @code{1.0 / 0.0}. It is possible to continue the computations with this value since the basic @@ -85,7 +103,7 @@ a NaN. @comment math.h @comment GNU -@deftypevr Macro double NAN +@deftypevr Macro float NAN An expression representing a value which is ``not a number''. This macro is a GNU extension, available only on machines that support ``not a number'' values---that is to say, on all machines that support IEEE @@ -106,15 +124,39 @@ imaginary part of the numbers. In mathematics one uses the symbol ``i'' to mark a number as imaginary. For convenience the @file{complex.h} |
