Bug 1318025 - re-enable thread-safe statics on Windows builds; r=glandium
authorNathan Froyd <froydnj@mozilla.com>
Fri, 23 Dec 2016 09:03:27 -0500
changeset 453577 9b9dacbeb8bdf5962785f0ceecb67d5b46e0ac1d
parent 453576 fae695cada69c57392672a1b00f480587551a1c8
child 453578 d98d1548d5dd92e6cb5ad6e7d052e12526e59502
push id39711
push userdmitchell@mozilla.com
push dateFri, 23 Dec 2016 21:59:47 +0000
reviewersglandium
bugs1318025, 1204752
milestone53.0a1
Bug 1318025 - re-enable thread-safe statics on Windows builds; r=glandium This change effectively backs out bug 1204752. Since we no longer need to support XP, we can enable thread-safe-statics.
js/src/old-configure.in
old-configure.in
--- a/js/src/old-configure.in
+++ b/js/src/old-configure.in
@@ -189,20 +189,16 @@ case "$target" in
             # C5026: move constructor was implicitly defined as deleted
             CXXFLAGS="$CXXFLAGS -wd5026"
 
             # C5027: move assignment operator was implicitly defined as deleted
             CXXFLAGS="$CXXFLAGS -wd5027"
 
             # -Zc:sizedDealloc- disables C++14 global sized deallocation (see bug 1160146)
             CXXFLAGS="$CXXFLAGS -Zc:sizedDealloc-"
-
-            # Disable C++11 thread-safe statics due to crashes on XP (bug 1204752)
-            # See https://connect.microsoft.com/VisualStudio/feedback/details/1789709/visual-c-2015-runtime-broken-on-windows-server-2003-c-11-magic-statics
-            CXXFLAGS="$CXXFLAGS -Zc:threadSafeInit-"
             ;;
         esac
         AC_SUBST(MSVS_VERSION)
         AC_SUBST(MSVC_C_RUNTIME_DLL)
         AC_SUBST(MSVC_CXX_RUNTIME_DLL)
 
         # Check linker version
         _LD_FULL_VERSION=`"${LINK}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"`
--- a/old-configure.in
+++ b/old-configure.in
@@ -253,20 +253,16 @@ case "$target" in
             CXXFLAGS="$CXXFLAGS -wd5026"
 
             # C5027: move assignment operator was implicitly defined as deleted
             CXXFLAGS="$CXXFLAGS -wd5027"
 
             # -Zc:sizedDealloc- disables C++14 global sized deallocation (see bug 1160146)
             CXXFLAGS="$CXXFLAGS -Zc:sizedDealloc-"
 
-            # Disable C++11 thread-safe statics due to crashes on XP (bug 1204752)
-            # See https://connect.microsoft.com/VisualStudio/feedback/details/1789709/visual-c-2015-runtime-broken-on-windows-server-2003-c-11-magic-statics
-            CXXFLAGS="$CXXFLAGS -Zc:threadSafeInit-"
-
             # https://connect.microsoft.com/VisualStudio/feedback/details/888527/warnings-on-dbghelp-h
             # for dbghelp.h, imagehlp.h, and shobj.h
             # C4091: 'typedef ': ignored on left of '' when no variable is declared
             CFLAGS="$CFLAGS -wd4091"
             CXXFLAGS="$CXXFLAGS -wd4091"
 
             # This is intended as a temporary hack to support building with VS2015.
             # 'noexcept' used with no exception handling mode specified;