The __sgi is defined both by SGI cc and gcc.
The change does not seem to change the set of failures with
uselongdouble build; there are two known ones in general
[perl #125298] (warnings) and [cpan #105030] (Time::Piece %z),
and then for uselongdouble a bunch of infnan and locale failures
that I haven't gotten around to reporting or fixing.
/* Solaris and IRIX have fpclass/fpclassl, but they are using
* an enum typedef, not cpp symbols, and Configure doesn't detect that.
* Define some symbols also as cpp symbols so we can detect them. */
-# if defined(__sun) || defined(__irix__) /* XXX Configure test instead */
+# if defined(__sun) || defined(__sgi) /* XXX Configure test instead */
# define FP_PINF FP_PINF
# define FP_QNAN FP_QNAN
# endif
# include <fp_class.h>
# endif
# if defined(FP_POS_INF) && defined(FP_QNAN)
-# ifdef __irix__ /* XXX Configure test instead */
+# ifdef __sgi /* XXX Configure test instead */
# ifdef USE_LONG_DOUBLE
# define Perl_fp_class(x) fp_class_l(x)
# else