root/usr/src/head/tgmath.h
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License (the "License").
 * You may not use this file except in compliance with the License.
 *
 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
 * or http://www.opensolaris.org/os/licensing.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
 * If applicable, add the following below this CDDL HEADER, with the
 * fields enclosed by brackets "[]" replaced with your own identifying
 * information: Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 */
/*
 * Copyright 2011 Nexenta Systems, Inc.  All rights reserved.
 */
/*
 * Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
 * Use is subject to license terms.
 */

#ifndef _TGMATH_H
#define _TGMATH_H

#if !defined(__cplusplus)

#include <math.h>
#include <complex.h>

/*
 * real-floating and complex
 */
#undef  acos
#define acos(x)                 __tgmath_acos(x)
#undef  asin
#define asin(x)                 __tgmath_asin(x)
#undef  atan
#define atan(x)                 __tgmath_atan(x)
#undef  acosh
#define acosh(x)                __tgmath_acosh(x)
#undef  asinh
#define asinh(x)                __tgmath_asinh(x)
#undef  atanh
#define atanh(x)                __tgmath_atanh(x)
#undef  cos
#define cos(x)                  __tgmath_cos(x)
#undef  sin
#define sin(x)                  __tgmath_sin(x)
#undef  tan
#define tan(x)                  __tgmath_tan(x)
#undef  cosh
#define cosh(x)                 __tgmath_cosh(x)
#undef  sinh
#define sinh(x)                 __tgmath_sinh(x)
#undef  tanh
#define tanh(x)                 __tgmath_tanh(x)
#undef  exp
#define exp(x)                  __tgmath_exp(x)
#undef  log
#define log(x)                  __tgmath_log(x)
#undef  pow
#define pow(x, y)               __tgmath_pow(x, y)
#undef  sqrt
#define sqrt(x)                 __tgmath_sqrt(x)
#undef  fabs
#define fabs(x)                 __tgmath_fabs(x)

/*
 * real-floating only
 */
#undef  atan2
#define atan2(y, x)             __tgmath_atan2(y, x)
#undef  cbrt
#define cbrt(x)                 __tgmath_cbrt(x)
#undef  ceil
#define ceil(x)                 __tgmath_ceil(x)
#undef  copysign
#define copysign(x, y)          __tgmath_copysign(x, y)
#undef  erf
#define erf(x)                  __tgmath_erf(x)
#undef  erfc
#define erfc(x)                 __tgmath_erfc(x)
#undef  exp2
#define exp2(x)                 __tgmath_exp2(x)
#undef  expm1
#define expm1(x)                __tgmath_expm1(x)
#undef  fdim
#define fdim(x, y)              __tgmath_fdim(x, y)
#undef  floor
#define floor(x)                __tgmath_floor(x)
#undef  fma
#define fma(x, y, z)            __tgmath_fma(x, y, z)
#undef  fmax
#define fmax(x, y)              __tgmath_fmax(x, y)
#undef  fmin
#define fmin(x, y)              __tgmath_fmin(x, y)
#undef  fmod
#define fmod(x, y)              __tgmath_fmod(x, y)
#undef  frexp
#define frexp(x, ip)            __tgmath_frexp(x, ip)
#undef  hypot
#define hypot(x, y)             __tgmath_hypot(x, y)
#undef  ilogb
#define ilogb(x)                __tgmath_ilogb(x)
#undef  ldexp
#define ldexp(x, i)             __tgmath_ldexp(x, i)
#undef  lgamma
#define lgamma(x)               __tgmath_lgamma(x)
#undef  llrint
#define llrint(x)               __tgmath_llrint(x)
#undef  llround
#define llround(x)              __tgmath_llround(x)
#undef  log10
#define log10(x)                __tgmath_log10(x)
#undef  log1p
#define log1p(x)                __tgmath_log1p(x)
#undef  log2
#define log2(x)                 __tgmath_log2(x)
#undef  logb
#define logb(x)                 __tgmath_logb(x)
#undef  lrint
#define lrint(x)                __tgmath_lrint(x)
#undef  lround
#define lround(x)               __tgmath_lround(x)
#undef  nearbyint
#define nearbyint(x)            __tgmath_nearbyint(x)
#undef  nextafter
#define nextafter(x, y)         __tgmath_nextafter(x, y)
#undef  nexttoward
#define nexttoward(x, y)        __tgmath_nexttoward(x, y)
#undef  remainder
#define remainder(x, y)         __tgmath_remainder(x, y)
#undef  remquo
#define remquo(x, y, ip)        __tgmath_remquo(x, y, ip)
#undef  rint
#define rint(x)                 __tgmath_rint(x)
#undef  round
#define round(x)                __tgmath_round(x)
#undef  scalbln
#define scalbln(x, l)           __tgmath_scalbln(x, l)
#undef  scalbn
#define scalbn(x, i)            __tgmath_scalbn(x, i)
#undef  tgamma
#define tgamma(x)               __tgmath_tgamma(x)
#undef  trunc
#define trunc(x)                __tgmath_trunc(x)

/*
 * complex only
 */
#undef  carg
#define carg(x)                 __tgmath_carg(x)
#undef  cimag
#define cimag(x)                __tgmath_cimag(x)
#undef  conj
#define conj(x)                 __tgmath_conj(x)
#undef  cproj
#define cproj(x)                __tgmath_cproj(x)
#undef  creal
#define creal(x)                __tgmath_creal(x)

#endif  /* !defined(__cplusplus) */

#endif  /* _TGMATH_H */