From 659bc4a792067b0af94ce3ccaa3a977f9f84167d Mon Sep 17 00:00:00 2001 From: Fariborz Jahanian Date: Fri, 28 Sep 2012 19:05:17 +0000 Subject: Modern objcective-C translator. When doing rewriting, Do not use the integrated pre-processor, preprocess in objective-c++ mode. // rdar://12189793. llvm-svn: 164836 --- clang/lib/Driver/Tools.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'clang/lib/Driver/Tools.cpp') diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index 12564b43f6c..3d1c9f4e8cf 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -2852,7 +2852,10 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA, it = Inputs.begin(), ie = Inputs.end(); it != ie; ++it) { const InputInfo &II = *it; CmdArgs.push_back("-x"); - CmdArgs.push_back(types::getTypeName(II.getType())); + if (Args.hasArg(options::OPT_rewrite_objc)) + CmdArgs.push_back(types::getTypeName(types::TY_PP_ObjCXX)); + else + CmdArgs.push_back(types::getTypeName(II.getType())); if (II.isFilename()) CmdArgs.push_back(II.getFilename()); else -- cgit v1.2.3