sin(x) different debug&release-results

different double-precision-results in the trigonometric functions "sin"

here is some example code:

int main (int argc, char **argv)

{

long i;

double x=0.89152,y;

for (i=0; i < 10000; i++) {

y=x+i/1000.0;

fprintf(stderr,"sin(%7.5f)=%30.20f\n",y,sin(y));

}

return 0;

Quote:

}

you'll find many, many differences

the first for y=0.96252

sin(0.96252)= 0.82063423604053598000 (debug)

sin(0.96252)= 0.82063423604053609000 (release)

the next for y=1.03452

sin(1.03452)= 0.85961720497862504000 (debug)

sin(1.03452)= 0.85961720497862515000 (release)

and so on, and so on

well, which value is correct now?

the mathematical co-processor (release) or the math-library

(debug) or something else?