[PATCH] D28220: provide Win32 native threading
Kim Gräsman via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Jan 3 01:41:25 PST 2017
kimgr added a comment.
Re Eric's windows.h concern.
================
Comment at: include/__threading_support:44
+#define WIN32_LEAN_AND_MEAN
+#define VC_EXTRA_LEAN
+#include <Windows.h>
----------------
EricWF wrote:
> compnerd wrote:
> > EricWF wrote:
> > > Do these definitions have any affect when `<Windows.h>` has already been included?
> > > Also are these definitions required before including the header, or merely beneficial? If they are required this will make the `<Windows.h>` header a pain to use with modules.
> > >
> > >
> > No, they dont effect it once it has been included. They are beneficial since they reduce the amount of stuff that gets included (including things which, at least when I last checked, can cause clang to choke).
> And can users re-include `<Windows.h>` afterwards in the same TU and get all of the symbols?
I don't think so.
We've recently switched to defining these two symbols in our build system, and I think that's basically the only way to make this work in a project composed of headers from various authors. I think you're right that libc++ should not define them.
Repository:
rL LLVM
https://reviews.llvm.org/D28220
More information about the cfe-commits
mailing list