<div dir="ltr">I spoke too soon. We don't need ifdefs because the overrider can have a more restrictive EH specification.<div><br></div><div>I guess you're saying that I can relax the version check to LLVM_MSC_PREREQ(1900).</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 3, 2014 at 10:06 AM, Reid Kleckner <span dir="ltr"><<a href="mailto:rnk@google.com" target="_blank">rnk@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I guess we should have more targeted ifdefs that try to check the MSVC STL version in Error.cpp to handle this case.</div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Oct 31, 2014 at 4:56 PM, David Majnemer <span dir="ltr"><<a href="mailto:david.majnemer@gmail.com" target="_blank">david.majnemer@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Unconditional noexcept was added in VS2013 Nov CTP.  noexcept(expr) was added in VS "14" CTP 1.<br><br>Sent from my phone.<div><div><br><br>On Friday, October 31, 2014, Reid Kleckner <<a href="mailto:reid@kleckner.net" target="_blank">reid@kleckner.net</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: rnk<br>
Date: Fri Oct 31 18:02:40 2014<br>
New Revision: 221013<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=221013&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=221013&view=rev</a><br>
Log:<br>
Define LLVM_NOEXCEPT with MSVC 14 CTP 3 or newer<br>
<br>
We have to use _MSC_FULL_VER here as CTP 2 and earlier didn't define<br>
noexcept to my knowledge.<br>
<br>
Fixes build error in lib/Support/Error.cpp when inheriting from<br>
std::error_category, which has a noexcept virtual method.<br>
<br>
Modified:<br>
    llvm/trunk/include/llvm/Support/Compiler.h<br>
<br>
Modified: llvm/trunk/include/llvm/Support/Compiler.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Support/Compiler.h?rev=221013&r1=221012&r2=221013&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Support/Compiler.h?rev=221013&r1=221012&r2=221013&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm/Support/Compiler.h (original)<br>
+++ llvm/trunk/include/llvm/Support/Compiler.h Fri Oct 31 18:02:40 2014<br>
@@ -66,7 +66,7 @@<br>
 #define LLVM_MSC_PREREQ(version) 0<br>
 #endif<br>
<br>
-#ifndef _MSC_VER<br>
+#if !defined(_MSC_VER) || (defined(_MSC_FULL_VER) && _MSC_FULL_VER >= 190022129LL)<br>
 #define LLVM_NOEXCEPT noexcept<br>
 #else<br>
 #define LLVM_NOEXCEPT<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a>llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
</blockquote>
</div></div><br>_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu" target="_blank">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
<br></blockquote></div><br></div>
</div></div></blockquote></div><br></div>