This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libstdc++/47387] New: AIX ctype 'mask' override not working
- From: "greed at pobox dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 20 Jan 2011 21:56:09 +0000
- Subject: [Bug libstdc++/47387] New: AIX ctype 'mask' override not working
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47387
Summary: AIX ctype 'mask' override not working
Product: gcc
Version: 4.5.2
Status: UNCONFIRMED
Severity: minor
Priority: P3
Component: libstdc++
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: greed@pobox.com
Created attachment 23053
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23053
Use _M_table if not NULL
On AIX, the test '22_locale/ctype/is/char/3.cc' fails:
Assertion failed: __EX, file
/local/buildarea/grahamr/aix-ppc-5.3/gcc-4.5.2-lit
e-c++/libstdc++-v3/testsuite/22_locale/ctype/is/char/3.cc, line 39
This is because "libstdc++-v3/config/os/aix/ctype_inline.h" always uses the
system type mask, regardless of the value of _M_table.
The attached patch solve this problem for both trunk and 4.5.2. (Due to a
change in whitespace at end of line, applying on 4.5.2 needs the '-l' flag on
patch.) I based it on the logic used for Darwin.
(Problem appears to be present in 4.3.3 as well, but the testcase itself is
different and won't fail.)