If ever I forget later, I would like to thank you guys (esp. Simon, Dominique, Keith and Jay) for the time you spend on this issue.
Your idea of dumping the memory at &realvalue was a very good idea, Simon. You were right: "realvalue" values are already slightly different (2 less significant bytes of the 10-bytes equ. string) after the first iteration (i.e. realvalue*=0.1) of the "while" loop (sqlite3.c:19911), while they are still byte-to-byte identical at sqlite3.c:19908. I use exactly the same byte code (i.e. the same sqlite3.o module), Keith. So I summarize the situation: realvalue * 0.1 = res1 in sqlite3.o linked to shell.o realvalue * 0.1 = res2 in sqlite3.o linked to JSDB - with res1!=res2!!!!!! The JSDB win32 executable is built like this: gcc.exe -static-libgcc -o jsdb.exe -mconsole -mwindows -mole obj\*.o obj\jsdb.coff -lole32 -lws2_32 -lodbc32 -loleaut32 -lmapi32 -lcomdlg32 -luuid -lwinmm -static -lstdc++ while I simply build the SQLite exec with "gcc -o SQLite.exe sqlite3.o shell.o". Is there a trick (in the sys. libraries mentioned above, or through the win32 C API) for changing the way the FPU handles (long) doubles? Etienne _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users