This is the mail archive of the
mailing list for the Cygwin project.
Re: UTF32 crash in poco-1.6.0 - Request for help
- From: David Stacey <drstacey at tiscali dot co dot uk>
- To: cygwin-apps at cygwin dot com
- Date: Wed, 25 Feb 2015 22:18:21 +0000
- Subject: Re: UTF32 crash in poco-1.6.0 - Request for help
- Authentication-results: sourceware.org; auth=none
- References: <54E480EB dot 3030904 at tiscali dot co dot uk>
On 18/02/15 12:09, David Stacey wrote:
The test causing the crash is the UnicodeConverterTest
(Foundation/testsuite/src/UnicodeConverterTest.cpp). This is
templated, and is instantiated with both UTF16 and UTF32 strings. The
UTF16 case works correctly; it is the UTF32 instantiation that is
I'm still trying to get to the bottom of this. The UTF16 test (the one
that works) uses std::wstring, but the UTF32 test (the one that crashes)
uses a custom string made with a 32-bit integer and corresponding traits
class. If the UTF16 test is switched from using std::wstring to a
similar custom string type then this also crashes.
It would be easy to blame the custom string types, except that I can
isolate the code in a stand-alone example that works fine. Plus, I've
compiled Poco on Fedora 21 with the two custom string types, and again
everything works fine.
I tried compiling with all optimisation turned off, and now the code
still crashes, just more slowly :-) I was hoping that I might get
something more sensible out of gdb with -O0, but alas no. The next step
is to produce a static build (again with all optimisation disabled) and
then cut bits out of it until I come up with a minimal programme that
exhibits the bug.