[ 
https://issues.apache.org/jira/browse/STDCXX-886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12590526#action_12590526
 ] 

Martin Sebor commented on STDCXX-886:
-------------------------------------

This shouldn't be caused by  a {{NUL}} thousands separator like STDCXX-846 
presumably is since there appear to be no such locales on HP-UX:
{noformat}
$ for n in `locale -a`; do \
    LC_ALL=$n locale -ck LC_NUMERIC | grep "thousands_sep=\"\"" >/dev/null; \
    if [ $? -eq 0 ]; then \
      printff "%16s: " $n; LC_ALL=$n locale -ck LC_NUMERIC | grep grouping; \
    fi; \
  done
               C: grouping=
           POSIX: grouping=
      C.iso88591: grouping=127
     C.iso885915: grouping=127
          C.utf8: grouping=127
       univ.utf8: grouping=127
   ar_SA.arabic8: grouping=127
  ar_SA.iso88596: grouping=127
      ar_SA.utf8: grouping=127
{noformat}

> [HP aCC 6.16] SIGABRT in 22.locale.num.get.mt
> ---------------------------------------------
>
>                 Key: STDCXX-886
>                 URL: https://issues.apache.org/jira/browse/STDCXX-886
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: Tests
>    Affects Versions: trunk
>         Environment: $ uname -sr && model && aCC -V
> HP-UX B.11.31
> ia64 hp server rx2660
> aCC: HP C/aC++ B3910B A.06.16 [Nov 26 2007]
>            Reporter: Martin Sebor
>             Fix For: 4.2.2
>
>
> The test fails with {{SIGABRT}} in nightly builds but it look like a thread 
> safety problem because it fails even with a single thread. Here's the output 
> including the stack trace:
> {noformat}
> $ ./22.locale.num.get.mt --nthreads=1 2>&1 | c++filt 
> # INFO (S1) (10 lines):
> # TEXT: 
> # COMPILER: HP aCC, __HP_aCC = 61600, __EDG_VERSION__ = 308
> # ENVIRONMENT: ia64 running hp-ux
> # FILE: 22.locale.num.get.mt.cpp
> # COMPILED: Apr 16 2008, 17:48:24
> # COMMENT: thread safety
> ############################################################
> # CLAUSE: lib.locale.num.get
> # NOTE (S2) (5 lines):
> # TEXT: executing "locale -a > /var/tmp/tmpfile-005971"
> # CLAUSE: lib.locale.num.get
> # FILE: process.cpp
> # LINE: 276
> # INFO (S1) (3 lines):
> # TEXT: testing std::num_get<charT> with 1 thread, 100000 iterations each, in 
> 32 locales { "C" "POSIX" "C.iso88591" "C.iso885915" "C.utf8" "univ.utf8" 
> "ar_DZ.arabic8" "ar_DZ.utf8" "ar_SA.arabic8" "ar_SA.iso88596" "ar_SA.utf8" 
> "bg_BG.iso88595" "bg_BG.utf8" "zh_CN.gb18030" "zh_CN.hp15CN" "zh_CN.utf8" 
> "zh_HK.hkbig5" "zh_HK.utf8" "zh_TW.big5" "zh_TW.ccdc" "zh_TW.eucTW" 
> "zh_TW.utf8" "cs_CZ.iso88592" "cs_CZ.utf8" "da_DK.iso88591" "[EMAIL 
> PROTECTED]" "da_DK.roman8" "da_DK.utf8" "nl_NL.iso88591" "[EMAIL PROTECTED]" 
> "nl_NL.roman8" "nl_NL.utf8" }
> # CLAUSE: lib.locale.num.get
> # INFO (S1) (3 lines):
> # TEXT: exercising std::num_get<char>
> # CLAUSE: lib.locale.num.get
> /amd/devco/sebor/stdcxx/tests/localization/22.locale.num.get.mt.cpp:245: void 
> test_get_data(const MyNumData &, const std::num_get<charT, 
> std::istreambuf_iterator<_CharT, std::char_traits<_CharT>>> &, const 
> std::istreambuf_iterator<_CharT, _Traits> &, const 
> std::istreambuf_iterator<_CharT, _Traits> &, std::basic_ios<charT, Traits> &) 
> [with charT = char, Traits = std::char_traits<char>]: Assertion '! (state & 
> std::ios_base::failbit)' failed.
> (0)  0xc000000006227a90  __rw::__rw_assert_fail(char const*,char 
> const*,int,char const*) + 0x170 at /amd/devco/sebor/stdcxx/src/assert.cpp:103 
> [/build/sebor/stdcxx-aCC-6.16-15D/lib/libstd15D.sl]
> (1)  0x4000000000031c90  void test_get_data<char,std::char_traits<char> 
> >(MyNumData 
> const&,std::num_get<(%0=)char,std::istreambuf_iterator<std::num_get,std::char_traits<std::num_get>
>  > > const&,(%0=)char<std::num_get,(%1=)std::char_traits<char> > 
> const&,std::num_get<(%0=)char,std::istreambuf_iterator<std::num_get,std::char_traits<std::num_get>
>  > > 
> const,std::basic_ios<std::num_get,std::istreambuf_iterator<std::num_get,std::char_traits<std::num_get>
>  > >&) + 0x4e0 at 
> /amd/devco/sebor/stdcxx/tests/localization/22.locale.num.get.mt.cpp:245 
> [./22.locale.num.get.mt]
> (2)  0x4000000000030690  thread_func(void*) + 0x350 at 
> /amd/devco/sebor/stdcxx/tests/localization/22.locale.num.get.mt.cpp:354 
> [./22.locale.num.get.mt]
> (3)  0xc0000000000dfa90  __pthread_bound_body + 0x170 at 
> /ux/core/libs/threadslibs/src/common/pthreads/pthread.c:4871 
> [/usr/lib/hpux64/libpthread.so.1]
> {noformat}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to