diff options
author | Ulrich Drepper <drepper@redhat.com> | 1998-11-10 19:11:20 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1998-11-10 19:11:20 +0000 |
commit | 74eee8866db0c7e01216e6a73b9b19414a95b04b (patch) | |
tree | 6eb38ac5d1bd836ae9a95c4b76b3a56f4bb28b97 | |
parent | 1792d4dbdace6ebddafee6694d7919e93b0ad335 (diff) | |
download | glibc-74eee8866db0c7e01216e6a73b9b19414a95b04b.tar glibc-74eee8866db0c7e01216e6a73b9b19414a95b04b.tar.gz glibc-74eee8866db0c7e01216e6a73b9b19414a95b04b.tar.bz2 glibc-74eee8866db0c7e01216e6a73b9b19414a95b04b.zip |
Update.
1998-11-10 Ulrich Drepper <drepper@cygnus.com>
* math/cabs.c: Replace complex by _Complex.
* math/cabsf.c: Likewise.
* math/cabsl.c: Likewise.
* math/cimag.c: Likewise.
* math/cimagf.c: Likewise.
* math/cimagl.c: Likewise.
* math/conj.c: Likewise.
* math/conjf.c: Likewise.
* math/conjl.c: Likewise.
* math/creal.c: Likewise.
* math/crealf.c: Likewise.
* math/creall.c: Likewise.
* sysdeps/alpha/fpu/bits/mathdef.h: Define ISO C 9X stuff only if
included from math.h and __USE_ISOC9X is defined.
* sysdeps/generic/bits/mathdef.h: Likewise.
* sysdeps/generic/i386/fpu/mathdef.h: Likewise.
* sysdeps/generic/m68k/fpu/mathdef.h: Likewise.
* sysdeps/generic/powerpc/bits/mathdef.h: Likewise.
* sysdeps/generic/sparc/fpu/bits/mathdef.h: Likewise.
1998-11-10 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/i386/fpu/bits/mathdef.h: Allow direct inclusion by
<complex.h>.
* sysdeps/alpha/fpu/bits/mathdef.h: Likewise.
* sysdeps/generic/bits/mathdef.h: Likewise.
* sysdeps/m68k/fpu/bits/mathdef.h: Likewise.
* sysdeps/powerpc/bits/mathdef.h: Likewise.
* sysdeps/sparc/fpu/bits/mathdef.h: Likewise.
1998-11-09 Ulrich Drepper <drepper@cygnus.com>
* extra-lib.mk: Fix typo in last change.
-rw-r--r-- | ChangeLog | 37 | ||||
-rw-r--r-- | bits/mathdef.h | 8 | ||||
-rw-r--r-- | extra-lib.mk | 2 | ||||
-rw-r--r-- | math/cabs.c | 4 | ||||
-rw-r--r-- | math/cabsf.c | 4 | ||||
-rw-r--r-- | math/cabsl.c | 4 | ||||
-rw-r--r-- | math/cimag.c | 4 | ||||
-rw-r--r-- | math/cimagf.c | 4 | ||||
-rw-r--r-- | math/cimagl.c | 4 | ||||
-rw-r--r-- | math/conj.c | 6 | ||||
-rw-r--r-- | math/conjf.c | 6 | ||||
-rw-r--r-- | math/conjl.c | 6 | ||||
-rw-r--r-- | math/creal.c | 4 | ||||
-rw-r--r-- | math/crealf.c | 4 | ||||
-rw-r--r-- | math/creall.c | 4 | ||||
-rw-r--r-- | sysdeps/alpha/fpu/bits/mathdef.h | 43 | ||||
-rw-r--r-- | sysdeps/generic/bits/mathdef.h | 8 | ||||
-rw-r--r-- | sysdeps/i386/fpu/bits/mathdef.h | 4 | ||||
-rw-r--r-- | sysdeps/m68k/fpu/bits/mathdef.h | 4 | ||||
-rw-r--r-- | sysdeps/powerpc/bits/mathdef.h | 43 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/bits/mathdef.h | 43 |
21 files changed, 156 insertions, 90 deletions
@@ -1,4 +1,39 @@ -1998-11-09 18:16 Ulrich Drepper <drepper@cygnus.com> +1998-11-10 Ulrich Drepper <drepper@cygnus.com> + + * math/cabs.c: Replace complex by _Complex. + * math/cabsf.c: Likewise. + * math/cabsl.c: Likewise. + * math/cimag.c: Likewise. + * math/cimagf.c: Likewise. + * math/cimagl.c: Likewise. + * math/conj.c: Likewise. + * math/conjf.c: Likewise. + * math/conjl.c: Likewise. + * math/creal.c: Likewise. + * math/crealf.c: Likewise. + * math/creall.c: Likewise. + + * sysdeps/alpha/fpu/bits/mathdef.h: Define ISO C 9X stuff only if + included from math.h and __USE_ISOC9X is defined. + * sysdeps/generic/bits/mathdef.h: Likewise. + * sysdeps/generic/i386/fpu/mathdef.h: Likewise. + * sysdeps/generic/m68k/fpu/mathdef.h: Likewise. + * sysdeps/generic/powerpc/bits/mathdef.h: Likewise. + * sysdeps/generic/sparc/fpu/bits/mathdef.h: Likewise. + +1998-11-10 Andreas Jaeger <aj@arthur.rhein-neckar.de> + + * sysdeps/i386/fpu/bits/mathdef.h: Allow direct inclusion by + <complex.h>. + * sysdeps/alpha/fpu/bits/mathdef.h: Likewise. + * sysdeps/generic/bits/mathdef.h: Likewise. + * sysdeps/m68k/fpu/bits/mathdef.h: Likewise. + * sysdeps/powerpc/bits/mathdef.h: Likewise. + * sysdeps/sparc/fpu/bits/mathdef.h: Likewise. + +1998-11-09 Ulrich Drepper <drepper@cygnus.com> + + * extra-lib.mk: Fix typo in last change. * math/complex.h: Include bits/mathdef.h to get __NO_LONG_DOUBLE_MATH is needed. diff --git a/bits/mathdef.h b/bits/mathdef.h index b034c5c99d..0d1c4d7374 100644 --- a/bits/mathdef.h +++ b/bits/mathdef.h @@ -16,11 +16,11 @@ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef _MATH_H +if !defined _MATH_H && !defined _COMPLEX_H # error "Never use <bits/mathdef.h> directly; include <math.h> instead" #endif -#ifdef __USE_ISOC9X +#if defined __USE_ISOC9X && defined _MATH_H /* Normally, there is no long double type and the `float' and `double' expressions are evaluated as `double'. */ typedef double float_t; /* `float' expressions are evaluated as @@ -44,6 +44,8 @@ typedef double double_t; /* `double' expressions are evaluated as #endif /* ISO C 9X */ +#ifndef __NO_LONG_DOUBLE_MATH /* Signal that we do not really have a `long double'. The disables the declaration of all the `long double' function variants. */ -#define __NO_LONG_DOUBLE_MATH 1 +# define __NO_LONG_DOUBLE_MATH 1 +#endif diff --git a/extra-lib.mk b/extra-lib.mk index e33f958ad7..6216ce9e3b 100644 --- a/extra-lib.mk +++ b/extra-lib.mk @@ -47,7 +47,7 @@ endif # Use o-iterator.mk to generate a rule for each flavor of library. -ifneq (,$(filter-out .os,$(object-suffices-$(lib)))) +ifneq (,$(filter-out .os,$(object-suffixes-$(lib)))) define o-iterator-doit $(objpfx)$(patsubst %,$(libtype$o),$(lib:lib%=%)): \ $(patsubst %,$(objpfx)%$o,\ diff --git a/math/cabs.c b/math/cabs.c index cf775ded95..e91258c1dc 100644 --- a/math/cabs.c +++ b/math/cabs.c @@ -1,5 +1,5 @@ /* Return the complex absolute value of double complex value. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -22,7 +22,7 @@ #include <math.h> double -__cabs (double complex z) +__cabs (double _Complex z) { return __hypot (__real__ z, __imag__ z); } diff --git a/math/cabsf.c b/math/cabsf.c index 2ea2660d97..ea02b8f38a 100644 --- a/math/cabsf.c +++ b/math/cabsf.c @@ -1,5 +1,5 @@ /* Return the complex absolute value of float complex value. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -22,7 +22,7 @@ #include <math.h> float -__cabsf (float complex z) +__cabsf (float _Complex z) { return __hypotf (__real__ z, __imag__ z); } diff --git a/math/cabsl.c b/math/cabsl.c index 1f3554cef2..15e1274990 100644 --- a/math/cabsl.c +++ b/math/cabsl.c @@ -1,5 +1,5 @@ /* Return the complex absolute value of long double complex value. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -22,7 +22,7 @@ #include <math.h> long double -__cabsl (long double complex z) +__cabsl (long double _Complex z) { return __hypotl (__real__ z, __imag__ z); } diff --git a/math/cimag.c b/math/cimag.c index 13efa1476e..ddd9b00708 100644 --- a/math/cimag.c +++ b/math/cimag.c @@ -1,5 +1,5 @@ /* Return imaginary part of complex double value. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -21,7 +21,7 @@ #include <complex.h> double -__cimag (double complex z) +__cimag (double _Complex z) { return __imag__ z; } diff --git a/math/cimagf.c b/math/cimagf.c index 8edb4e613e..bef73eb46d 100644 --- a/math/cimagf.c +++ b/math/cimagf.c @@ -1,5 +1,5 @@ /* Return imaginary part of complex float value. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -21,7 +21,7 @@ #include <complex.h> float -__cimagf (float complex z) +__cimagf (float _Complex z) { return __imag__ z; } diff --git a/math/cimagl.c b/math/cimagl.c index 9c58899274..b033413a0f 100644 --- a/math/cimagl.c +++ b/math/cimagl.c @@ -1,5 +1,5 @@ /* Return imaginary part of complex long double value. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -21,7 +21,7 @@ #include <complex.h> long double -__cimagl (long double complex z) +__cimagl (long double _Complex z) { return __imag__ z; } diff --git a/math/conj.c b/math/conj.c index c15c417e4c..368c169274 100644 --- a/math/conj.c +++ b/math/conj.c @@ -1,5 +1,5 @@ /* Return complex conjugate of complex double value. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -20,8 +20,8 @@ #include <complex.h> -double complex -__conj (double complex z) +double _Complex +__conj (double _Complex z) { return ~z; } diff --git a/math/conjf.c b/math/conjf.c index 828edaf2b7..5a3329acce 100644 --- a/math/conjf.c +++ b/math/conjf.c @@ -1,5 +1,5 @@ /* Return complex conjugate of complex float value. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -20,8 +20,8 @@ #include <complex.h> -float complex -__conjf (float complex z) +float _Complex +__conjf (float _Complex z) { return ~z; } diff --git a/math/conjl.c b/math/conjl.c index 9e44dc32a1..6a4e105306 100644 --- a/math/conjl.c +++ b/math/conjl.c @@ -1,5 +1,5 @@ /* Return complex conjugate of complex long double value. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -20,8 +20,8 @@ #include <complex.h> -long double complex -__conjl (long double complex z) +long double _Complex +__conjl (long double _Complex z) { return ~z; } diff --git a/math/creal.c b/math/creal.c index c3ec4f7802..09d9185ab5 100644 --- a/math/creal.c +++ b/math/creal.c @@ -1,5 +1,5 @@ /* Return real part of complex double value. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -21,7 +21,7 @@ #include <complex.h> double -__creal (double complex z) +__creal (double _Complex z) { return __real__ z; } diff --git a/math/crealf.c b/math/crealf.c index bb9c2c1418..3930e4fca8 100644 --- a/math/crealf.c +++ b/math/crealf.c @@ -1,5 +1,5 @@ /* Return real part of complex float value. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -21,7 +21,7 @@ #include <complex.h> float -__crealf (float complex z) +__crealf (float _Complex z) { return __real__ z; } diff --git a/math/creall.c b/math/creall.c index 0ab1aab2cb..fe485bb1b4 100644 --- a/math/creall.c +++ b/math/creall.c @@ -1,5 +1,5 @@ /* Return real part of complex long double value. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -21,7 +21,7 @@ #include <complex.h> long double -__creall (long double complex z) +__creall (long double _Complex z) { return __real__ z; } diff --git a/sysdeps/alpha/fpu/bits/mathdef.h b/sysdeps/alpha/fpu/bits/mathdef.h index 2ff626d089..5ee9644469 100644 --- a/sysdeps/alpha/fpu/bits/mathdef.h +++ b/sysdeps/alpha/fpu/bits/mathdef.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997 Free Software Foundation, Inc. +/* Copyright (C) 1997, 1998 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 @@ -16,56 +16,65 @@ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef _MATH_H +#if !defined _MATH_H && !defined _COMPLEX_H # error "Never use <bits/mathdef.h> directly; include <math.h> instead" #endif /* FIXME! This file describes properties of the compiler, not the machine; it should not be part of libc! */ -#ifdef __GNUC__ -# if __STDC__ == 1 +#if defined __USE_ISOC9X && defined _MATH_H +# ifdef __GNUC__ +# if __STDC__ == 1 /* In GNU or ANSI mode, gcc leaves `float' expressions as-is. */ typedef float float_t; typedef double double_t; /* Signal that types stay as they were declared. */ -# define FLT_EVAL_METHOD 0 +# define FLT_EVAL_METHOD 0 /* Define `INFINITY' as value of type `float'. */ -# define INFINITY HUGE_VALF +# define INFINITY HUGE_VALF -# else +# else /* For `gcc -traditional', `float' expressions are evaluated as `double'. */ typedef double float_t; typedef double double_t; /* Signal that both types are `double'. */ -# define FLT_EVAL_METHOD 1 +# define FLT_EVAL_METHOD 1 /* Define `INFINITY' as value of type `float'. */ -# define INFINITY HUGE_VALF +# define INFINITY HUGE_VALF -# endif -#else +# endif +# else /* Wild guess at types for float_t and double_t. */ typedef double float_t; typedef double double_t; /* Strange compiler, we don't know how it works. */ -# define FLT_EVAL_METHOD -1 +# define FLT_EVAL_METHOD -1 /* Define `INFINITY' as value of type `float'. */ -# define INFINITY HUGE_VALF +# define INFINITY HUGE_VALF -#endif +# endif /* The values returned by `ilogb' for 0 and NaN respectively. */ -#define FP_ILOGB0 0x80000001 -#define FP_ILOGBNAN 0x7fffffff +# define FP_ILOGB0 0x80000001 +# define FP_ILOGBNAN 0x7fffffff /* Number of decimal digits for the `double' type. */ -#define DECIMAL_DIG 15 +# define DECIMAL_DIG 15 + +#endif /* ISO C 9X */ + +#ifndef __NO_LONG_DOUBLE_MATH +/* Signal that we do not really have a `long double'. The disables the + declaration of all the `long double' function variants. */ +# define __NO_LONG_DOUBLE_MATH 1 +#endif diff --git a/sysdeps/generic/bits/mathdef.h b/sysdeps/generic/bits/mathdef.h index b034c5c99d..0d1c4d7374 100644 --- a/sysdeps/generic/bits/mathdef.h +++ b/sysdeps/generic/bits/mathdef.h @@ -16,11 +16,11 @@ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef _MATH_H +if !defined _MATH_H && !defined _COMPLEX_H # error "Never use <bits/mathdef.h> directly; include <math.h> instead" #endif -#ifdef __USE_ISOC9X +#if defined __USE_ISOC9X && defined _MATH_H /* Normally, there is no long double type and the `float' and `double' expressions are evaluated as `double'. */ typedef double float_t; /* `float' expressions are evaluated as @@ -44,6 +44,8 @@ typedef double double_t; /* `double' expressions are evaluated as #endif /* ISO C 9X */ +#ifndef __NO_LONG_DOUBLE_MATH /* Signal that we do not really have a `long double'. The disables the declaration of all the `long double' function variants. */ -#define __NO_LONG_DOUBLE_MATH 1 +# define __NO_LONG_DOUBLE_MATH 1 +#endif diff --git a/sysdeps/i386/fpu/bits/mathdef.h b/sysdeps/i386/fpu/bits/mathdef.h index 7dec1ab222..61d4ef3610 100644 --- a/sysdeps/i386/fpu/bits/mathdef.h +++ b/sysdeps/i386/fpu/bits/mathdef.h @@ -16,11 +16,11 @@ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef _MATH_H +#if !defined _MATH_H && !defined _COMPLEX_H # error "Never use <bits/mathdef.h> directly; include <math.h> instead" #endif -#ifdef __USE_ISOC9X +#if defined __USE_ISOC9X && defined _MATH_H /* The ix87 FPUs evaluate all values in the 80 bit floating-point format which is also available for the user as `long double'. Therefore we define: */ diff --git a/sysdeps/m68k/fpu/bits/mathdef.h b/sysdeps/m68k/fpu/bits/mathdef.h index 5bad57bcc3..250f0f3929 100644 --- a/sysdeps/m68k/fpu/bits/mathdef.h +++ b/sysdeps/m68k/fpu/bits/mathdef.h @@ -16,11 +16,11 @@ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef _MATH_H +#if !defined _MATH_H && !defined _COMPLEX_H # error "Never use <bits/mathdef.h> directly; include <math.h> instead" #endif -#ifdef __USE_ISOC9X +#if defined __USE_ISOC9X && defined _MATH_H /* The m68k FPUs evaluate all values in the 96 bit floating-point format which is also available for the user as `long double'. Therefore we define: */ diff --git a/sysdeps/powerpc/bits/mathdef.h b/sysdeps/powerpc/bits/mathdef.h index 3923a5401a..1dcd2e7714 100644 --- a/sysdeps/powerpc/bits/mathdef.h +++ b/sysdeps/powerpc/bits/mathdef.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997 Free Software Foundation, Inc. +/* Copyright (C) 1997, 1998 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 @@ -16,7 +16,7 @@ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef _MATH_H +#if !defined _MATH_H && !defined _COMPLEX_H # error "Never use <bits/mathdef.h> directly; include <math.h> instead" #endif @@ -27,8 +27,9 @@ FIXME! This file does not deal with the -fshort-double option of gcc! */ -#ifdef __GNUC__ -# if __STDC__ == 1 +#if defined __USE_ISOC9X && defined _MATH_H +# ifdef __GNUC__ +# if __STDC__ == 1 /* In GNU or ANSI mode, gcc leaves `float' expressions as-is. */ typedef float float_t; /* `float' expressions are evaluated as @@ -37,12 +38,12 @@ typedef double double_t; /* `double' expressions are evaluated as `double'. */ /* Signal that types stay as they were declared. */ -# define FLT_EVAL_METHOD 0 +# define FLT_EVAL_METHOD 0 /* Define `INFINITY' as value of type `float'. */ -# define INFINITY HUGE_VALF +# define INFINITY HUGE_VALF -# else +# else /* For `gcc -traditional', `float' expressions are evaluated as `double'. */ typedef double float_t; /* `float' expressions are evaluated as @@ -51,29 +52,37 @@ typedef double double_t; /* `double' expressions are evaluated as `double'. */ /* Signal that both types are `double'. */ -# define FLT_EVAL_METHOD 1 +# define FLT_EVAL_METHOD 1 /* Define `INFINITY' as value of type `float'. */ -# define INFINITY HUGE_VALF +# define INFINITY HUGE_VALF -# endif -#else +# endif +# else /* Wild guess at types for float_t and double_t. */ typedef double float_t; typedef double double_t; /* Strange compiler, we don't know how it works. */ -# define FLT_EVAL_METHOD -1 +# define FLT_EVAL_METHOD -1 /* Define `INFINITY' as value of type `float'. */ -# define INFINITY HUGE_VALF +# define INFINITY HUGE_VALF -#endif +# endif /* The values returned by `ilogb' for 0 and NaN respectively. */ -#define FP_ILOGB0 0x80000001 -#define FP_ILOGBNAN 0x7fffffff +# define FP_ILOGB0 0x80000001 +# define FP_ILOGBNAN 0x7fffffff /* Number of decimal digits for the `double' type. */ -#define DECIMAL_DIG 15 +# define DECIMAL_DIG 15 + +#endif /* ISO C 9X */ + +#ifndef __NO_LONG_DOUBLE_MATH +/* Signal that we do not really have a `long double'. The disables the + declaration of all the `long double' function variants. */ +# define __NO_LONG_DOUBLE_MATH 1 +#endif diff --git a/sysdeps/sparc/fpu/bits/mathdef.h b/sysdeps/sparc/fpu/bits/mathdef.h index 135531067b..c1727b66bb 100644 --- a/sysdeps/sparc/fpu/bits/mathdef.h +++ b/sysdeps/sparc/fpu/bits/mathdef.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997 Free Software Foundation, Inc. +/* Copyright (C) 1997, 1998 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 @@ -16,56 +16,65 @@ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef _MATH_H +#if !defined _MATH_H && !defined _COMPLEX_H # error "Never use <bits/mathdef.h> directly; include <math.h> instead" #endif /* FIXME! This file describes properties of the compiler, not the machine; it should not be part of libc! */ -#ifdef __GNUC__ -# if __STDC__ == 1 +#if defined __USE_ISOC9X && defined _MATH_H +# ifdef __GNUC__ +# if __STDC__ == 1 /* In GNU or ANSI mode, gcc leaves `float' expressions as-is. */ typedef float float_t; typedef double double_t; /* Signal that types stay as they were declared. */ -# define FLT_EVAL_METHOD 0 +# define FLT_EVAL_METHOD 0 /* Define `INFINITY' as value of type `float'. */ -# define INFINITY HUGE_VALF +# define INFINITY HUGE_VALF -# else +# else /* For `gcc -traditional', `float' expressions are evaluated as `double'. */ typedef double float_t; typedef double double_t; /* Signal that both types are `double'. */ -# define FLT_EVAL_METHOD 1 +# define FLT_EVAL_METHOD 1 /* Define `INFINITY' as value of type `float'. */ -# define INFINITY HUGE_VALF +# define INFINITY HUGE_VALF -# endif -#else +# endif +# else /* Wild guess at types for float_t and double_t. */ typedef double float_t; typedef double double_t; /* Strange compiler, we don't know how it works. */ -# define FLT_EVAL_METHOD -1 +# define FLT_EVAL_METHOD -1 /* Define `INFINITY' as value of type `float'. */ -# define INFINITY HUGE_VALF +# define INFINITY HUGE_VALF -#endif +# endif /* The values returned by `ilogb' for 0 and NaN respectively. */ -#define FP_ILOGB0 0x80000001 -#define FP_ILOGBNAN 0x7fffffff +# define FP_ILOGB0 0x80000001 +# define FP_ILOGBNAN 0x7fffffff /* Number of decimal digits for the `double' type. */ -#define DECIMAL_DIG 15 +# define DECIMAL_DIG 15 + +#endif /* ISO C 9X */ + +#ifndef __NO_LONG_DOUBLE_MATH +/* Signal that we do not really have a `long double'. The disables the + declaration of all the `long double' function variants. */ +# define __NO_LONG_DOUBLE_MATH 1 +#endif |