[Lldb-commits] [lldb] r250833 - Fix MSVC build after 250820
Tamas Berghammer via lldb-commits
lldb-commits at lists.llvm.org
Tue Oct 20 09:16:36 PDT 2015
Author: tberghammer
Date: Tue Oct 20 11:16:35 2015
New Revision: 250833
URL: http://llvm.org/viewvc/llvm-project?rev=250833&view=rev
Log:
Fix MSVC build after 250820
Work around a bug in MSVC 12 where _HAS_EXCEPTIONS=0 don't eliminate
all usage of __uncaught_exception with including eh.h what declares
that function.
Modified:
lldb/trunk/include/lldb/Utility/TaskPool.h
Modified: lldb/trunk/include/lldb/Utility/TaskPool.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Utility/TaskPool.h?rev=250833&r1=250832&r2=250833&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Utility/TaskPool.h (original)
+++ lldb/trunk/include/lldb/Utility/TaskPool.h Tue Oct 20 11:16:35 2015
@@ -10,6 +10,14 @@
#ifndef utility_TaskPool_h_
#define utility_TaskPool_h_
+#if defined(__cplusplus) && defined(_MSC_VER) && (_HAS_EXCEPTIONS == 0)
+// Compiling MSVC libraries with _HAS_EXCEPTIONS=0, eliminates most but not all
+// calls to __uncaught_exception. Unfortunately, it does seem to eliminate
+// the delcaration of __uncaught_excpeiton. Including <eh.h> ensures that it is
+// declared. This may not be necessary after MSVC 12.
+#include <eh.h>
+#endif
+
#include <cassert>
#include <cstdint>
#include <future>
More information about the lldb-commits
mailing list