[Lldb-commits] [PATCH] D18287: Don't try to redefine the signal() function on Windows
Zachary Turner via lldb-commits
lldb-commits at lists.llvm.org
Fri Mar 18 16:26:26 PDT 2016
zturner added inline comments.
================
Comment at: tools/driver/Driver.cpp:1314
@@ -1313,1 +1313,3 @@
+ signal(SIGINT, sigint_handler);
+#ifndef _MSC_VER
signal (SIGPIPE, SIG_IGN);
----------------
I think `_MSC_VER` is the right check, because the builtin `signal` implementation is something that is part of Visual Studio. If you were using Cygwin I imagine some of those constants might be present (although tbh, I don't ever use Cygwin and I don't know if anyone else does either, so someone would need to confirm).
`_MSC_VER` is also defined for clang-cl, so this check would catch MSVC and clang-cl
================
Comment at: tools/driver/Platform.cpp:93-97
@@ -92,7 @@
- {
- case ( SIGINT ):
- {
- _ctrlHandler = sigFunc;
- SetConsoleCtrlHandler( CtrlHandler, TRUE );
- }
- break;
----------------
Yes, because now `MIDriverMain.cpp` should end up calling the builtin version of `signal()`, which also calls `SetConsoleCtrlHandler`. As far as I can tell there's no actual difference (technically, the builtin version is a strict superset of this version, so if anything it should be better)
http://reviews.llvm.org/D18287
More information about the lldb-commits
mailing list