Uploaded image for project: 'C++ Standard Library'
  1. C++ Standard Library
  2. STDCXX-1071

numpunct facet cache initialization is not thread -safe

    Details

    • Type: Bug
    • Status: Open
    • Priority: Critical
    • Resolution: Unresolved
    • Affects Version/s: 4.2.1, 4.2.x, 4.3.x, 5.0.0
    • Fix Version/s: 4.2.x, 4.3.x, 5.0.0
    • Environment:

      $ uname -a; CC -V
      Linux behemoth 2.6.37.6 #3 SMP Sat Apr 9 22:49:32 CDT 2011 x86_64 AMD Opteron(tm) Processor 6134 AuthenticAMD GNU/Linux
      CC: Sun C++ 5.12 Linux_i386 2011/11/16

    • Patch Info:
      Patch Available
    • Severity:
      Incorrect Behavior

      Description

      The bug affects the initialization of the cached data in numpunct facet. The failing test is 22.locale.numpunct.cpp in certain builds: Linux with SUNPro 5.12, optimized, most likely to fail. It has been reported (see linked incidents) to fail on SPARC as well. It manifests in variate ways: sometimes as heap corruption, sometimes as access violations, etc. Test cases and library reduction programs to follow.

        Attachments

        1. library-reduction.cpp
          3 kB
          Liviu Nicoara
        2. patch-4.2.x.diff
          3 kB
          Liviu Nicoara
        3. patch-5.0.x.diff
          4 kB
          Liviu Nicoara
        4. patch-timings.tgz
          3 kB
          Liviu Nicoara
        5. punct-mt.cpp
          1 kB
          Liviu Nicoara

          Issue Links

            Activity

              People

              • Assignee:
                nikkoara Liviu Nicoara
                Reporter:
                nikkoara Liviu Nicoara
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:

                  Time Tracking

                  Estimated:
                  Original Estimate - 8h
                  8h
                  Remaining:
                  Remaining Estimate - 8h
                  8h
                  Logged:
                  Time Spent - Not Specified
                  Not Specified