incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Martin Sebor (JIRA)" <j...@apache.org>
Subject [jira] Created: (STDCXX-453) std::moneypunct not thread safe
Date Thu, 21 Jun 2007 22:02:26 GMT
std::moneypunct not thread safe
-------------------------------

                 Key: STDCXX-453
                 URL: https://issues.apache.org/jira/browse/STDCXX-453
             Project: C++ Standard Library
          Issue Type: Bug
          Components: 22. Localization
    Affects Versions: 4.1.3
            Reporter: Martin Sebor
            Priority: Critical
         Attachments: 22.locale.moneypunct.mt.html

The 22.locale.moneypunct.mt thread safety tests aborts at runtime indicating that there is
a thread safety issue in the locale implementation. Running the test through the Intel Thread
Checker reveals possible causes of the problem. 

$ tcheck_cl -v && make 22.locale.moneypunct.mt && tcheck_cl -f html -o 22.locale.moneypunct.mt
./22.locale.moneypunct.mt --nthreads=2 --nloops=1000
Intel(R) Thread Checker 3.1 command line instrumentation driver (24400)
Copyright (c) 2007 Intel Corporation. All rights reserved.
icc -cxxlib-nostd -g   -w1  -I/amd/devco/sebor/stdcxx/include/ansi -D_RWSTDDEBUG   -D_REENTRANT
-I/amd/devco/sebor/stdcxx/include -I/build/sebor/stdcxx-icc-9.1_049-15S/include -I/amd/devco/sebor/stdcxx/tests/include
 -L/build/sebor/stdcxx-icc-9.1_049-15S/rwtest -lrwtest15S -cxxlib-nostd  -lpthread  -L/build/sebor/stdcxx-icc-9.1_049-15S/lib
  /amd/devco/sebor/stdcxx/tests/localization/22.locale.moneypunct.mt.cpp /build/sebor/stdcxx-icc-9.1_049-15S/lib/libstd15S.a
/build/sebor/stdcxx-icc-9.1_049-15S/rwtest/librwtest15S.a  -lstd15S -lcxaguard -lsupc++ -lm
-o 22.locale.moneypunct.mt
Intel(R) Thread Checker 3.1 command line instrumentation driver (24400)
Copyright (c) 2007 Intel Corporation. All rights reserved.
Building project
Instrumenting
 11% 22.locale.moneypunct.mt ( All Functions ):........................................................
.
 33% libc-2.3.4.so   ( Minimal ):....
 44% libcxaguard.so.5 ( Minimal ):..
 55% libdl-2.3.4.so  ( Minimal ):..
 66% libgcc_s-3.4.6-20060404.so.1 ( Minimal ):..
 77% libimf.so       ( Minimal ):....
 88% libm-2.3.4.so   ( Minimal ):..
100% libpthread-2.3.4.so ( Minimal ):..

Running:  /build/sebor/stdcxx-icc-9.1_049-15S/tests/22.locale.moneypunct.mt --nthreads=2 --nloops=1000

# INFO (S1) (10 lines):
# TEXT: 
# COMPILER: Intel C++, __INTEL_COMPILER = 910, __INTEL_COMPILER_BUILD_DATE = 20070320, __EDG_VERSION__
= 306
# ENVIRONMENT: x86_64/LP64 running linux-elf 2.4.20 with glibc 2.3
# FILE: 22.locale.moneypunct.mt.cpp
# COMPILED: Jun 13 2007, 14:05:31
# COMMENT: thread safety
############################################################

# CLAUSE: lib.locale.moneypunct

# NOTE (S2) (5 lines):
# TEXT: executing "locale -a > /tmp/tmpfile-EUSjge"
# CLAUSE: lib.locale.moneypunct
# FILE: process.cpp
# LINE: 274

# INFO (S1) (3 lines):
# TEXT: testing std::moneypunct<charT> with 2 threads, 1000 iterations each, in locales
{ "aa_DJ" "aa_DJ.iso88591" "aa_DJ.utf8" "aa_ER" "aa_ER@saaho" "aa_ER.utf8" "aa_ER.utf8@saaho"
"aa_ET" "aa_ET.utf8" "af_ZA" "af_ZA.iso88591" "af_ZA.utf8" "am_ET" "am_ET.utf8" "an_ES" "an_ES.iso885915"
"an_ES.utf8" "ar_AE" "ar_AE.iso88596" "ar_AE.utf8" "ar_BH" "ar_BH.iso88596" "ar_BH.utf8" "ar_DZ"
"ar_DZ.iso88596" "ar_DZ.utf8" "ar_EG" "ar_EG.iso88596" "ar_EG.utf8" "ar_IN" "ar_IN.utf8" "ar_IQ"
}
# CLAUSE: lib.locale.moneypunct

# INFO (S1) (3 lines):
# TEXT: exercising std::moneypunct<char>
# CLAUSE: lib.locale.moneypunct

/amd/devco/sebor/stdcxx/tests/localization/22.locale.moneypunct.mt.cpp:167: void *thread_func(void
*): Assertion 'fd == data->frac_digits_' failed.
/amd/devco/sebor/stdcxx/tests/localization/22.locale.moneypunct.mt.cpp:167: void *thread_func(void
*): Assertion 'fd == data->frac_digits_' failed.
/build/sebor/stdcxx-icc-9.1_049-15S/tests/./22.locale.moneypunct.mt[0x/build/sebor/stdcxx-icc-9.1_049-15S/tests/./22.locale.moneypunct.mt[0x8b9470]
8b9470]

Application finished


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


Mime
View raw message