williamr@2: /*
williamr@2:  * © Portions copyright (c) 2006-2007 Nokia Corporation.  All rights reserved.
williamr@2:  * Copyright (c) 1999 
williamr@2:  * Boris Fomitchev
williamr@2:  *
williamr@2:  * This material is provided "as is", with absolutely no warranty expressed
williamr@2:  * or implied. Any use is at your own risk.
williamr@2:  *
williamr@2:  * Permission to use or copy this software for any purpose is hereby granted 
williamr@2:  * without fee, provided the above notices are retained on all copies.
williamr@2:  * Permission to modify the code and to distribute modified code is granted,
williamr@2:  * provided the above notices are retained, and a notice that the code was
williamr@2:  * modified is included with the above copyright notice.
williamr@2:  *
williamr@2:  */
williamr@2: 
williamr@2: #ifndef _STLP_CMATH
williamr@2: # define _STLP_CMATH
williamr@2: 
williamr@2: # ifndef _STLP_OUTERMOST_HEADER_ID
williamr@2: #  define _STLP_OUTERMOST_HEADER_ID  0x109
williamr@2: #  include <stl/_prolog.h>
williamr@2: # endif
williamr@2: 
williamr@2: # if defined (_STLP_USE_NEW_C_HEADERS)
williamr@2: #  if defined (_STLP_HAS_NO_NAMESPACES) && ! defined (exception)
williamr@2: #   define exception __math_exception
williamr@2: #  endif
williamr@2: #  include _STLP_NATIVE_CPP_C_HEADER(cmath)
williamr@2: #  if defined (_STLP_HAS_NO_NAMESPACES)
williamr@2: #   undef exception
williamr@2: #  endif
williamr@2: # else
williamr@2: #ifdef __SYMBIAN32__
williamr@2: #  include <math.h>
williamr@2: #else
williamr@2: #  include _STLP_NATIVE_C_HEADER(math.h)
williamr@2: #endif
williamr@2: # endif
williamr@2: 
williamr@2: #  if (defined (__SUNPRO_CC) && (__SUNPRO_CC > 0x500)) || \
williamr@2:      !( defined (__IBMCPP__) && (__IBMCPP__ >= 500) || ! ( defined (__HP_aCC) && (__HP_aCC >= 30000) ))
williamr@2: # ifndef _STLP_HAS_NO_NAMESPACES
williamr@2: namespace std {
williamr@2: # endif
williamr@2:   extern "C" double hypot(double x, double y);
williamr@2: # ifndef _STLP_HAS_NO_NAMESPACES
williamr@2: }
williamr@2: # endif
williamr@2: 
williamr@2: #  endif
williamr@2: 
williamr@2: #  ifdef _STLP_IMPORT_VENDOR_CSTD
williamr@2: _STLP_BEGIN_NAMESPACE
williamr@2: # if ! defined (_STLP_NO_CSTD_FUNCTION_IMPORTS)
williamr@2: # ifdef _STLP_HAS_NATIVE_FLOAT_ABS
williamr@2: using _STLP_VENDOR_CSTD::abs;
williamr@2: # endif
williamr@2: using _STLP_VENDOR_CSTD::acos;
williamr@2: using _STLP_VENDOR_CSTD::asin;
williamr@2: using _STLP_VENDOR_CSTD::atan2;
williamr@2: using _STLP_VENDOR_CSTD::atan;
williamr@2: using _STLP_VENDOR_CSTD::ceil;
williamr@2: using _STLP_VENDOR_CSTD::cos;
williamr@2: using _STLP_VENDOR_CSTD::cosh;
williamr@2: using _STLP_VENDOR_CSTD::exp;
williamr@2: using _STLP_VENDOR_CSTD::fabs;
williamr@2: using _STLP_VENDOR_CSTD::floor;
williamr@2: using _STLP_VENDOR_CSTD::fmod;
williamr@2: using _STLP_VENDOR_CSTD::frexp;
williamr@2: using _STLP_VENDOR_CSTD::ldexp;
williamr@2: using _STLP_VENDOR_CSTD::log10;
williamr@2: using _STLP_VENDOR_CSTD::log;
williamr@2: using _STLP_VENDOR_CSTD::modf;
williamr@2: using _STLP_VENDOR_CSTD::pow;
williamr@2: using _STLP_VENDOR_CSTD::sin;
williamr@2: using _STLP_VENDOR_CSTD::sinh;
williamr@2: using _STLP_VENDOR_CSTD::sqrt;
williamr@2: using _STLP_VENDOR_CSTD::tan;
williamr@2: using _STLP_VENDOR_CSTD::tanh;
williamr@2: # endif /* BUG */
williamr@2: _STLP_END_NAMESPACE
williamr@2: #  endif /* _STLP_IMPORT_VENDOR_CSTD */
williamr@2: 
williamr@2: #ifndef _STLP_CMATH_H_HEADER
williamr@2: #  include <stl/_cmath.h>
williamr@2: #endif
williamr@2: 
williamr@2: # if (_STLP_OUTERMOST_HEADER_ID ==  0x109 )
williamr@2: #  include <stl/_epilog.h>
williamr@2: #  undef _STLP_OUTERMOST_HEADER_ID
williamr@2: # endif
williamr@2: 
williamr@2: #endif /* _STLP_CMATH */
williamr@2: 
williamr@2: // Local Variables:
williamr@2: // mode:C++
williamr@2: // End: