1  /*  DO NOT EDIT THIS FILE.
       2  
       3      It has been auto-edited by fixincludes from:
       4  
       5  	"fixinc/tests/inc/bits/floatn.h"
       6  
       7      This had to be done to correct non-standard usages in the
       8      original, manufacturer supplied header file.  */
       9  
      10  
      11  
      12  #if defined( GLIBC_CXX_FLOATN_1_CHECK )
      13  #  if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
      14  /* The literal suffix f128 exists only since GCC 7.0.  */
      15  #   define __f128(x) x##l
      16  #  else
      17  #   define __f128(x) x##f128
      18  #  endif
      19  #  if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
      20  /* The literal suffix (f128) exist for powerpc only since GCC 7.0.  */
      21  #   if __LDBL_MANT_DIG__ == 113
      22  #    define __f128(x) x##l
      23  #   else
      24  #    define __f128(x) x##q
      25  #   endif
      26  #  else
      27  #   define __f128(x) x##f128
      28  #  endif
      29  #  if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
      30  #   ifdef __NO_LONG_DOUBLE_MATH
      31  #    define __f64(x) x##l
      32  #   else
      33  #    define __f64(x) x
      34  #   endif
      35  #  else
      36  #   define __f64(x) x##f64
      37  #  endif
      38  #endif  /* GLIBC_CXX_FLOATN_1_CHECK */
      39  
      40  
      41  #if defined( GLIBC_CXX_FLOATN_2_CHECK )
      42  #  if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
      43  typedef float _Float16 __attribute__ ((__mode__ (__HF__)));
      44  #  endif
      45  #  if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
      46  typedef __float128 _Float128;
      47  #  endif
      48  #  if 0
      49  #  elif !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
      50  typedef __float128 _Float128;
      51  #  endif
      52  #endif  /* GLIBC_CXX_FLOATN_2_CHECK */
      53  
      54  
      55  #if defined( GLIBC_CXX_FLOATN_3_CHECK )
      56  #  if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
      57  #   define __CFLOAT128 _Complex long double
      58  #  else
      59  #   define __CFLOAT128 _Complex _Float128
      60  #  endif
      61  #  if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
      62  /* Add a typedef for older GCC compilers which don't natively support
      63     _Complex _Float128.  */
      64  typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__TC__)));
      65  #   define __CFLOAT128 __cfloat128
      66  #  else
      67  #   define __CFLOAT128 _Complex _Float128
      68  #  endif
      69  #  if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
      70  #   ifdef __NO_LONG_DOUBLE_MATH
      71  #    define __CFLOAT64 _Complex long double
      72  #   else
      73  #    define __CFLOAT64 _Complex double
      74  #   endif
      75  #  else
      76  #   define __CFLOAT64 _Complex _Float64
      77  #  endif
      78  #endif  /* GLIBC_CXX_FLOATN_3_CHECK */
      79  
      80  
      81  #if defined( GLIBC_CXX_FLOATN_4_CHECK )
      82  #  if __LDBL_MANT_DIG__ == 113 && defined __cplusplus && !__GNUC_PREREQ (13, 0)
      83  typedef long double _Float128;
      84  #   define __CFLOAT128 _Complex long double
      85  #  endif
      86  #endif  /* GLIBC_CXX_FLOATN_4_CHECK */
      87  
      88  
      89  #if defined( GLIBC_CXX_FLOATN_5_CHECK )
      90  #  if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
      91  #   error "_Float128X supported but no constant suffix"
      92  #  endif
      93  #  if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
      94  #   error "_Float128x supported but no type"
      95  #  endif
      96  #endif  /* GLIBC_CXX_FLOATN_5_CHECK */