diff options
author | Steve Naroff <snaroff@apple.com> | 2008-08-05 20:04:48 +0000 |
---|---|---|
committer | Steve Naroff <snaroff@apple.com> | 2008-08-05 20:04:48 +0000 |
commit | dd514e01f2c5267b138fdc0a80a3fce08526bba6 (patch) | |
tree | d60756fb75df2f47d6e180eefb7f461540aea758 | |
parent | 9f6112c4e6d8dd5c5ce507f4c87a94eb9aca0995 (diff) | |
download | bcm5719-llvm-dd514e01f2c5267b138fdc0a80a3fce08526bba6.tar.gz bcm5719-llvm-dd514e01f2c5267b138fdc0a80a3fce08526bba6.zip |
Finish fixing <rdar://problem/5929344> clang ObjC rewriter: "extern int __CFConstantStringClassReference[];" should be extern "C"
llvm-svn: 54367
-rw-r--r-- | clang/Driver/RewriteObjC.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/Driver/RewriteObjC.cpp b/clang/Driver/RewriteObjC.cpp index a6e53649740..b83200e16ec 100644 --- a/clang/Driver/RewriteObjC.cpp +++ b/clang/Driver/RewriteObjC.cpp @@ -358,7 +358,11 @@ void RewriteObjC::Initialize(ASTContext &context) { Preamble += " char *str;\n"; Preamble += " long length;\n"; Preamble += "};\n"; + Preamble += "#ifdef CF_EXPORT_CONSTANT_STRING\n"; + Preamble += "extern \"C\" __declspec(dllexport) int __CFConstantStringClassReference[];\n"; + Preamble += "#else\n"; Preamble += "__OBJC_RW_EXTERN int __CFConstantStringClassReference[];\n"; + Preamble += "#endif\n"; Preamble += "#define __NSCONSTANTSTRINGIMPL\n"; Preamble += "#endif\n"; if (LangOpts.Microsoft) { |