You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by "Sean Pearce (JIRA)" <xa...@xml.apache.org> on 2005/12/02 17:31:30 UTC

[jira] Commented: (XALANC-588) Floating point exceptions in DoubleSupport::initialize() on Solaris 10 (x86)

    [ http://issues.apache.org/jira/browse/XALANC-588?page=comments#action_12359168 ] 

Sean Pearce commented on XALANC-588:
------------------------------------

For good measure:

$ uname -a
SunOS xxxx-v40z1 5.10 Generic_Patch i86pc i386 i86pc


> Floating point exceptions in DoubleSupport::initialize() on Solaris 10 (x86)
> ----------------------------------------------------------------------------
>
>          Key: XALANC-588
>          URL: http://issues.apache.org/jira/browse/XALANC-588
>      Project: XalanC
>         Type: Bug
>   Components: XalanC
>     Versions: 1.10
>  Environment: Sun Solaris 10, Opteron chipset (x86/i386). XercesC++ 2.7  XalanC 1.10
> $ CC -V
> CC: Sun C++ 5.7 Patch 117831-02 2005/03/30
> $ cc -V
> cc: Sun C 5.7 Patch 117837-04 2005/05/11
> usage: cc [ options] files.  Use 'cc -flags' for details
>     Reporter: Sean Pearce

>
> A couple of issues.
> Prior to compiling, XERCESCROOT and XALANCROOT are configured to point the their respective foliders, and the configurations used as follows:
> Xerces: ./runConfigure -p solaris -c cc -x CC -b 64 -P $P4SRCROOT/Tools/libs/64/SUN/xerces-c_2_7_0
> Xalan:   ./runConfigure -p solaris -c cc -x CC -b 64 -P $P4SRCROOT/Tools/libs/64/SUN/xalanc_1_10
> 1) To compile on this platform, the 'solaris' entries in runConfigure had to be changed to use option '-xarch=amd64' in place of '-xarch=v9' (for XercesC and XalanC)
> 2) After building the libraries, our program was crashing in XalanTransformer::initialize(); (after calling XMLPlatformUtils::Initialize(); of course), with a Floating Point Exception (FPE) in:
> void
> DoubleSupport::initialize()
> {
> #if defined(XALAN_NO_STD_NUMERIC_LIMITS)
>     // We initialize this at here because some
>     // platforms have had issues with signals
>     // if we call sqrt(-2.01) during static
>     // initialization.
> #if defined(XALAN_STRICT_ANSI_HEADERS)
>     s_NaN.d = std::sqrt(-2.01);
> #else
>     s_NaN.d = sqrt(-2.01);
> #endif
> #elif !defined(XALAN_NO_STD_NAMESPACE)
>     // There seems to be problems with various standard libraries, so
>     // this is disabled for now.  We need to revisit this when we
>     // update our autoconf/automake system to detect the right value
>     // for NaN at configuration time.
>     // XALAN_STATIC_ASSERT(std::numeric_limits<double>::has_quiet_NaN);
> #endif
> Removing  #define XALAN_NO_STD_NUMERIC_LIMITS from the Include/SolarisDefinitions.hpp fixes this problem.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-dev-help@xml.apache.org