[ https://issues.apache.org/jira/browse/STDCXX-664?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12550136 ]
Travis Vitek commented on STDCXX-664: ------------------------------------- The issue is that somehow the classic locale on AIX actually seems to have the _byname facets installed. The following testcase demonstrates. [EMAIL PROTECTED] tests]$ cat t.cpp #include <locale> #include <stdio.h> int main () { #define TEST(Facet) \ try { \ std::use_facet<Facet>(classic); \ fprintf (stderr, "found facet %s in locale %s\n", \ #Facet, classic.name ().c_str ()); \ } \ catch (...) { \ } const std::locale classic (std::locale::classic ()); typedef std::ctype_byname<char> ctype_byname; TEST (ctype_byname); typedef std::collate_byname<char> collate_byname; TEST (collate_byname); typedef std::messages_byname<char> messages_byname; TEST (messages_byname); typedef std::numpunct_byname<char> numpunct_byname; TEST (numpunct_byname); typedef std::time_get_byname<char> time_get_byname; TEST (time_get_byname); typedef std::time_put_byname<char> time_put_byname; TEST (time_put_byname); return 0; } > [IBM XLC++ 9.0/AIX 5.3] SIGABRT in 22.locale.globals.mt > ------------------------------------------------------- > > Key: STDCXX-664 > URL: https://issues.apache.org/jira/browse/STDCXX-664 > Project: C++ Standard Library > Issue Type: Bug > Components: Tests > Affects Versions: 4.2.0 > Reporter: Travis Vitek > Assignee: Travis Vitek > Fix For: 4.2.1 > > > Appears to affect single-threaded bulids only. > [EMAIL PROTECTED] tests]$ ./22.locale.globals.mt > # INFO (S1) (10 lines): > # TEXT: > # COMPILER: IBM VisualAge C++, __IBMCPP__ = 900 > # ENVIRONMENT: powerpc running aix-5.3 > # FILE: 22.locale.globals.mt.cpp > # COMPILED: Nov 8 2007, 21:35:16 > # COMMENT: thread safety > ############################################################ > # CLAUSE: lib.locale.global.templates > # NOTE (S2) (5 lines): > # TEXT: executing "locale -a > /tmp/tmpfile-fK3jqa" > # CLAUSE: lib.locale.global.templates > # FILE: process.cpp > # LINE: 270 > # INFO (S1) (3 lines): > # TEXT: testing std::locale globals with 1 thread, 20000 iterations each, in > 16 locales { "C" "POSIX" "AR_DZ.UTF-8" "AR_BH" "AR_AA.UTF-8" "AR_BH.UTF-8" > "AR_AE.UTF-8" "AR_DZ" "AR_EG.UTF-8" "AR_EG" "AR_AE" "AR_AA" "AR_JO" > "AR_JO.UTF-8" "AR_KW" "AR_KW.UTF-8" } > # CLAUSE: lib.locale.global.templates > # INFO (S1) (3 lines): > # TEXT: template <class T> bool std::has_facet (const locale&) > # CLAUSE: lib.locale.global.templates > # INFO (S1) (3 lines): > # TEXT: template <class T> const T& std::use_facet (const locale&) > # CLAUSE: lib.locale.global.templates > # WARNING (S5) (3 lines): > # TEXT: exceptions not thread safe, skipping that part of test > # CLAUSE: lib.locale.global.templates > /amd/devco/vitek/stdcxx-trunk/tests/localization/22.locale.globals.mt.cpp:311: > use_facet_loop: Assertion 'threw || opt_facets [opt_inx_collate] < 0' failed. > IOT/Abort trap (core dumped) > [EMAIL PROTECTED] tests]$ -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.