Mark Dickinson added the comment:

Tracing the calls through ast_for_factor -> ast_for_atom -> parsenumber -> 
PyOS_ascii_atof -> 
PyOS_ascii_strtod -> strtod, it looks as though the cause is simply that strtod 
behaves differently on 
the two platforms.  I get that the following code:

#include <stdio.h>
#include <stdlib.h>

int main() {
  char *fail_pos;
  double x;
  
  x = strtod("-1e-1000", &fail_pos);
  printf("Result: %f\n", x);

  return 0;
}

produces 0.000000 on Linux (SuSE 10.2) and -0.000000 on OS X 10.4.11.

----------
nosy: +marketdickinson

__________________________________
Tracker <[EMAIL PROTECTED]>
<http://bugs.python.org/issue1725>
__________________________________
_______________________________________________
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to