diff options
| author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2012-05-16 00:21:21 +0000 |
|---|---|---|
| committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2012-05-16 00:21:21 +0000 |
| commit | 815414794256f57ea1a287f11d6b3ca9ea1af20f (patch) | |
| tree | 30c546c5f472251d7827bcb9d3b3129ce7c9ccad /clang/lib/Edit/RewriteObjCFoundationAPI.cpp | |
| parent | 0d69a3a4b37dc9367d35bac541a806efa0f0b881 (diff) | |
| download | bcm5719-llvm-815414794256f57ea1a287f11d6b3ca9ea1af20f.tar.gz bcm5719-llvm-815414794256f57ea1a287f11d6b3ca9ea1af20f.zip | |
[objcmt] Accept char arrays for rewriting to @() syntax.
Part of rdar://11438360
llvm-svn: 156880
Diffstat (limited to 'clang/lib/Edit/RewriteObjCFoundationAPI.cpp')
| -rw-r--r-- | clang/lib/Edit/RewriteObjCFoundationAPI.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/clang/lib/Edit/RewriteObjCFoundationAPI.cpp b/clang/lib/Edit/RewriteObjCFoundationAPI.cpp index 5f7bef6f547..846d58fc2cb 100644 --- a/clang/lib/Edit/RewriteObjCFoundationAPI.cpp +++ b/clang/lib/Edit/RewriteObjCFoundationAPI.cpp @@ -824,8 +824,12 @@ static bool doRewriteToUTF8StringBoxedExpressionHelper( if (Arg->isTypeDependent()) return false; + ASTContext &Ctx = NS.getASTContext(); + const Expr *OrigArg = Arg->IgnoreImpCasts(); QualType OrigTy = OrigArg->getType(); + if (OrigTy->isArrayType()) + OrigTy = Ctx.getArrayDecayedType(OrigTy); if (const StringLiteral * StrE = dyn_cast<StringLiteral>(OrigArg->IgnoreParens())) { @@ -834,8 +838,6 @@ static bool doRewriteToUTF8StringBoxedExpressionHelper( return true; } - ASTContext &Ctx = NS.getASTContext(); - if (const PointerType *PT = OrigTy->getAs<PointerType>()) { QualType PointeeType = PT->getPointeeType(); if (Ctx.hasSameUnqualifiedType(PointeeType, Ctx.CharTy)) { |

