◐ Shell
clean mode source ↗

Message 68762 - Python tracker

Unless I am doing something wrong, that flag does not fix the problem.

#include <errno.h>
#include <math.h>
#include <stdio.h>

int main(int argc, char *argv[])
{
    errno = 0;
    printf("%f %d\n", log(-HUGE_VAL), errno);
    errno = 0;
    printf("%f %d\n", log( HUGE_VAL), errno);
}

/* result is different for 32- and 64-bit

> rm a.out; cc -xtarget=native -xlibmieee log_inf.c -lm ; a.out
-NaN 33
Inf 0

> rm a.out ; cc -xtarget=native64 -xlibmieee log_inf.c -lm ; a.out
-NaN 0
Inf 0

#define EDOM 33 in /usr/include/sys/errno.h

*/