#include #define ABS(a) ((a > 0)? (a) : (-(a))) #define MAX(a, b) ((a > b)? (a) : (b)) #define DBL_EQ(a, b) ( ((a)==(b)) || ABS(((a) - (b))) / MAX(ABS(a), ABS(b) ) <= 10e-15 ) int main (void) { int rc = 0; double test = 0; static const volatile signed long long x4 = -197409161479LL; test = ((double)14480837.0/((signed int)1==((double)14480837.0>(((signed long long)-197409161479LL%x4)+(signed long long)0LL)))); if (DBL_EQ(test, 1.4480837000000000e+07)) { printf("@OK@\n"); printf("%0.15e\n",test); } else { rc = 1; printf("@NG@\n"); printf("%0.15e\n",test); } return rc; }