#include <math/math.h>
+#ifndef _ISOMAC
/* Now define the internal interfaces. */
extern int __matherr (struct exception *__exc);
-extern int __finite_internal (double __value)
- __attribute__ ((__const__)) attribute_hidden;
-extern int __finitef_internal (float __value)
- __attribute__ ((__const__)) attribute_hidden;
-extern int __finitel_internal (long double __value)
- __attribute__ ((__const__)) attribute_hidden;
-
-extern int __isinf_internal (double __value)
- __attribute__ ((__const__)) attribute_hidden;
-extern int __isinfl_internal (long double __value)
- __attribute__ ((__const__)) attribute_hidden;
-extern int __isnan_internal (double __value)
- __attribute__ ((__const__)) attribute_hidden;
-extern int __isnanl_internal (long double __value)
- __attribute__ ((__const__)) attribute_hidden;
-
-#if !defined NOT_IN_libc || defined IS_IN_libm
-# undef isfinite
-# ifdef __NO_LONG_DOUBLE_MATH
-# define isfinite(x) \
- (sizeof (x) == (sizeof (float) \
- ? INTUSE(__finitef) (x) : INTUSE(__finite) (x)))
-# else
-# define isfinite(x) \
- (sizeof (x) == sizeof (float) \
- ? INTUSE(__finitef) (x) \
- : sizeof (x) == sizeof (double) \
- ? INTUSE(__finite) (x) : INTUSE(__finitel) (x))
+extern int __signgam;
+
+# if IS_IN (libc) || IS_IN (libm)
+hidden_proto (__finite)
+hidden_proto (__isinf)
+hidden_proto (__isnan)
+hidden_proto (__finitef)
+hidden_proto (__isinff)
+hidden_proto (__isnanf)
+
+# ifndef __NO_LONG_DOUBLE_MATH
+hidden_proto (__finitel)
+hidden_proto (__isinfl)
+hidden_proto (__isnanl)
+# endif
# endif
-#endif
+libm_hidden_proto (__fpclassify)
+libm_hidden_proto (__fpclassifyf)
+libm_hidden_proto (__issignaling)
+libm_hidden_proto (__issignalingf)
+libm_hidden_proto (__exp)
+libm_hidden_proto (__expf)
+libm_hidden_proto (roundeven)
+# ifndef __NO_LONG_DOUBLE_MATH
+libm_hidden_proto (__fpclassifyl)
+libm_hidden_proto (__issignalingl)
+libm_hidden_proto (__expl)
+libm_hidden_proto (__expm1l)
+# endif
+
+#endif
#endif