aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2012-07-16 16:21:45 +0000
committerFariborz Jahanian <fjahanian@apple.com>2012-07-16 16:21:45 +0000
commitdaa872b64d2654f2e2b4ccb1697107640ffd38a8 (patch)
tree758e213bd2b4fe477fe37f1251af253bbeeaae74
parent177f1be7fe5b7d71a791901fb83d95e18c413513 (diff)
modern objective-c translator: conditionally include
<string.h>. // rdar://11847319 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160287 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Rewrite/RewriteModernObjC.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/Rewrite/RewriteModernObjC.cpp b/lib/Rewrite/RewriteModernObjC.cpp
index 37e780aba3..256984d881 100644
--- a/lib/Rewrite/RewriteModernObjC.cpp
+++ b/lib/Rewrite/RewriteModernObjC.cpp
@@ -5959,7 +5959,11 @@ void RewriteModernObjC::Initialize(ASTContext &context) {
Preamble += "#define __block\n";
Preamble += "#define __weak\n";
}
- Preamble += "\nextern \"C\" void * memset(void *b, int c, unsigned long len);\n";
+ Preamble += "\n#if defined(_MSC_VER)\n";
+ Preamble += "#include <string.h>\n";
+ Preamble += "#else\n";
+ Preamble += "extern \"C\" void * memset(void *b, int c, unsigned long len);\n";
+ Preamble += "#endif\n";
// Declarations required for modern objective-c array and dictionary literals.
Preamble += "\n#include <stdarg.h>\n";