[xml] NAN problems on Win32



I have a client using my program linked against standard libxml2 2.4.12 that
has problems with the NAN functionality.  I am still waiting to get back
more details on the exact os, etc. 
The program crashes because of exception 0xC0000090
(EXCEPTION_FLT_INVALID_OPERATION), which MS brilliantly describes as:

EXCEPTION_FLT_DENORMAL_OPERAND 
        One of the operands in a floating-point operation is denormal. A
denormal value is one that is too small to represent as a standard
floating-point value. 
EXCEPTION_FLT_DIVIDE_BY_ZERO 
        The thread attempted to divide a floating-point value by a
floating-point divisor of zero. 
EXCEPTION_FLT_INEXACT_RESULT 
        The result of a floating-point operation cannot be represented
exactly as a decimal fraction. 
EXCEPTION_FLT_INVALID_OPERATION 
        This exception represents any floating-point exception not included
in this list. 
EXCEPTION_FLT_OVERFLOW 
        The exponent of a floating-point operation is greater than the
magnitude allowed by the corresponding type. 
EXCEPTION_FLT_STACK_CHECK 
        The stack overflowed or underflowed as the result of a
floating-point operation. 
EXCEPTION_FLT_UNDERFLOW 
        The exponent of a floating-point operation is less than the
magnitude allowed by the corresponding type. 

It seems to occur whenever the xmlXPathNAN is used in a function call (i.e.
xmlXPathNewFloat(cur->nodesetval->nodeNr) where nodeNr is xmlXPathNAN).
Here's the shocker:  This works fine on my and several hundred other
machines.  I am running requesting from the client more tests as we speak
since I can't duplicate the problem, but I thought I would ask here for
advice.  

Things I do know:
xmlXPathInit() (where xmlXPathNAN is assigned) works without problem.  
I compiled trionan.c as standalone and ran it here and at the client.  This
runs without error both places and NAN value returned from trio_nan() is
identical.
I am running a test now that checks passing this value across function calls

Any insight?



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]