On Mon Mar 25 16:07:35 2013, bulk88 wrote: > > > sisyphus can you make a preprocessed (.i) ("-E" for GCC) file of pp.c > and attach it to this ticket? Use same exactly the same cmd line options > that were used in the build. I want to see if it was macro-defed to > something else. A .s asm file made with -S should do it. > > What OS version are you using? > > A couple of things could have happened. New GCC has inlined pow() which > is not IEEE 754, or uses 80 bit precision (not likely on Win64, since > x87 is "deprecated" according to MS) for intermediate results, throws > and catches FP exceptions, uses 128 bit software precision or libmingwex > or libgcc are supplying a pow(), and those take priority over the MS c > lib's pow(). Based on http://www.mail-archive.com/mingw-w64-public@lists.sourceforge.net/msg02679.html and http://permalink.gmane.org/gmane.comp.gnu.mingw.w64.general/2780 http://mingw-w64.sourcearchive.com/documentation/2.0-1/t__pow_8c_source.html http://mingw-w64.sourcearchive.com/documentation/2.0-1/pow_8def_8h_source.html , mingw has been mucking around *lately* and now offers their own pow() which "fixes" problems with MS's pow(). I looked at my 64 bit Strawberry 5.14, it does not import pow() from a MS CRT DLL. Instead a pow (I can't research it further, since I dont have symbols) is static linked into the image. My VC 2008 x64 Perl imports pow from a MS CRT DLL. Based on http://www.mail-archive.com/mingw-w64-public@lists.sourceforge.net/msg05100.html it seems mingw override's MS's implementation for C99 compatibility (I cant find any exact reasoning on google), see also http://sourceforge.net/mailarchive/message.php?msg_id=27165045 . So the question is, does Win32 Perl guarantee "C89 FP math" or "C99 FP math"? I can't answer that. -- bulk88 ~ bulk88 at hotmail.com --- via perlbug: queue: perl5 status: rejected https://rt.perl.org:443/rt3/Ticket/Display.html?id=117315Thread Previous | Thread Next