diff options
author | Joseph Myers <joseph@codesourcery.com> | 2017-06-22 22:53:01 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2017-06-22 22:53:01 +0000 |
commit | db7a548d02a9a47e8592d67980ffd1faeab3e20f (patch) | |
tree | 6aed0b6ed69f091511d0245642ed406bff7f15c5 | |
parent | d08cdabdd096325a3296713c87672f213b05f5c6 (diff) | |
download | glibc-db7a548d02a9a47e8592d67980ffd1faeab3e20f.zip glibc-db7a548d02a9a47e8592d67980ffd1faeab3e20f.tar.gz glibc-db7a548d02a9a47e8592d67980ffd1faeab3e20f.tar.bz2 |
Make float128_private.h work with generic ieee754.h.
float128_private.h redefines ieee754.h identifiers ieee854_long_double
and IEEE854_LONG_DOUBLE_BIAS to map them to identifiers from
ieee754_float128.h.
This causes problems when ieee754.h is included after
float128_private.h and it's a version of ieee754.h that also defines
those identifiers; specifically, sysdeps/ieee754/ieee754.h, which
defines those identifiers for the x86 extended format. This patch
fixes this by ensuring an include of ieee754.h from float128_private.h
before the redefinitions.
Tested for x86_64 (in conjunction with float128 patches).
* sysdeps/ieee754/float128/float128_private.h: Include
<ieee754.h>.
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | sysdeps/ieee754/float128/float128_private.h | 4 |
2 files changed, 7 insertions, 0 deletions
@@ -1,5 +1,8 @@ 2017-06-22 Joseph Myers <joseph@codesourcery.com> + * sysdeps/ieee754/float128/float128_private.h: Include + <ieee754.h>. + * sysdeps/generic/math_private.h (__EXPR_FLT128): Do not apply typeof to argument passed to __builtin_types_compatible_p. (min_of_type): Pass type argument, not x, to __EXPR_FLT128. diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h index 1e00853..c8b153d 100644 --- a/sysdeps/ieee754/float128/float128_private.h +++ b/sysdeps/ieee754/float128/float128_private.h @@ -23,6 +23,10 @@ #define HUGE_VALL HUGE_VAL_F128 #include <math/mul_splitl.h> +/* This must be included before the renames of types and macros from + it. */ +#include <ieee754.h> + /* Renames derived from math_private.h. */ #include <math_private.h> #include <ieee754_float128.h> |