123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- #ifndef _COMPLEX_H
- #define _COMPLEX_H 1
- #include <features.h>
- #include <bits/mathdef.h>
- __BEGIN_DECLS
- #if __GNUC_PREREQ (2, 7) && !__GNUC_PREREQ (2, 97)
- # define _Complex __complex__
- #endif
- #define complex _Complex
- #define _Complex_I (__extension__ 1.0iF)
- #undef I
- #define I _Complex_I
- #if defined __USE_ISOC11 && __GNUC_PREREQ (4, 7)
- # define CMPLX(x, y) __builtin_complex ((double) (x), (double) (y))
- # define CMPLXF(x, y) __builtin_complex ((float) (x), (float) (y))
- # define CMPLXL(x, y) __builtin_complex ((long double) (x), (long double) (y))
- #endif
- #define __MATHCALL(function, args) \
- __MATHDECL (_Mdouble_complex_,function, args)
- #define __MATHDECL(type, function, args) \
- __MATHDECL_1(type, function, args); \
- __MATHDECL_1(type, __CONCAT(__,function), args)
- #define __MATHDECL_1(type, function, args) \
- extern type __MATH_PRECNAME(function) args __THROW
- #define _Mdouble_ double
- #define __MATH_PRECNAME(name) name
- #include <bits/cmathcalls.h>
- #undef _Mdouble_
- #undef __MATH_PRECNAME
- #ifndef _Mfloat_
- # define _Mfloat_ float
- #endif
- #define _Mdouble_ _Mfloat_
- #define __MATH_PRECNAME(name) name##f
- #include <bits/cmathcalls.h>
- #undef _Mdouble_
- #undef __MATH_PRECNAME
- #if !(defined __NO_LONG_DOUBLE_MATH && defined _LIBC) \
- || defined __LDBL_COMPAT
- # ifdef __LDBL_COMPAT
- # undef __MATHDECL_1
- # define __MATHDECL_1(type, function, args) \
- extern type __REDIRECT_NTH(__MATH_PRECNAME(function), args, function)
- # endif
- # ifndef _Mlong_double_
- # define _Mlong_double_ long double
- # endif
- # define _Mdouble_ _Mlong_double_
- # define __MATH_PRECNAME(name) name##l
- # include <bits/cmathcalls.h>
- #endif
- #undef _Mdouble_
- #undef __MATH_PRECNAME
- #undef __MATHDECL_1
- #undef __MATHDECL
- #undef __MATHCALL
- __END_DECLS
- #endif
|