math_iso.h revision 25c28e83beb90e7c80452a7c818c5e6f73a07dc8
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis/*
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * CDDL HEADER START
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis *
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * The contents of this file are subject to the terms of the
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * Common Development and Distribution License (the "License").
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * You may not use this file except in compliance with the License.
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis *
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * or http://www.opensolaris.org/os/licensing.
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * See the License for the specific language governing permissions
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * and limitations under the License.
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis *
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * When distributing Covered Code, include this CDDL HEADER in each
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * If applicable, add the following below this CDDL HEADER, with the
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * fields enclosed by brackets "[]" replaced with your own identifying
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * information: Portions Copyright [yyyy] [name of copyright owner]
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis *
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * CDDL HEADER END
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis */
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis/*
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * Copyright 2011 Nexenta Systems, Inc. All rights reserved.
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis */
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis/*
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis * Use is subject to license terms.
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis */
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#ifndef _ISO_MATH_ISO_H
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#define _ISO_MATH_ISO_H
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#include <sys/feature_tests.h>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#ifdef __cplusplus
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern "C" {
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#endif
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#ifndef __P
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#ifdef __STDC__
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#define __P(p) p
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#else
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#define __P(p) ()
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#endif
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#endif /* !defined(__P) */
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#if !defined(_STDC_C99) && _XOPEN_SOURCE - 0 < 600 && !defined(__C99FEATURES__)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtistypedef union _h_val {
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis unsigned long _i[sizeof (double) / sizeof (unsigned long)];
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis double _d;
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis} _h_val;
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#ifdef __STDC__
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern const _h_val __huge_val;
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#else
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern _h_val __huge_val;
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#endif
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#undef HUGE_VAL
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#define HUGE_VAL __huge_val._d
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#endif /* !defined(_STDC_C99) && _XOPEN_SOURCE - 0 < 600 && ... */
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#if __cplusplus >= 199711L
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisnamespace std {
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#endif
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double acos __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double asin __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double atan __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double atan2 __P((double, double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double cos __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double sin __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double tan __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double cosh __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double sinh __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double tanh __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double exp __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double frexp __P((double, int *));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double ldexp __P((double, int));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double log __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double log10 __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double modf __P((double, double *));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double pow __P((double, double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double sqrt __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double ceil __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double fabs __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double floor __P((double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern double fmod __P((double, double));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#if defined(__MATHERR_ERRNO_DONTCARE)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma does_not_read_global_data(acos, asin, atan, atan2)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma does_not_read_global_data(cos, sin, tan, cosh, sinh, tanh)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma does_not_read_global_data(exp, log, log10, pow, sqrt)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma does_not_read_global_data(frexp, ldexp, modf)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma does_not_read_global_data(ceil, fabs, floor, fmod)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma does_not_write_global_data(acos, asin, atan, atan2)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma does_not_write_global_data(cos, sin, tan, cosh, sinh, tanh)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma does_not_write_global_data(exp, log, log10, pow, sqrt)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma does_not_write_global_data(ldexp)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma does_not_write_global_data(ceil, fabs, floor, fmod)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma no_side_effect(acos, asin, atan, atan2)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma no_side_effect(cos, sin, tan, cosh, sinh, tanh)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma no_side_effect(exp, log, log10, pow, sqrt)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma no_side_effect(ldexp)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#pragma no_side_effect(ceil, fabs, floor, fmod)
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#endif
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#if __cplusplus >= 199711L
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __acosf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __asinf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __atanf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __atan2f(float, float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __ceilf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __cosf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __coshf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __expf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __fabsf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __floorf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __fmodf(float, float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __frexpf(float, int *);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __ldexpf(float, int);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __logf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __log10f(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __modff(float, float *);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __powf(float, float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __sinf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __sinhf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __sqrtf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __tanf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern float __tanhf(float);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __acosl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __asinl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __atanl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __atan2l(long double, long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __ceill(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __cosl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __coshl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __expl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __fabsl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __floorl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __fmodl(long double, long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __frexpl(long double, int *);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __ldexpl(long double, int);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __logl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __log10l(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __modfl(long double, long double *);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __powl(long double, long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __sinl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __sinhl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __sqrtl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __tanl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern long double __tanhl(long double);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisextern "C++" {
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#undef __X
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#undef __Y
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline double abs(double __X) { return fabs(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline double pow(double __X, int __Y) { return
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis pow(__X, (double) (__Y)); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float abs(float __X) { return __fabsf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float acos(float __X) { return __acosf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float asin(float __X) { return __asinf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float atan(float __X) { return __atanf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float atan2(float __X, float __Y) { return __atan2f(__X, __Y); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float ceil(float __X) { return __ceilf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float cos(float __X) { return __cosf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float cosh(float __X) { return __coshf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float exp(float __X) { return __expf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float fabs(float __X) { return __fabsf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float floor(float __X) { return __floorf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float fmod(float __X, float __Y) { return __fmodf(__X, __Y); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float frexp(float __X, int *__Y) { return __frexpf(__X, __Y); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float ldexp(float __X, int __Y) { return __ldexpf(__X, __Y); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float log(float __X) { return __logf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float log10(float __X) { return __log10f(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float modf(float __X, float *__Y) { return __modff(__X, __Y); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float pow(float __X, float __Y) { return __powf(__X, __Y); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float pow(float __X, int __Y) { return
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis pow((double) (__X), (double) (__Y)); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float sin(float __X) { return __sinf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float sinh(float __X) { return __sinhf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float sqrt(float __X) { return __sqrtf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float tan(float __X) { return __tanf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline float tanh(float __X) { return __tanhf(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double abs(long double __X) { return __fabsl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double acos(long double __X) { return __acosl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double asin(long double __X) { return __asinl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double atan(long double __X) { return __atanl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double atan2(long double __X, long double __Y) { return
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis __atan2l(__X, __Y); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double ceil(long double __X) { return __ceill(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double cos(long double __X) { return __cosl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double cosh(long double __X) { return __coshl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double exp(long double __X) { return __expl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double fabs(long double __X) { return __fabsl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double floor(long double __X) { return __floorl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double fmod(long double __X, long double __Y) { return
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis __fmodl(__X, __Y); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double frexp(long double __X, int *__Y) { return
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis __frexpl(__X, __Y); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double ldexp(long double __X, int __Y) { return
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis __ldexpl(__X, __Y); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double log(long double __X) { return __logl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double log10(long double __X) { return __log10l(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double modf(long double __X, long double *__Y) { return
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis __modfl(__X, __Y); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double pow(long double __X, long double __Y) { return
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis __powl(__X, __Y); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double pow(long double __X, int __Y) { return
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis __powl(__X, (long double) (__Y)); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double sin(long double __X) { return __sinl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double sinh(long double __X) { return __sinhl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double sqrt(long double __X) { return __sqrtl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double tan(long double __X) { return __tanl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis inline long double tanh(long double __X) { return __tanhl(__X); }
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis} /* end of extern "C++" */
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#endif /* __cplusplus >= 199711L */
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#if __cplusplus >= 199711L
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis} /* end of namespace std */
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#endif
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#ifdef __cplusplus
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis}
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#endif
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis#endif /* _ISO_MATH_ISO_H */