This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libstdc++/17005] wide character strings don't work on HP-UX 11i using gcc 3.4.1
- From: "dave at hiauly1 dot hia dot nrc dot ca" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 15 Aug 2004 22:29:34 -0000
- Subject: [Bug libstdc++/17005] wide character strings don't work on HP-UX 11i using gcc 3.4.1
- References: <20040812163817.17005.jerrydy@sbcglobal.net>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca 2004-08-15 22:29 -------
Subject: Re: wide character strings don't work on HP-UX
> > Thanks to your patch, _INCLUDE__STDC_A1_SOURCE is now defined (right?) so I
> > cannot understand why on this target wcsftime expects a (wrong) const char*!
It looks as XPG4 defined the function differently from NA1 ;(
> It sort of looks as if HP may have written this stuff ... I'm still
> looking at this but it looks as if the code switches behavior depending
> on some bit in the variable __xpg4_extended_mask.
It's bit 26 in __xpg4_extended_mask that toggles the behavior.
This is a can of worms. The bits are undocumented. I don't
really have a good way of setting them as they need to be set at
runtime. I think to do this right we need wrappers for all
functions that use __xpg4_extended_mask so that the desired
mode can be set before each call.
I'm thinking about backing out the _INCLUDE__STDC_A1_SOURCE change.
Dave
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17005