I think we can. MSVC's std::once_flag default constructor is constexpr now. It still generates dynamic initialization code if you use it as a static local, but MSVC defaults to using thread safe static initialization, so that isn't a problem unless you disable it, which we don't. We disable it in compiler-rt (/Zc:threadSafeInit-), but that doesn't use this code.
On Wed, Feb 8, 2017 at 1:18 PM, Zachary Turner <ztur...@google.com> wrote: > Is this the right review? https://reviews.llvm.org/D5922 > > Being that this was over 2 years ago, I suspect it was when we were > supporting MSVC2012 and 2013. Now that we're requiring MSVC2015, is it > time to reconsider? I don't see any links to an MS Connect issue, so I > don't know what the original bug was to know if it has been fixed. > > > On Wed, Feb 8, 2017 at 1:03 PM Reid Kleckner <r...@google.com> wrote: > >> It's a sad story. Read the comments and the review threads. It's >> hilarious. >> >> On Wed, Feb 8, 2017 at 1:00 PM, Zachary Turner via lldb-dev < >> lldb-dev@lists.llvm.org> wrote: >> >> Why doesn't llvm::call_once() just use std::call_once on Windows? >> >> On Wed, Feb 8, 2017 at 12:40 PM Hans Wennborg <h...@chromium.org> wrote: >> >> The Win64 lldb build seems broken (at 294367). >> >> I ran into this when trying to build the weekly snapshot >> (http://www.llvm.org/builds/) which includes LLDB these days. >> >> I suspect this might be related to Kamil's changes a few days ago. I >> see Pavel committed something to fix Darwin afterwards. >> >> Zach, do you know what's going on here? Do we have any buildbot >> coverage for this? >> >> Creating library lib\liblldb.lib and object lib\liblldb.exp >> lldbHost.lib(HostInfoWindows.cpp.obj) : error LNK2019: unresolved >> external symbo >> l "void __cdecl llvm::sys::_mm_mfence(void)" (?_mm_mfence@sys@llvm@@YAXXZ) >> refer >> enced in function "void __cdecl llvm::call_once<class >> <lambda_e212a11f7f891e804e >> 713e15728a6adc> >(struct llvm::once_flag &,class <lambda_ >> e212a11f7f891e804e713e1 >> 5728a6adc> &&)" (??$call_once@V<lambda_e212a11f7f891e804e713e15728a6a >> dc>@@$$V@ll >> vm@@YAXAEAUonce_flag@0@$$QEAV<lambda_e212a11f7f891e804e713e15728a6a >> dc>@@@Z) >> bin\liblldb.dll : fatal error LNK1120: 1 unresolved externals >> LINK failed. with 1120 >> >> >> _______________________________________________ >> lldb-dev mailing list >> lldb-dev@lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev >> >>
_______________________________________________ lldb-dev mailing list lldb-dev@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev