[xsd-users] Error compiling char-utf8.txx with Solaris Studio
12.4 c++11
Bernie Harris
Bernard.T.Harris at nasa.gov
Mon Apr 11 07:05:48 EDT 2016
On 4/8/16 10:35 AM, Boris Kolpackov wrote:
> Hi Bernie,
>
> Bernie Harris <Bernard.T.Harris at nasa.gov> writes:
>
>> In Oracle Solaris Studio 12.4, the C++ compiler supports C++11, a
>> new language and ABI (Application Binary Interface).
>>
>> In C++ 11 mode, the CC compiler uses the g++ ABI and a version of
>> the g++ runtime library that is supplied with Oracle Solaris
>> Studio. For this release, version 4.8.2 of the g++ runtime library
>> is used.
> Interesting. This means you should be able to build Xerces-C++ with
> GCC (probably even in C++98 mode, though it should also build in C++11)
> and then link it to your application that is built with Sun CC in C++11
> mode.
Most, if not all of the Xerces-C++ check programs are failing by
throwing an EndOfEntityException. This has been reported by others
years ago (that you even commented on). There wasn't any resolution and
I guess it is a problem with the g++ runtime on Solaris. Here's a stack
trace:
> t at 1 (l at 1) program terminated by signal ABRT (Abort)
> 0xfd86c925: __lwp_kill+0x0015: jae __lwp_kill+0x23 [
> 0xfd86c933, .+0xe ]
> Current function is xercesc_3_1::ReaderMgr::popReader
> 1083 throw EndOfEntityException(prevEntity, readerNum);
> (dbx) print fThrowEOE
> fThrowEOE = false
> (dbx) print prevReaderThrowAtEnd
> prevReaderThrowAtEnd = true
> (dbx) print readerNum
> readerNum = 3U
and the code
> 1078 //
> 1079 // If there was a previous entity, and either the
> fThrowEOE flag is
> set
> 1080 // or reader was marked as such, then throw an end of entity.
> 1081 //
> 1082 if (prevEntity && (fThrowEOE || prevReaderThrowAtEnd))
> 1083 throw EndOfEntityException(prevEntity, readerNum);
I'm giving up. I'll look for an alternative CDF Java library that
doesn't have the performance limitation (single threadedness) that cause
me to look at C++. If that doesn't work, I my just use simple
"std::cout <<" statements to produce the XML from C++ instead of using
xsd and Xerces-C++. Neither is as nice but may be less work. Thanks.
Bernie
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 7270 bytes
Desc: S/MIME Cryptographic Signature
Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20160411/f45f9c38/smime.bin
More information about the xsd-users
mailing list