summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaChecking.cpp
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2014-02-23 14:34:50 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2014-02-23 14:34:50 +0000
commitae852a68fe50f0c61eb73ed88e2a725e97029aae (patch)
tree9c51d98efbc26faa5464fa729874eee4fec9074c /clang/lib/Sema/SemaChecking.cpp
parent3ebfe115328b7b928fe49b8d9d68085ce675a6ea (diff)
downloadbcm5719-llvm-ae852a68fe50f0c61eb73ed88e2a725e97029aae.tar.gz
bcm5719-llvm-ae852a68fe50f0c61eb73ed88e2a725e97029aae.zip
Sema: Simplify away one-iteration loops.
No functionality change. llvm-svn: 201981
Diffstat (limited to 'clang/lib/Sema/SemaChecking.cpp')
-rw-r--r--clang/lib/Sema/SemaChecking.cpp19
1 files changed, 5 insertions, 14 deletions
diff --git a/clang/lib/Sema/SemaChecking.cpp b/clang/lib/Sema/SemaChecking.cpp
index a48a7b273e4..0b73f82639e 100644
--- a/clang/lib/Sema/SemaChecking.cpp
+++ b/clang/lib/Sema/SemaChecking.cpp
@@ -4400,16 +4400,10 @@ Sema::CheckReturnValExpr(Expr *RetValExp, QualType lhsType,
CheckReturnStackAddr(*this, RetValExp, lhsType, ReturnLoc);
// Check if the return value is null but should not be.
- if (Attrs)
- for (specific_attr_iterator<ReturnsNonNullAttr>
- I = specific_attr_iterator<ReturnsNonNullAttr>(Attrs->begin()),
- E = specific_attr_iterator<ReturnsNonNullAttr>(Attrs->end());
- I != E; ++I) {
- if (CheckNonNullExpr(*this, RetValExp))
- Diag(ReturnLoc, diag::warn_null_ret)
- << (isObjCMethod ? 1 : 0) << RetValExp->getSourceRange();
- break;
- }
+ if (Attrs && hasSpecificAttr<ReturnsNonNullAttr>(*Attrs) &&
+ CheckNonNullExpr(*this, RetValExp))
+ Diag(ReturnLoc, diag::warn_null_ret)
+ << (isObjCMethod ? 1 : 0) << RetValExp->getSourceRange();
// C++11 [basic.stc.dynamic.allocation]p4:
// If an allocation function declared with a non-throwing
@@ -7381,10 +7375,7 @@ bool GetMatchingCType(
return false;
if (VD) {
- for (specific_attr_iterator<TypeTagForDatatypeAttr>
- I = VD->specific_attr_begin<TypeTagForDatatypeAttr>(),
- E = VD->specific_attr_end<TypeTagForDatatypeAttr>();
- I != E; ++I) {
+ if (TypeTagForDatatypeAttr *I = VD->getAttr<TypeTagForDatatypeAttr>()) {
if (I->getArgumentKind() != ArgumentKind) {
FoundWrongKind = true;
return false;
OpenPOWER on IntegriCloud