• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef _COMPLEX_IMPL_H
2 #define _COMPLEX_IMPL_H
3 
4 #include <complex.h>
5 #include "libm.h"
6 
7 #undef __CMPLX
8 #undef CMPLX
9 #undef CMPLXF
10 #undef CMPLXL
11 
12 #define __CMPLX(x, y, t) \
13 	((union { _Complex t __z; t __xy[2]; }){.__xy = {(x),(y)}}.__z)
14 
15 #define CMPLX(x, y) __CMPLX(x, y, double)
16 #define CMPLXF(x, y) __CMPLX(x, y, float)
17 #define CMPLXL(x, y) __CMPLX(x, y, long double)
18 
19 hidden double complex __ldexp_cexp(double complex,int);
20 hidden float complex __ldexp_cexpf(float complex,int);
21 
22 #endif
23