libgfortran: Fix build on non-glibc targets

When the __GLIBC_PREREQ macro isn't defined, the
  #if ... && defined __GLIBC_PREREQ && __GLIBC_PREREQ (2, 32)
directive has invalid syntax - the __GLIBC_PREREQ in there evaluates
to 0 and is followed by (2, 32).

2022-01-12  Jakub Jelinek  <jakub@redhat.com>

	* libgfortran.h (POWER_IEEE128): Use __GLIBC_PREREQ in a separate
	#if directive inside of #if ... && defined __GLIBC_PREREQ.
This commit is contained in:
Jakub Jelinek 2022-01-12 09:43:18 +01:00
parent 2c4dccb605
commit 7c3b9c1736
1 changed files with 3 additions and 1 deletions

View File

@ -104,9 +104,11 @@ typedef off_t gfc_offset;
#endif
#if defined(__powerpc64__) && __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ \
&& defined __GLIBC_PREREQ && __GLIBC_PREREQ (2, 32)
&& defined __GLIBC_PREREQ
#if __GLIBC_PREREQ (2, 32)
#define POWER_IEEE128 1
#endif
#endif
/* These functions from <ctype.h> should only be used on values that can be
represented as unsigned char, otherwise the behavior is undefined.