Reorganize predefined macros for all Windows targets.
This adds an option to set the _MSC_VER macro without
recompiling. This is very useful when testing compatibility
with the Windows SDK and c++stdlib headers.
-fmsc-version=<version> (defaults to VS2003 (1300))
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116999 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/docs/UsersManual.html b/docs/UsersManual.html
index 154cf86..a271dc3 100644
--- a/docs/UsersManual.html
+++ b/docs/UsersManual.html
@@ -922,6 +922,12 @@
certain constructs (including __declspec and Microsoft-style asm statements).
</p>
+<li>clang allows setting _MCS_VER with -fmsc-version=. It defaults to 1300 which
+is the same as Visual C/C++ 2003. Any number is supported and can greatly affect
+what Windows SDK and c++stdlib headers clang can compile. This option will be
+removed when clang supports the full set of MS extensions required for these
+headers.</li>
+
<li>clang does not support the Microsoft extension where anonymous
record members can be declared using user defined typedefs.</li>
diff --git a/docs/tools/clang.pod b/docs/tools/clang.pod
index b99eb8f..9f7a448 100644
--- a/docs/tools/clang.pod
+++ b/docs/tools/clang.pod
@@ -175,6 +175,10 @@
Enable support for Microsoft extensions.
+=item B<-fmsc-version=>
+
+Set _MSC_VER. Defaults to 1300 on Windows. Not set otherwise.
+
=item B<-fborland-extensions>
Enable support for Borland extensions.