1 cmath |
1 /* |
|
2 * Copyright (c) 1999 |
|
3 * Boris Fomitchev |
|
4 * |
|
5 * This material is provided "as is", with absolutely no warranty expressed |
|
6 * or implied. Any use is at your own risk. |
|
7 * |
|
8 * Permission to use or copy this software for any purpose is hereby granted |
|
9 * without fee, provided the above notices are retained on all copies. |
|
10 * Permission to modify the code and to distribute modified code is granted, |
|
11 * provided the above notices are retained, and a notice that the code was |
|
12 * modified is included with the above copyright notice. |
|
13 * |
|
14 */ |
|
15 |
|
16 #ifndef _STLP_CMATH |
|
17 # define _STLP_CMATH |
|
18 |
|
19 # ifndef _STLP_OUTERMOST_HEADER_ID |
|
20 # define _STLP_OUTERMOST_HEADER_ID 0x109 |
|
21 # include <stl/_prolog.h> |
|
22 # endif |
|
23 |
|
24 # if defined (_STLP_USE_NEW_C_HEADERS) |
|
25 # if defined (_STLP_HAS_NO_NAMESPACES) && ! defined (exception) |
|
26 # define exception __math_exception |
|
27 # endif |
|
28 # include _STLP_NATIVE_CPP_C_HEADER(cmath) |
|
29 # if defined (_STLP_HAS_NO_NAMESPACES) |
|
30 # undef exception |
|
31 # endif |
|
32 # else |
|
33 # include <math.h> |
|
34 # endif |
|
35 |
|
36 # if (defined (__SUNPRO_CC) && (__SUNPRO_CC > 0x500)) || \ |
|
37 !( defined (__IBMCPP__) && (__IBMCPP__ >= 500) || ! ( defined (__HP_aCC) && (__HP_aCC >= 30000) )) |
|
38 # ifndef _STLP_HAS_NO_NAMESPACES |
|
39 namespace std { |
|
40 # endif |
|
41 extern "C" double hypot(double x, double y); |
|
42 # ifndef _STLP_HAS_NO_NAMESPACES |
|
43 } |
|
44 # endif |
|
45 |
|
46 # endif |
|
47 |
|
48 # ifdef _STLP_IMPORT_VENDOR_CSTD |
|
49 _STLP_BEGIN_NAMESPACE |
|
50 # if ! defined (_STLP_NO_CSTD_FUNCTION_IMPORTS) |
|
51 # ifdef _STLP_HAS_NATIVE_FLOAT_ABS |
|
52 using _STLP_VENDOR_CSTD::abs; |
|
53 # endif |
|
54 using _STLP_VENDOR_CSTD::acos; |
|
55 using _STLP_VENDOR_CSTD::asin; |
|
56 using _STLP_VENDOR_CSTD::atan2; |
|
57 using _STLP_VENDOR_CSTD::atan; |
|
58 using _STLP_VENDOR_CSTD::ceil; |
|
59 using _STLP_VENDOR_CSTD::cos; |
|
60 using _STLP_VENDOR_CSTD::cosh; |
|
61 using _STLP_VENDOR_CSTD::exp; |
|
62 using _STLP_VENDOR_CSTD::fabs; |
|
63 using _STLP_VENDOR_CSTD::floor; |
|
64 using _STLP_VENDOR_CSTD::fmod; |
|
65 using _STLP_VENDOR_CSTD::frexp; |
|
66 using _STLP_VENDOR_CSTD::ldexp; |
|
67 using _STLP_VENDOR_CSTD::log10; |
|
68 using _STLP_VENDOR_CSTD::log; |
|
69 using _STLP_VENDOR_CSTD::modf; |
|
70 using _STLP_VENDOR_CSTD::pow; |
|
71 using _STLP_VENDOR_CSTD::sin; |
|
72 using _STLP_VENDOR_CSTD::sinh; |
|
73 using _STLP_VENDOR_CSTD::sqrt; |
|
74 using _STLP_VENDOR_CSTD::tan; |
|
75 using _STLP_VENDOR_CSTD::tanh; |
|
76 # endif /* BUG */ |
|
77 _STLP_END_NAMESPACE |
|
78 # endif /* _STLP_IMPORT_VENDOR_CSTD */ |
|
79 |
|
80 #ifndef _STLP_CMATH_H_HEADER |
|
81 # include <stl/_cmath.h> |
|
82 #endif |
|
83 |
|
84 # if (_STLP_OUTERMOST_HEADER_ID == 0x109 ) |
|
85 # include <stl/_epilog.h> |
|
86 # undef _STLP_OUTERMOST_HEADER_ID |
|
87 # endif |
|
88 |
|
89 #endif /* _STLP_CMATH */ |
|
90 |
|
91 // Local Variables: |
|
92 // mode:C++ |
|
93 // End: |