Fix style bugs (mostly remove 'extern' from function prototypes)

Inspired by: conversation with bde
This commit is contained in:
Alexey Zelkin 2001-12-13 17:22:17 +00:00
parent 4b667ee0db
commit ef1ee63e3c
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=87805
2 changed files with 196 additions and 192 deletions

View File

@ -15,7 +15,7 @@
*/
#ifndef _MATH_H_
#define _MATH_H_
#define _MATH_H_
/*
* ANSI/POSIX
@ -97,168 +97,167 @@ struct exception {
#include <sys/cdefs.h>
__BEGIN_DECLS
/*
* ANSI/POSIX
*/
extern double acos __P((double));
extern double asin __P((double));
extern double atan __P((double));
extern double atan2 __P((double, double));
extern double cos __P((double));
extern double sin __P((double));
extern double tan __P((double));
__BEGIN_DECLS
double acos __P((double));
double asin __P((double));
double atan __P((double));
double atan2 __P((double, double));
double cos __P((double));
double sin __P((double));
double tan __P((double));
extern double cosh __P((double));
extern double sinh __P((double));
extern double tanh __P((double));
double cosh __P((double));
double sinh __P((double));
double tanh __P((double));
extern double exp __P((double));
extern double frexp __P((double, int *));
extern double ldexp __P((double, int));
extern double log __P((double));
extern double log10 __P((double));
extern double modf __P((double, double *));
double exp __P((double));
double frexp __P((double, int *));
double ldexp __P((double, int));
double log __P((double));
double log10 __P((double));
double modf __P((double, double *));
extern double pow __P((double, double));
extern double sqrt __P((double));
double pow __P((double, double));
double sqrt __P((double));
extern double ceil __P((double));
extern double fabs __P((double));
extern double floor __P((double));
extern double fmod __P((double, double));
double ceil __P((double));
double fabs __P((double));
double floor __P((double));
double fmod __P((double, double));
#if !defined(_ANSI_SOURCE) && !defined(_POSIX_SOURCE)
extern double erf __P((double));
extern double erfc __P((double));
extern double gamma __P((double));
extern double hypot __P((double, double));
extern int isinf __P((double));
extern int isnan __P((double));
extern int finite __P((double));
extern double j0 __P((double));
extern double j1 __P((double));
extern double jn __P((int, double));
extern double lgamma __P((double));
extern double y0 __P((double));
extern double y1 __P((double));
extern double yn __P((int, double));
double erf __P((double));
double erfc __P((double));
double gamma __P((double));
double hypot __P((double, double));
int isinf __P((double));
int isnan __P((double));
int finite __P((double));
double j0 __P((double));
double j1 __P((double));
double jn __P((int, double));
double lgamma __P((double));
double y0 __P((double));
double y1 __P((double));
double yn __P((int, double));
#if !defined(_XOPEN_SOURCE)
extern double acosh __P((double));
extern double asinh __P((double));
extern double atanh __P((double));
extern double cbrt __P((double));
extern double logb __P((double));
extern double nextafter __P((double, double));
extern double remainder __P((double, double));
extern double scalb __P((double, double));
double acosh __P((double));
double asinh __P((double));
double atanh __P((double));
double cbrt __P((double));
double logb __P((double));
double nextafter __P((double, double));
double remainder __P((double, double));
double scalb __P((double, double));
#ifndef __cplusplus
extern int matherr __P((struct exception *));
int matherr __P((struct exception *));
#endif
/*
* IEEE Test Vector
*/
extern double significand __P((double));
double significand __P((double));
/*
* Functions callable from C, intended to support IEEE arithmetic.
*/
extern double copysign __P((double, double));
extern int ilogb __P((double));
extern double rint __P((double));
extern double scalbn __P((double, int));
double copysign __P((double, double));
int ilogb __P((double));
double rint __P((double));
double scalbn __P((double, int));
/*
* BSD math library entry points
*/
extern double drem __P((double, double));
extern double expm1 __P((double));
extern double log1p __P((double));
double drem __P((double, double));
double expm1 __P((double));
double log1p __P((double));
/*
* Reentrant version of gamma & lgamma; passes signgam back by reference
* as the second argument; user must allocate space for signgam.
*/
#ifdef _REENTRANT
extern double gamma_r __P((double, int *));
extern double lgamma_r __P((double, int *));
double gamma_r __P((double, int *));
double lgamma_r __P((double, int *));
#endif /* _REENTRANT */
/* float versions of ANSI/POSIX functions */
extern float acosf __P((float));
extern float asinf __P((float));
extern float atanf __P((float));
extern float atan2f __P((float, float));
extern float cosf __P((float));
extern float sinf __P((float));
extern float tanf __P((float));
float acosf __P((float));
float asinf __P((float));
float atanf __P((float));
float atan2f __P((float, float));
float cosf __P((float));
float sinf __P((float));
float tanf __P((float));
extern float coshf __P((float));
extern float sinhf __P((float));
extern float tanhf __P((float));
float coshf __P((float));
float sinhf __P((float));
float tanhf __P((float));
extern float expf __P((float));
extern float frexpf __P((float, int *));
extern float ldexpf __P((float, int));
extern float logf __P((float));
extern float log10f __P((float));
extern float modff __P((float, float *));
float expf __P((float));
float frexpf __P((float, int *));
float ldexpf __P((float, int));
float logf __P((float));
float log10f __P((float));
float modff __P((float, float *));
extern float powf __P((float, float));
extern float sqrtf __P((float));
float powf __P((float, float));
float sqrtf __P((float));
extern float ceilf __P((float));
extern float fabsf __P((float));
extern float floorf __P((float));
extern float fmodf __P((float, float));
float ceilf __P((float));
float fabsf __P((float));
float floorf __P((float));
float fmodf __P((float, float));
extern float erff __P((float));
extern float erfcf __P((float));
extern float gammaf __P((float));
extern float hypotf __P((float, float));
extern int isnanf __P((float));
extern int finitef __P((float));
extern float j0f __P((float));
extern float j1f __P((float));
extern float jnf __P((int, float));
extern float lgammaf __P((float));
extern float y0f __P((float));
extern float y1f __P((float));
extern float ynf __P((int, float));
float erff __P((float));
float erfcf __P((float));
float gammaf __P((float));
float hypotf __P((float, float));
int isnanf __P((float));
int finitef __P((float));
float j0f __P((float));
float j1f __P((float));
float jnf __P((int, float));
float lgammaf __P((float));
float y0f __P((float));
float y1f __P((float));
float ynf __P((int, float));
extern float acoshf __P((float));
extern float asinhf __P((float));
extern float atanhf __P((float));
extern float cbrtf __P((float));
extern float logbf __P((float));
extern float nextafterf __P((float, float));
extern float remainderf __P((float, float));
extern float scalbf __P((float, float));
float acoshf __P((float));
float asinhf __P((float));
float atanhf __P((float));
float cbrtf __P((float));
float logbf __P((float));
float nextafterf __P((float, float));
float remainderf __P((float, float));
float scalbf __P((float, float));
/*
* float version of IEEE Test Vector
*/
extern float significandf __P((float));
float significandf __P((float));
/*
* Float versions of functions callable from C, intended to support
* IEEE arithmetic.
*/
extern float copysignf __P((float, float));
extern int ilogbf __P((float));
extern float rintf __P((float));
extern float scalbnf __P((float, int));
float copysignf __P((float, float));
int ilogbf __P((float));
float rintf __P((float));
float scalbnf __P((float, int));
/*
* float versions of BSD math library entry points
*/
extern float dremf __P((float, float));
extern float expm1f __P((float));
extern float log1pf __P((float));
float dremf __P((float, float));
float expm1f __P((float));
float log1pf __P((float));
/*
* Float versions of reentrant version of gamma & lgamma; passes
@ -266,12 +265,12 @@ extern float log1pf __P((float));
* allocate space for signgam.
*/
#ifdef _REENTRANT
extern float gammaf_r __P((float, int *));
extern float lgammaf_r __P((float, int *));
float gammaf_r __P((float, int *));
float lgammaf_r __P((float, int *));
#endif /* _REENTRANT */
#endif /* !_XOPEN_SOURCE */
#endif /* !_ANSI_SOURCE && !_POSIX_SOURCE */
__END_DECLS
#endif /* _MATH_H_ */
#endif /* !_MATH_H_ */

