
On Wed, Sep 28, 2022 at 08:19:43PM +0200, Jakub Jelinek via Gcc-patches wrote: > Another case are the following 3 snippets: > # if !__GNUC_PREREQ (7, 0) || defined __cplusplus > # error "_Float128X supported but no constant suffix" > # else > # define __f128x(x) x##f128x > # endif > ... > # if !__GNUC_PREREQ (7, 0) || defined __cplusplus > # error "_Float128X supported but no complex type" > # else > # define __CFLOAT128X _Complex _Float128x > # endif > ... > # if !__GNUC_PREREQ (7, 0) || defined __cplusplus > # error "_Float128x supported but no type" > # endif > but as no target has _Float128x right now and don't see it > coming soon, it isn't a big deal (on the glibc side it is of > course ok to adjust those). This incremental patch deals handles the above 3 cases, so we fixinclude what glibc itself changed too. 2022-10-07 Jakub Jelinek <jakub@redhat.com> PR bootstrap/107059 * inclhack.def (glibc_cxx_floatn_5): New. * fixincl.x: Regenerated. * tests/base/bits/floatn.h: Regenerated.
96 lines
2.9 KiB
C
96 lines
2.9 KiB
C
/* DO NOT EDIT THIS FILE.
|
|
|
|
It has been auto-edited by fixincludes from:
|
|
|
|
"fixinc/tests/inc/bits/floatn.h"
|
|
|
|
This had to be done to correct non-standard usages in the
|
|
original, manufacturer supplied header file. */
|
|
|
|
|
|
|
|
#if defined( GLIBC_CXX_FLOATN_1_CHECK )
|
|
# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
|
|
/* The literal suffix f128 exists only since GCC 7.0. */
|
|
# define __f128(x) x##l
|
|
# else
|
|
# define __f128(x) x##f128
|
|
# endif
|
|
# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
|
|
/* The literal suffix (f128) exist for powerpc only since GCC 7.0. */
|
|
# if __LDBL_MANT_DIG__ == 113
|
|
# define __f128(x) x##l
|
|
# else
|
|
# define __f128(x) x##q
|
|
# endif
|
|
# else
|
|
# define __f128(x) x##f128
|
|
# endif
|
|
# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
|
|
# ifdef __NO_LONG_DOUBLE_MATH
|
|
# define __f64(x) x##l
|
|
# else
|
|
# define __f64(x) x
|
|
# endif
|
|
# else
|
|
# define __f64(x) x##f64
|
|
# endif
|
|
#endif /* GLIBC_CXX_FLOATN_1_CHECK */
|
|
|
|
|
|
#if defined( GLIBC_CXX_FLOATN_2_CHECK )
|
|
# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
|
|
typedef float _Float16 __attribute__ ((__mode__ (__HF__)));
|
|
# endif
|
|
# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
|
|
typedef __float128 _Float128;
|
|
# endif
|
|
# if 0
|
|
# elif !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
|
|
typedef __float128 _Float128;
|
|
# endif
|
|
#endif /* GLIBC_CXX_FLOATN_2_CHECK */
|
|
|
|
|
|
#if defined( GLIBC_CXX_FLOATN_3_CHECK )
|
|
# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
|
|
# define __CFLOAT128 _Complex long double
|
|
# else
|
|
# define __CFLOAT128 _Complex _Float128
|
|
# endif
|
|
# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
|
|
/* Add a typedef for older GCC compilers which don't natively support
|
|
_Complex _Float128. */
|
|
typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__TC__)));
|
|
# define __CFLOAT128 __cfloat128
|
|
# else
|
|
# define __CFLOAT128 _Complex _Float128
|
|
# endif
|
|
# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
|
|
# ifdef __NO_LONG_DOUBLE_MATH
|
|
# define __CFLOAT64 _Complex long double
|
|
# else
|
|
# define __CFLOAT64 _Complex double
|
|
# endif
|
|
# else
|
|
# define __CFLOAT64 _Complex _Float64
|
|
# endif
|
|
#endif /* GLIBC_CXX_FLOATN_3_CHECK */
|
|
|
|
|
|
#if defined( GLIBC_CXX_FLOATN_4_CHECK )
|
|
# if __LDBL_MANT_DIG__ == 113 && defined __cplusplus && !__GNUC_PREREQ (13, 0)
|
|
typedef long double _Float128;
|
|
# define __CFLOAT128 _Complex long double
|
|
# endif
|
|
#endif /* GLIBC_CXX_FLOATN_4_CHECK */
|
|
|
|
|
|
#if defined( GLIBC_CXX_FLOATN_5_CHECK )
|
|
# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
|
|
# error "_Float128X supported but no constant suffix"
|
|
# endif
|
|
# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0))
|
|
# error "_Float128x supported but no type"
|
|
# endif
|
|
#endif /* GLIBC_CXX_FLOATN_5_CHECK */
|