#include #include #include #undef RN #undef RZ #undef RD #undef RU #define RN FE_TONEAREST #define RZ FE_TOWARDZERO #define RD FE_DOWNWARD #define RU FE_UPWARD #undef INEXACT #undef INVALID #undef DIVBYZERO #undef UNDERFLOW #undef OVERFLOW #define INEXACT FE_INEXACT #define INVALID FE_INVALID #define DIVBYZERO FE_DIVBYZERO #define UNDERFLOW FE_UNDERFLOW #define OVERFLOW FE_OVERFLOW #undef inf #undef nan #define inf INFINITY #define nan NAN struct t { int type; int r; long double x; long double x2; long double x3; long long i; long double y; long double y2; float dy; float dy2; int e; }; char *skipstr(char *, char *); int splitstr(char **, int, char *, char *); char *dropcomm(char *); char *estr(int); char *rstr(int); int rconv(int *, char *); int econv(int *, char *); int eulp(double); int eulpf(float); int eulpl(long double); double ulperr(double y, double ycr, double dy); void setupfenv(int); int getexcept(void); #define T(f,x) int mp##f(struct t *); #include "functions.h" #undef T