View File

@ -15,24 +15,28 @@
*/
#ifndef _MATH_PRIVATE_H_
#define _MATH_PRIVATE_H_
#define _MATH_PRIVATE_H_
#include <sys/types.h>
#include <machine/endian.h>
/* The original fdlibm code used statements like:
n0 = ((*(int*)&one)>>29)^1; * index of high word *
ix0 = *(n0+(int*)&x); * high word of x *
ix1 = *((1-n0)+(int*)&x); * low word of x *
to dig two 32 bit words out of the 64 bit IEEE floating point
value. That is non-ANSI, and, moreover, the gcc instruction
scheduler gets it wrong. We instead use the following macros.
Unlike the original code, we determine the endianness at compile
time, not at run time; I don't see much benefit to selecting
endianness at run time. */
/*
* The original fdlibm code used statements like:
* n0 = ((*(int*)&one)>>29)^1; * index of high word *
* ix0 = *(n0+(int*)&x); * high word of x *
* ix1 = *((1-n0)+(int*)&x); * low word of x *
* to dig two 32 bit words out of the 64 bit IEEE floating point
* value. That is non-ANSI, and, moreover, the gcc instruction
* scheduler gets it wrong. We instead use the following macros.
* Unlike the original code, we determine the endianness at compile
* time, not at run time; I don't see much benefit to selecting
* endianness at run time.
*/
/* A union which permits us to convert between a double and two 32 bit
ints. */
/*
* A union which permits us to convert between a double and two 32 bit
* ints.
*/
#if BYTE_ORDER == BIG_ENDIAN
@ -120,8 +124,10 @@ do { \
(d) = sl_u.value; \
} while (0)
/* A union which permits us to convert between a float and a 32 bit
int. */
/*
* A union which permits us to convert between a float and a 32 bit
* int.
*/
typedef union
{
@ -149,76 +155,75 @@ do { \
} while (0)
/* ieee style elementary functions */
extern double __ieee754_sqrt __P((double));
extern double __ieee754_acos __P((double));
extern double __ieee754_acosh __P((double));
extern double __ieee754_log __P((double));
extern double __ieee754_atanh __P((double));
extern double __ieee754_asin __P((double));
extern double __ieee754_atan2 __P((double,double));
extern double __ieee754_exp __P((double));
extern double __ieee754_cosh __P((double));
extern double __ieee754_fmod __P((double,double));
extern double __ieee754_pow __P((double,double));
extern double __ieee754_lgamma_r __P((double,int *));
extern double __ieee754_gamma_r __P((double,int *));
extern double __ieee754_lgamma __P((double));
extern double __ieee754_gamma __P((double));
extern double __ieee754_log10 __P((double));
extern double __ieee754_sinh __P((double));
extern double __ieee754_hypot __P((double,double));
extern double __ieee754_j0 __P((double));
extern double __ieee754_j1 __P((double));
extern double __ieee754_y0 __P((double));
extern double __ieee754_y1 __P((double));
extern double __ieee754_jn __P((int,double));
extern double __ieee754_yn __P((int,double));
extern double __ieee754_remainder __P((double,double));
extern int __ieee754_rem_pio2 __P((double,double*));
extern double __ieee754_scalb __P((double,double));
double __ieee754_sqrt __P((double));
double __ieee754_acos __P((double));
double __ieee754_acosh __P((double));
double __ieee754_log __P((double));
double __ieee754_atanh __P((double));
double __ieee754_asin __P((double));
double __ieee754_atan2 __P((double,double));
double __ieee754_exp __P((double));
double __ieee754_cosh __P((double));
double __ieee754_fmod __P((double,double));
double __ieee754_pow __P((double,double));
double __ieee754_lgamma_r __P((double,int *));
double __ieee754_gamma_r __P((double,int *));
double __ieee754_lgamma __P((double));
double __ieee754_gamma __P((double));
double __ieee754_log10 __P((double));
double __ieee754_sinh __P((double));
double __ieee754_hypot __P((double,double));
double __ieee754_j0 __P((double));
double __ieee754_j1 __P((double));
double __ieee754_y0 __P((double));
double __ieee754_y1 __P((double));
double __ieee754_jn __P((int,double));
double __ieee754_yn __P((int,double));
double __ieee754_remainder __P((double,double));
int __ieee754_rem_pio2 __P((double,double*));
double __ieee754_scalb __P((double,double));
/* fdlibm kernel function */
extern double __kernel_standard __P((double,double,int));
extern double __kernel_sin __P((double,double,int));
extern double __kernel_cos __P((double,double));
extern double __kernel_tan __P((double,double,int));
extern int __kernel_rem_pio2 __P((double*,double*,int,int,int,const int*));
double __kernel_standard __P((double,double,int));
double __kernel_sin __P((double,double,int));
double __kernel_cos __P((double,double));
double __kernel_tan __P((double,double,int));
int __kernel_rem_pio2 __P((double*,double*,int,int,int,const int*));
/* ieee style elementary float functions */
extern float __ieee754_sqrtf __P((float));
extern float __ieee754_acosf __P((float));
extern float __ieee754_acoshf __P((float));
extern float __ieee754_logf __P((float));
extern float __ieee754_atanhf __P((float));
extern float __ieee754_asinf __P((float));
extern float __ieee754_atan2f __P((float,float));
extern float __ieee754_expf __P((float));
extern float __ieee754_coshf __P((float));
extern float __ieee754_fmodf __P((float,float));
extern float __ieee754_powf __P((float,float));
extern float __ieee754_lgammaf_r __P((float,int *));
extern float __ieee754_gammaf_r __P((float,int *));
extern float __ieee754_lgammaf __P((float));
extern float __ieee754_gammaf __P((float));
extern float __ieee754_log10f __P((float));
extern float __ieee754_sinhf __P((float));
extern float __ieee754_hypotf __P((float,float));
extern float __ieee754_j0f __P((float));
extern float __ieee754_j1f __P((float));
extern float __ieee754_y0f __P((float));
extern float __ieee754_y1f __P((float));
extern float __ieee754_jnf __P((int,float));
extern float __ieee754_ynf __P((int,float));
extern float __ieee754_remainderf __P((float,float));
extern int __ieee754_rem_pio2f __P((float,float*));
extern float __ieee754_scalbf __P((float,float));
float __ieee754_sqrtf __P((float));
float __ieee754_acosf __P((float));
float __ieee754_acoshf __P((float));
float __ieee754_logf __P((float));
float __ieee754_atanhf __P((float));
float __ieee754_asinf __P((float));
float __ieee754_atan2f __P((float,float));
float __ieee754_expf __P((float));
float __ieee754_coshf __P((float));
float __ieee754_fmodf __P((float,float));
float __ieee754_powf __P((float,float));
float __ieee754_lgammaf_r __P((float,int *));
float __ieee754_gammaf_r __P((float,int *));
float __ieee754_lgammaf __P((float));
float __ieee754_gammaf __P((float));
float __ieee754_log10f __P((float));
float __ieee754_sinhf __P((float));
float __ieee754_hypotf __P((float,float));
float __ieee754_j0f __P((float));
float __ieee754_j1f __P((float));
float __ieee754_y0f __P((float));
float __ieee754_y1f __P((float));
float __ieee754_jnf __P((int,float));
float __ieee754_ynf __P((int,float));
float __ieee754_remainderf __P((float,float));
int __ieee754_rem_pio2f __P((float,float*));
float __ieee754_scalbf __P((float,float));
/* float versions of fdlibm kernel functions */
extern float __kernel_sinf __P((float,float,int));
extern float __kernel_cosf __P((float,float));
extern float __kernel_tanf __P((float,float,int));
extern int __kernel_rem_pio2f __P((float*,float*,int,int,int,const int*));
float __kernel_sinf __P((float,float,int));
float __kernel_cosf __P((float,float));
float __kernel_tanf __P((float,float,int));
int __kernel_rem_pio2f __P((float*,float*,int,int,int,const int*));
#if defined(__alpha__) || defined(__ia64__)
#define __generic___ieee754_acos __ieee754_acos
@ -247,4 +252,4 @@ extern int __kernel_rem_pio2f __P((float*,float*,int,int,int,const int*));
#define __generic_tan tan
#endif
#endif /* _MATH_PRIVATE_H_ */
#endif /* !_MATH_PRIVATE_H_ */