diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2012-05-24 16:48:23 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2012-05-24 16:48:23 +0000 |
commit | b482260748fee8daad24920331d7be74642a6d17 (patch) | |
tree | 8edd15785a362cc59d2d08266e04354db319a3ed /clang/lib/Edit/RewriteObjCFoundationAPI.cpp | |
parent | 870265636caaac6ab8ad3d23eb0d306a4a131077 (diff) | |
download | bcm5719-llvm-b482260748fee8daad24920331d7be74642a6d17.tar.gz bcm5719-llvm-b482260748fee8daad24920331d7be74642a6d17.zip |
[objcmt] Warn when modern objc migrator does not convert a NSNumber message because it requires a cast.
rdar://11525138
llvm-svn: 157395
Diffstat (limited to 'clang/lib/Edit/RewriteObjCFoundationAPI.cpp')
-rw-r--r-- | clang/lib/Edit/RewriteObjCFoundationAPI.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/clang/lib/Edit/RewriteObjCFoundationAPI.cpp b/clang/lib/Edit/RewriteObjCFoundationAPI.cpp index 7445700cc49..9c00d9ea779 100644 --- a/clang/lib/Edit/RewriteObjCFoundationAPI.cpp +++ b/clang/lib/Edit/RewriteObjCFoundationAPI.cpp @@ -801,8 +801,14 @@ static bool rewriteToNumericBoxedExpression(const ObjCMessageExpr *Msg, } } - if (needsCast) + if (needsCast) { + DiagnosticsEngine &Diags = Ctx.getDiagnostics(); + // FIXME: Use a custom category name to distinguish migration diagnostics. + unsigned diagID = Diags.getCustomDiagID(DiagnosticsEngine::Warning, + "converting to boxing syntax requires a cast"); + Diags.Report(Msg->getExprLoc(), diagID) << Msg->getSourceRange(); return false; + } SourceRange ArgRange = OrigArg->getSourceRange(); commit.replaceWithInner(Msg->getSourceRange(), ArgRange); |