diff options
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/Sema/Sema.h | 2 | ||||
| -rw-r--r-- | clang/lib/Sema/SemaChecking.cpp | 7 | ||||
| -rw-r--r-- | clang/lib/Sema/SemaExprObjC.cpp | 3 |
3 files changed, 6 insertions, 6 deletions
diff --git a/clang/lib/Sema/Sema.h b/clang/lib/Sema/Sema.h index 1bc469235a0..fd59bf0691e 100644 --- a/clang/lib/Sema/Sema.h +++ b/clang/lib/Sema/Sema.h @@ -1989,7 +1989,7 @@ public: private: Action::OwningExprResult CheckFunctionCall(FunctionDecl *FDecl, CallExpr *TheCall); - bool CheckBuiltinCFStringArgument(Expr* Arg); + bool CheckObjCString(Expr *Arg); bool SemaBuiltinVAStart(CallExpr *TheCall); bool SemaBuiltinUnorderedCompare(CallExpr *TheCall); bool SemaBuiltinStackAddress(CallExpr *TheCall); diff --git a/clang/lib/Sema/SemaChecking.cpp b/clang/lib/Sema/SemaChecking.cpp index e2ec2676c70..db622f66483 100644 --- a/clang/lib/Sema/SemaChecking.cpp +++ b/clang/lib/Sema/SemaChecking.cpp @@ -37,7 +37,7 @@ Sema::CheckFunctionCall(FunctionDecl *FDecl, CallExpr *TheCall) { case Builtin::BI__builtin___CFStringMakeConstantString: assert(TheCall->getNumArgs() == 1 && "Wrong # arguments to builtin CFStringMakeConstantString"); - if (CheckBuiltinCFStringArgument(TheCall->getArg(0))) + if (CheckObjCString(TheCall->getArg(0))) return ExprError(); return move(TheCallResult); case Builtin::BI__builtin_stdarg_start: @@ -91,11 +91,10 @@ Sema::CheckFunctionCall(FunctionDecl *FDecl, CallExpr *TheCall) { return move(TheCallResult); } -/// CheckBuiltinCFStringArgument - Checks that the argument to the builtin +/// CheckObjCString - Checks that the argument to the builtin /// CFString constructor is correct -bool Sema::CheckBuiltinCFStringArgument(Expr* Arg) { +bool Sema::CheckObjCString(Expr *Arg) { Arg = Arg->IgnoreParenCasts(); - StringLiteral *Literal = dyn_cast<StringLiteral>(Arg); if (!Literal || Literal->isWide()) { diff --git a/clang/lib/Sema/SemaExprObjC.cpp b/clang/lib/Sema/SemaExprObjC.cpp index b0b53677908..1da74b9c320 100644 --- a/clang/lib/Sema/SemaExprObjC.cpp +++ b/clang/lib/Sema/SemaExprObjC.cpp @@ -48,7 +48,8 @@ Sema::ExprResult Sema::ParseObjCStringLiteral(SourceLocation *AtLocs, AtLoc); } - if (CheckBuiltinCFStringArgument(S)) + // Verify that this composite string is acceptable for ObjC strings. + if (CheckObjCString(S)) return true; if (Context.getObjCConstantStringInterface().isNull()) { |

