home *** CD-ROM | disk | FTP | other *** search
/ GEMini Atari / GEMini_Atari_CD-ROM_Walnut_Creek_December_1993.iso / files / gnu / mntinc16 / math.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-07-29  |  2.3 KB  |  80 lines

  1. #ifndef _MATH_H
  2. #define _MATH_H
  3.  
  4. #ifndef _COMPILER_H
  5. #include <compiler.h>
  6. #endif
  7.  
  8. __EXTERN double atof    __PROTO((const char *));
  9. __EXTERN double acosh    __PROTO((double));
  10. __EXTERN double asinh    __PROTO((double));
  11. __EXTERN double atanh    __PROTO((double));
  12. __EXTERN double acos    __PROTO((double));
  13. __EXTERN double asin    __PROTO((double));
  14. __EXTERN double atan    __PROTO((double));
  15. __EXTERN double atan2    __PROTO((double, double));
  16. __EXTERN double ceil    __PROTO((double));
  17. __EXTERN double cos    __PROTO((double));
  18. __EXTERN double cosh    __PROTO((double));
  19. __EXTERN double exp    __PROTO((double));
  20. __EXTERN double fabs    __PROTO((double));
  21. __EXTERN double floor    __PROTO((double));
  22. __EXTERN double fmod    __PROTO((double, double));
  23. __EXTERN double frexp    __PROTO((double, int *));
  24. __EXTERN double ldexp    __PROTO((double, int));
  25. __EXTERN double log    __PROTO((double));
  26. __EXTERN double log10    __PROTO((double));
  27. __EXTERN double modf    __PROTO((double, double *));
  28. __EXTERN double pow    __PROTO((double, double));
  29. __EXTERN double sin    __PROTO((double));
  30. __EXTERN double sinh    __PROTO((double));
  31. __EXTERN double sqrt    __PROTO((double));
  32. __EXTERN double tan    __PROTO((double));
  33. __EXTERN double tanh    __PROTO((double));
  34.  
  35. #ifndef __STRICT_ANSI__
  36. __EXTERN int    finite    __PROTO((double));
  37. __EXTERN double cbrt    __PROTO((double));
  38. __EXTERN double copysign __PROTO((double, double));
  39. __EXTERN double drem    __PROTO((double, double));
  40. __EXTERN double logb    __PROTO((double));
  41. __EXTERN double scalb    __PROTO((double, int));
  42. __EXTERN double rint    __PROTO((double));
  43. __EXTERN double expm1    __PROTO((double));
  44. __EXTERN double log1p    __PROTO((double));
  45. __EXTERN double hypot    __PROTO((double, double));
  46. __EXTERN double cabs();
  47. #endif
  48.  
  49. extern const double _infinitydf;    /* in normdf.cpp */
  50. #define HUGE_VAL _infinitydf
  51.  
  52. /* other compilers?? */
  53.  
  54. #ifndef __STRICT_ANSI__
  55. #define HUGE HUGE_VAL
  56. #endif
  57.  
  58. /* other stuff */
  59. #ifdef _M68881
  60. #include <fpu.h>
  61. #endif
  62.  
  63. #ifndef __STRICT_ANSI__
  64. #if __GNUC__
  65. #ifndef max
  66. #define max(x,y) ({typeof(x) _x=(x); typeof(y) _y=(y); if (_x>_y) _y=_x; _y;})
  67. #define min(x,y) ({typeof(x) _x=(x); typeof(y) _y=(y); if (_x<_y) _y=_x; _y;})
  68. #endif
  69. #else
  70. /* these forms evaluate their args twice.. tough. */
  71. #ifndef max
  72. #define max(x,y) ((x) > (y) ? (x) : (y))
  73. #define min(x,y) ((x) < (y) ? (x) : (y))
  74. #endif
  75. #endif
  76.  
  77. #endif /* __STRICT_ANSI__ */
  78.  
  79. #endif /* _MATH_H
  80.