This is the mail archive of the
gcc-prs@gcc.gnu.org
mailing list for the GCC project.
Re: c/903: gcc compiler cannot find log10 function
- To: nobody at gcc dot gnu dot org
- Subject: Re: c/903: gcc compiler cannot find log10 function
- From: "Tim Prince" <tprince at computer dot org>
- Date: 27 Nov 2000 14:36:01 -0000
- Cc: gcc-prs at gcc dot gnu dot org,
- Reply-To: "Tim Prince" <tprince at computer dot org>
The following reply was made to PR c/903; it has been noted by GNATS.
From: "Tim Prince" <tprince@computer.org>
To: <aach@genetics.med.harvard.edu>, <gcc-gnats@gcc.gnu.org>
Cc:
Subject: Re: c/903: gcc compiler cannot find log10 function
Date: Mon, 27 Nov 2000 06:31:09 -0800
If you consider as a bug the traditional documented behavior of C compilers
for the last 35 years, requiring -lm to link the math library, you should
stick with C++.
----- Original Message -----
From: <aach@genetics.med.harvard.edu>
To: <gcc-gnats@gcc.gnu.org>
Sent: Monday, November 27, 2000 4:58 AM
Subject: c/903: gcc compiler cannot find log10 function
>
> >Number: 903
> >Category: c
> >Synopsis: gcc compiler cannot find log10 function
> >Confidential: no
> >Severity: non-critical
> >Priority: medium
> >Responsible: unassigned
> >State: open
> >Class: rejects-legal
> >Submitter-Id: net
> >Arrival-Date: Mon Nov 27 05:06:02 PST 2000
> >Closed-Date:
> >Last-Modified:
> >Originator: John Aach
> >Release: gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2
release)
> >Organization:
> >Environment:
> RedHat linux 6.0 running on a Pentium III processor.
> >Description:
> gcc does not compile programs containing references to the log10 function.
(g++ successfully compiles the programs.
>
> Following messages produced by command:
>
> gcc -o bug -v -save-temps bug.c
>
> where the program is simply:
>
> #include <math.h>
> int main() {
> float a;
> a = log10(10.0);
> }
> gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)
>
/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/cpp -lang-c -v -undef -D__GN
UC__=2 -D__GNUC_MINOR__=91 -D__ELF__ -Dunix -Di386 -D_i
> GNU CPP version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release) (i386
Linux/ELF)
> #include "..." search starts here:
> #include <...> search starts here:
> /usr/local/include
> /usr/i386-redhat-linux/include
> /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include
> /usr/include
> End of search list.
> /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/cc1
bug.i -quiet -dumpbase bug.c -version -o bug.s
> GNU C version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)
(i386-redhat-linux) compiled by GNU C version egcs-2.91.66 19990314/.
> as -V -Qy -o bug.o bug.s
> GNU assembler version 2.9.1 (i386-redhat-linux), using BFD version
2.9.1.0.23
> /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/collect2 -m
elf_i386 -dynamic-linker /lib/ld-linux.so.2 -o bug /usr/lib/crt1.o /uso
> bug.o: In function `main':
> bug.o(.text+0xe): undefined reference to `log10'
> collect2: ld returned 1 exit status
> >How-To-Repeat:
> all compiles with log10 fail
> >Fix:
> only fix found is to compile with g++
> >Release-Note:
> >Audit-Trail:
> >Unformatted:
> ----gnatsweb-attachment----
> Content-Type: text/plain; name="bug.i"
> Content-Disposition: inline; filename="bug.i"
>
> # 1 "bug.c"
> # 1 "/usr/include/math.h" 1 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 1 "/usr/include/features.h" 1 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 137 "/usr/include/features.h" 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 195 "/usr/include/features.h" 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 1 "/usr/include/sys/cdefs.h" 1 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 71 "/usr/include/sys/cdefs.h" 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 103 "/usr/include/sys/cdefs.h" 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 249 "/usr/include/features.h" 2 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 1 "/usr/include/gnu/stubs.h" 1 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 277 "/usr/include/features.h" 2 3
>
>
>
>
> # 27 "/usr/include/math.h" 2 3
>
>
>
>
>
>
> # 1 "/usr/include/bits/huge_val.h" 1 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 68 "/usr/include/bits/huge_val.h" 3
>
> # 33 "/usr/include/math.h" 2 3
>
>
>
>
>
>
>
> # 1 "/usr/include/bits/mathdef.h" 1 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 45 "/usr/include/bits/mathdef.h" 3
>
> # 40 "/usr/include/math.h" 2 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 1 "/usr/include/bits/mathcalls.h" 1 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> extern double acos (double __x) ; extern double
__acos (double __x) ;
>
> extern double asin (double __x) ; extern double
__asin (double __x) ;
>
> extern double atan (double __x) ; extern double
__atan (double __x) ;
>
> extern double atan2 (double __y, double __x) ;
extern double __atan2 (double __y, double __x) ;
>
>
> extern double cos (double __x) ; extern double
__cos (double __x) ;
>
> extern double sin (double __x) ; extern double
__sin (double __x) ;
>
> extern double tan (double __x) ; extern double
__tan (double __x) ;
>
>
>
>
>
>
>
>
>
>
> extern double cosh (double __x) ; extern double
__cosh (double __x) ;
>
> extern double sinh (double __x) ; extern double
__sinh (double __x) ;
>
> extern double tanh (double __x) ; extern double
__tanh (double __x) ;
>
>
>
> extern double acosh (double __x) ; extern double
__acosh (double __x) ;
>
> extern double asinh (double __x) ; extern double
__asinh (double __x) ;
>
> extern double atanh (double __x) ; extern double
__atanh (double __x) ;
>
>
>
>
>
> extern double exp (double __x) ; extern double
__exp (double __x) ;
>
>
>
>
>
>
>
>
>
> extern double frexp (double __x, int *__exponent)
; extern double __frexp (double __x, int *__exponent)
;
>
>
> extern double ldexp (double __x, int __exponent) ;
extern double __ldexp (double __x, int __exponent)
;
>
>
> extern double log (double __x) ; extern double
__log (double __x) ;
>
>
> extern double log10 (double __x) ; extern double
__log10 (double __x) ;
>
>
> extern double modf (double __x, double *__iptr) ;
extern double __modf (double __x, double *__iptr)
;
>
>
>
> extern double expm1 (double __x) ; extern double
__expm1 (double __x) ;
>
>
> extern double log1p (double __x) ; extern double
__log1p (double __x) ;
>
>
> extern double logb (double __x) ; extern double
__logb (double __x) ;
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> extern double pow (double __x, double __y) ;
extern double __pow (double __x, double __y) ;
>
>
> extern double sqrt (double __x) ; extern double
__sqrt (double __x) ;
>
>
>
> extern double hypot (double __x, double __y) ;
extern double __hypot (double __x, double __y) ;
>
>
>
>
> extern double cbrt (double __x) ; extern double
__cbrt (double __x) ;
>
>
>
>
>
>
> extern double ceil (double __x) ; extern double
__ceil (double __x) ;
>
>
> extern double fabs (double __x) __attribute__
( (__const__) ); extern double __fabs (double __x)
__attribute__ ( (__const__) ) ;
>
>
> extern double floor (double __x) ; extern double
__floor (double __x) ;
>
>
> extern double fmod (double __x, double __y) ;
extern double __fmod (double __x, double __y) ;
>
>
>
>
> extern int __isinf (double __value) __attribute__
((__const__));
>
>
>
>
> extern int isinf (double __value) __attribute__
((__const__));
>
>
> extern int finite (double __value) __attribute__ (
(__const__) ); extern int __finite (double __value)
__attribute__ ( (__const__) ) ;
>
>
>
>
>
>
>
> extern double infnan (int __error) __attribute__
( (__const__) ); extern double __infnan (int __error)
__attribute__ ( (__const__) ) ;
>
>
> extern double drem (double __x, double __y) ;
extern double __drem (double __x, double __y) ;
>
>
>
> extern double significand (double __x) ; extern
double __significand (double __x) ;
>
>
>
>
> extern double copysign (double __x, double __y)
__attribute__ ( (__const__) ); extern double __copysign
(double __x, double __y) __attribute__ ( (__const__) ) ;
>
>
>
>
>
>
>
>
>
>
> extern int isnan (double __value) __attribute__ (
(__const__) ); extern int __isnan (double __value)
__attribute__ ( (__const__) ) ;
>
>
> extern double j0 (double ) ; extern double
__j0 (double ) ;
> extern double j1 (double ) ; extern double
__j1 (double ) ;
> extern double jn (int, double ) ; extern double
__jn (int, double ) ;
> extern double y0 (double ) ; extern double
__y0 (double ) ;
> extern double y1 (double ) ; extern double
__y1 (double ) ;
> extern double yn (int, double ) ; extern double
__yn (int, double ) ;
>
>
>
>
>
> extern double erf (double ) ; extern double
__erf (double ) ;
> extern double erfc (double ) ; extern double
__erfc (double ) ;
> extern double lgamma (double ) ; extern double
__lgamma (double ) ;
> extern double tgamma (double ) ; extern double
__tgamma (double ) ;
>
>
>
>
> extern double gamma (double ) ; extern double
__gamma (double ) ;
>
>
>
>
>
>
> extern double lgamma_r (double , int *__signgamp)
; extern double __lgamma_r (double , int *__signgamp)
;
>
>
>
>
>
>
> extern double rint (double __x) ; extern double
__rint (double __x) ;
>
>
> extern double nextafter (double __x, double __y)
__attribute__ ( (__const__) ); extern double __nextafter
(double __x, double __y) __attribute__ ( (__const__) ) ;
>
>
>
>
>
> extern double remainder (double __x, double __y)
; extern double __remainder (double __x, double __y)
;
>
>
>
> extern double scalb (double __x, double __n) ;
extern double __scalb (double __x, double __n) ;
>
>
>
> extern double scalbn (double __x, int __n) ;
extern double __scalbn (double __x, int __n) ;
>
>
> extern int ilogb (double __x) ; extern int
__ilogb (double __x) ;
>
>
> # 330 "/usr/include/bits/mathcalls.h" 3
>
> # 63 "/usr/include/math.h" 2 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 1 "/usr/include/bits/mathcalls.h" 1 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> extern float acosf (float __x) ; extern float
__acosf (float __x) ;
>
> extern float asinf (float __x) ; extern float
__asinf (float __x) ;
>
> extern float atanf (float __x) ; extern float
__atanf (float __x) ;
>
> extern float atan2f (float __y, float __x) ;
extern float __atan2f (float __y, float __x) ;
>
>
> extern float cosf (float __x) ; extern float
__cosf (float __x) ;
>
> extern float sinf (float __x) ; extern float
__sinf (float __x) ;
>
> extern float tanf (float __x) ; extern float
__tanf (float __x) ;
>
>
>
>
>
>
>
>
>
>
> extern float coshf (float __x) ; extern float
__coshf (float __x) ;
>
> extern float sinhf (float __x) ; extern float
__sinhf (float __x) ;
>
> extern float tanhf (float __x) ; extern float
__tanhf (float __x) ;
>
>
>
> extern float acoshf (float __x) ; extern float
__acoshf (float __x) ;
>
> extern float asinhf (float __x) ; extern float
__asinhf (float __x) ;
>
> extern float atanhf (float __x) ; extern float
__atanhf (float __x) ;
>
>
>
>
>
> extern float expf (float __x) ; extern float
__expf (float __x) ;
>
>
>
>
>
>
>
>
>
> extern float frexpf (float __x, int *__exponent) ;
extern float __frexpf (float __x, int *__exponent)
;
>
>
> extern float ldexpf (float __x, int __exponent) ;
extern float __ldexpf (float __x, int __exponent) ;
>
>
> extern float logf (float __x) ; extern float
__logf (float __x) ;
>
>
> extern float log10f (float __x) ; extern float
__log10f (float __x) ;
>
>
> extern float modff (float __x, float *__iptr) ;
extern float __modff (float __x, float *__iptr) ;
>
>
>
> extern float expm1f (float __x) ; extern float
__expm1f (float __x) ;
>
>
> extern float log1pf (float __x) ; extern float
__log1pf (float __x) ;
>
>
> extern float logbf (float __x) ; extern float
__logbf (float __x) ;
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> extern float powf (float __x, float __y) ;
extern float __powf (float __x, float __y) ;
>
>
> extern float sqrtf (float __x) ; extern float
__sqrtf (float __x) ;
>
>
>
> extern float hypotf (float __x, float __y) ;
extern float __hypotf (float __x, float __y) ;
>
>
>
>
> extern float cbrtf (float __x) ; extern float
__cbrtf (float __x) ;
>
>
>
>
>
>
> extern float ceilf (float __x) ; extern float
__ceilf (float __x) ;
>
>
> extern float fabsf (float __x) __attribute__
( (__const__) ); extern float __fabsf (float __x)
__attribute__ ( (__const__) ) ;
>
>
> extern float floorf (float __x) ; extern float
__floorf (float __x) ;
>
>
> extern float fmodf (float __x, float __y) ;
extern float __fmodf (float __x, float __y) ;
>
>
>
>
> extern int __isinff (float __value) __attribute__
((__const__));
>
>
>
>
> extern int isinff (float __value) __attribute__ ((__const__));
>
>
> extern int finitef (float __value) __attribute__ (
(__const__) ); extern int __finitef (float __value)
__attribute__ ( (__const__) ) ;
>
>
>
>
>
>
>
> extern float infnanf (int __error) __attribute__
( (__const__) ); extern float __infnanf (int __error)
__attribute__ ( (__const__) ) ;
>
>
> extern float dremf (float __x, float __y) ;
extern float __dremf (float __x, float __y) ;
>
>
>
> extern float significandf (float __x) ; extern
float __significandf (float __x) ;
>
>
>
>
> extern float copysignf (float __x, float __y)
__attribute__ ( (__const__) ); extern float __copysignf
(float __x, float __y) __attribute__ ( (__const__) ) ;
>
>
>
>
>
>
>
>
>
>
> extern int isnanf (float __value) __attribute__ (
(__const__) ); extern int __isnanf (float __value)
__attribute__ ( (__const__) ) ;
>
>
> extern float j0f (float ) ; extern float
__j0f (float ) ;
> extern float j1f (float ) ; extern float
__j1f (float ) ;
> extern float jnf (int, float ) ; extern float
__jnf (int, float ) ;
> extern float y0f (float ) ; extern float
__y0f (float ) ;
> extern float y1f (float ) ; extern float
__y1f (float ) ;
> extern float ynf (int, float ) ; extern float
__ynf (int, float ) ;
>
>
>
>
>
> extern float erff (float ) ; extern float
__erff (float ) ;
> extern float erfcf (float ) ; extern float
__erfcf (float ) ;
> extern float lgammaf (float ) ; extern float
__lgammaf (float ) ;
> extern float tgammaf (float ) ; extern float
__tgammaf (float ) ;
>
>
>
>
> extern float gammaf (float ) ; extern float
__gammaf (float ) ;
>
>
>
>
>
>
> extern float lgammaf_r (float , int *__signgamp)
; extern float __lgammaf_r (float , int *__signgamp)
;
>
>
>
>
>
>
> extern float rintf (float __x) ; extern float
__rintf (float __x) ;
>
>
> extern float nextafterf (float __x, float __y)
__attribute__ ( (__const__) ); extern float __nextafterf
(float __x, float __y) __attribute__ ( (__const__) ) ;
>
>
>
>
>
> extern float remainderf (float __x, float __y) ;
extern float __remainderf (float __x, float __y)
;
>
>
>
> extern float scalbf (float __x, float __n) ;
extern float __scalbf (float __x, float __n) ;
>
>
>
> extern float scalbnf (float __x, int __n) ; extern
float __scalbnf (float __x, int __n) ;
>
>
> extern int ilogbf (float __x) ; extern int
__ilogbf (float __x) ;
>
>
> # 330 "/usr/include/bits/mathcalls.h" 3
>
> # 82 "/usr/include/math.h" 2 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 1 "/usr/include/bits/mathcalls.h" 1 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> extern long double acosl (long double __x) ;
extern long double __acosl (long double __x) ;
>
> extern long double asinl (long double __x) ;
extern long double __asinl (long double __x) ;
>
> extern long double atanl (long double __x) ;
extern long double __atanl (long double __x) ;
>
> extern long double atan2l (long double __y, long
double __x) ; extern long double __atan2l (long
double __y, long double __x) ;
>
>
> extern long double cosl (long double __x) ; extern
long double __cosl (long double __x) ;
>
> extern long double sinl (long double __x) ; extern
long double __sinl (long double __x) ;
>
> extern long double tanl (long double __x) ; extern
long double __tanl (long double __x) ;
>
>
>
>
>
>
>
>
>
>
> extern long double coshl (long double __x) ;
extern long double __coshl (long double __x) ;
>
> extern long double sinhl (long double __x) ;
extern long double __sinhl (long double __x) ;
>
> extern long double tanhl (long double __x) ;
extern long double __tanhl (long double __x) ;
>
>
>
> extern long double acoshl (long double __x) ;
extern long double __acoshl (long double __x) ;
>
> extern long double asinhl (long double __x) ;
extern long double __asinhl (long double __x) ;
>
> extern long double atanhl (long double __x) ;
extern long double __atanhl (long double __x) ;
>
>
>
>
>
> extern long double expl (long double __x) ; extern
long double __expl (long double __x) ;
>
>
>
>
>
>
>
>
>
> extern long double frexpl (long double __x, int
*__exponent) ; extern long double __frexpl (long double
__x, int *__exponent) ;
>
>
> extern long double ldexpl (long double __x, int
__exponent) ; extern long double __ldexpl (long double
__x, int __exponent) ;
>
>
> extern long double logl (long double __x) ; extern
long double __logl (long double __x) ;
>
>
> extern long double log10l (long double __x) ;
extern long double __log10l (long double __x) ;
>
>
> extern long double modfl (long double __x, long
double *__iptr) ; extern long double __modfl (long
double __x, long double *__iptr) ;
>
>
>
> extern long double expm1l (long double __x) ;
extern long double __expm1l (long double __x) ;
>
>
> extern long double log1pl (long double __x) ;
extern long double __log1pl (long double __x) ;
>
>
> extern long double logbl (long double __x) ;
extern long double __logbl (long double __x) ;
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> extern long double powl (long double __x, long double
__y) ; extern long double __powl (long double __x,
long double __y) ;
>
>
> extern long double sqrtl (long double __x) ;
extern long double __sqrtl (long double __x) ;
>
>
>
> extern long double hypotl (long double __x, long
double __y) ; extern long double __hypotl (long
double __x, long double __y) ;
>
>
>
>
> extern long double cbrtl (long double __x) ;
extern long double __cbrtl (long double __x) ;
>
>
>
>
>
>
> extern long double ceill (long double __x) ;
extern long double __ceill (long double __x) ;
>
>
> extern long double fabsl (long double __x)
__attribute__ ( (__const__) ); extern long double __fabsl
(long double __x) __attribute__ ( (__const__) ) ;
>
>
> extern long double floorl (long double __x) ;
extern long double __floorl (long double __x) ;
>
>
> extern long double fmodl (long double __x, long
double __y) ; extern long double __fmodl (long double
__x, long double __y) ;
>
>
>
>
> extern int __isinfl (long double __value) __attribute__
((__const__));
>
>
>
>
> extern int isinfl (long double __value) __attribute__
((__const__));
>
>
> extern int finitel (long double __value) __attribute__
( (__const__) ); extern int __finitel (long double __value)
__attribute__ ( (__const__) ) ;
>
>
>
>
>
>
>
> extern long double infnanl (int __error)
__attribute__ ( (__const__) ); extern long double __infnanl
(int __error) __attribute__ ( (__const__) ) ;
>
>
> extern long double dreml (long double __x, long
double __y) ; extern long double __dreml (long double
__x, long double __y) ;
>
>
>
> extern long double significandl (long double __x)
; extern long double __significandl (long double __x)
;
>
>
>
>
> extern long double copysignl (long double __x, long
double __y) __attribute__ ( (__const__) ); extern long double
__copysignl (long double __x, long double __y) __attribute__
( (__const__) ) ;
>
>
>
>
>
>
>
>
>
>
> extern int isnanl (long double __value) __attribute__
( (__const__) ); extern int __isnanl (long double __value)
__attribute__ ( (__const__) ) ;
>
>
> extern long double j0l (long double ) ; extern
long double __j0l (long double ) ;
> extern long double j1l (long double ) ; extern
long double __j1l (long double ) ;
> extern long double jnl (int, long double ) ; extern
long double __jnl (int, long double ) ;
> extern long double y0l (long double ) ; extern
long double __y0l (long double ) ;
> extern long double y1l (long double ) ; extern
long double __y1l (long double ) ;
> extern long double ynl (int, long double ) ; extern
long double __ynl (int, long double ) ;
>
>
>
>
>
> extern long double erfl (long double ) ; extern
long double __erfl (long double ) ;
> extern long double erfcl (long double ) ; extern
long double __erfcl (long double ) ;
> extern long double lgammal (long double ) ; extern
long double __lgammal (long double ) ;
> extern long double tgammal (long double ) ; extern
long double __tgammal (long double ) ;
>
>
>
>
> extern long double gammal (long double ) ; extern
long double __gammal (long double ) ;
>
>
>
>
>
>
> extern long double lgammal_r (long double , int
*__signgamp) ; extern long double __lgammal_r (long
double , int *__signgamp) ;
>
>
>
>
>
>
> extern long double rintl (long double __x) ;
extern long double __rintl (long double __x) ;
>
>
> extern long double nextafterl (long double __x, long
double __y) __attribute__ ( (__const__) ); extern long double
__nextafterl (long double __x, long double __y)
__attribute__ ( (__const__) ) ;
>
>
>
>
>
> extern long double remainderl (long double __x, long
double __y) ; extern long double __remainderl (long
double __x, long double __y) ;
>
>
>
> extern long double scalbl (long double __x, long
double __n) ; extern long double __scalbl (long
double __x, long double __n) ;
>
>
>
> extern long double scalbnl (long double __x, int __n)
; extern long double __scalbnl (long double __x, int
__n) ;
>
>
> extern int ilogbl (long double __x) ; extern int
__ilogbl (long double __x) ;
>
>
> # 330 "/usr/include/bits/mathcalls.h" 3
>
> # 99 "/usr/include/math.h" 2 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> extern int signgam;
>
>
>
>
> # 232 "/usr/include/math.h" 3
>
>
>
>
> typedef enum
> {
> _IEEE_ = -1,
> _SVID_,
> _XOPEN_,
> _POSIX_,
> _ISOC_
> } _LIB_VERSION_TYPE;
>
>
>
>
> extern _LIB_VERSION_TYPE _LIB_VERSION;
>
>
>
>
>
>
>
>
>
>
>
>
> struct exception
>
> {
> int type;
> char *name;
> double arg1;
> double arg2;
> double retval;
> };
>
>
>
>
> extern int matherr (struct exception *__exc) ;
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 1 "/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/float.h" 1 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> union __convert_long_double {
> unsigned __convert_long_double_i[4];
> long double __convert_long_double_d;
> };
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 289 "/usr/include/math.h" 2 3
>
>
> # 299 "/usr/include/math.h" 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 336 "/usr/include/math.h" 3
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> # 407 "/usr/include/math.h" 3
>
>
>
>
>
>
> # 1 "bug.c" 2
>
> int main() {
> float a;
> a = log10(10.0);
> }