Thanks for the fast response David.
I can now build the debug version of the libraries
using the workaround.
But the solution you suggested for the crash, doesnt
seem to help. I commented out that code (sqrt(-2.01))
and I still get a crash. here is a snippet of my dbx
session. I will play around a little bit more
tomorrow.
(dbx) stop in XalanTransformer::initialize
[8] stop in
xalanc_1_9::XalanTransformer::initialize(xercesc_2_6::MemoryManager&)
(dbx) c
[8] stopped in
xalanc_1_9::XalanTransformer::initialize(xercesc_2_6::MemoryManager&)
at 0x1059f4cc ($t1)
0x1059f4cc
(xalanc_1_9::XalanTransformer::initialize(xercesc_2_6::MemoryManager&))
81823830 lwz r12,0x3830(r2)
(dbx) s
Illegal instruction in . at 0x0 ($t1)
0x00000000 00000000 Invalid opcode.
(dbx) up
wcsncpy.wcsncpy() at 0xd6117f40
(dbx) up
wcsncpy.wcsncpy() at 0xd610cac4
(dbx) up
Thanks
Prasad
--- [EMAIL PROTECTED] wrote:
> > Problem 1. After the changes, this call crashes on
> AIX
> > 5.2. Works finw on hp, linux, solaris and windows.
>
> > The stack trace shows something thats weird like
> > below. Anybody have any idea
> > <---------------------------->
> > dbx) where
> > .() at 0x0
> > __negpow2() at 0xd6b0ef40
> > __negpow2() at 0xd6b03ac4
> > unnamed block $b3811, line 621 in "arxml.cpp"
> > InitXMLParser(0x2ff22828), line 621 in "arxml.cpp"
> > Initialization(0x1, 0x2ff22918), line 877 in
> > "startup.cpp"
> > main(argc = 1, argv = 0x2ff22918), line 9882 in
> > "arrpcsvc.c"
> > (dbx) q
> > <---------------------------->
>
> I can't reproduce this, but it may be related to a
> call Xalan-C makes to
> get the platform's value for NaN. You could try to
> modifying the
> following code in
>
xml-xalan/c/src/xalanc/PlatformSupport/DoubleSupport.cpp:
>
> void
> DoubleSupport::initialize()
> {
> // 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
> }
>
> Comment out the call to sqrt() and see if that fixes
> the crash. If it
> does, that's a problem, because Xalan-C needs a way
> to determine this
> value, and it seems to work fine with the Xalan
> executable. Did you try
> running the Xalan executable to see if it exhibits
> the same problem? If
> it doesn't, perhaps you are linking your application
> differently, or you
> are modifying signals, or the default floating point
> behavior.
>
> > Problem2: I am trying to build xalan in debug mode
> to
> > be able to debug through a crash I am seeing on
> AIX.
> > Release build works fine. But debug build throws
> this
> > compile error. Is there a known problem with
> > XalanVector.hpp.
> ...
> > line 405.5: 1540-0704 (S) The definitions of "void
> > xalanc_1_9::XalanVector<xalanc_1_9::XalanDOMString
> > *,struct
> >
> xalanc_1_9::MemoryManagedConstructionTraits<xala..."
> > and "void
> > xalanc_1_9::XalanVector<xalanc_1_9::XalanDOMString
> > *,struct
> >
> xalanc_1_9::MemoryManagedConstructionTraits<xala..."
> > have the same linkage signature
> >
>
"insert__Q2_10xalanc_1_911XalanVectorXTPQ2_10xalanc_1_914XalanDOMStringTQ2_10xalanc_1_931MemoryManagedConstruction...".
>
> This is a nasty compiler bug. As a work-around, you
> can add the switch
> -qstaticinline to the xlC command line. The easiest
> way to do this is to
> modify the generated Makefile.incl. You can also
> use the runConfigure
> switch -z and supply -qstaticinline.
>
> Dave
>
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com