Author: djasper
Date: Mon Apr 27 17:42:20 2015
New Revision: 235932
URL: http://llvm.org/viewvc/llvm-project?rev=235932&view=rev
Log:
clang-tidy: [readability-else-after-return] Fix false positive. This
might be a little too strict now, but better be too strict than do the
wrong thing.
Modified:
clang-tools-extra/trunk/clang-tidy/readability/ElseAfterReturnCheck.cpp
clang-tools-extra/trunk/test/clang-tidy/readability-else-after-return.cpp
Modified:
clang-tools-extra/trunk/clang-tidy/readability/ElseAfterReturnCheck.cpp
URL:
http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/readability/ElseAfterReturnCheck.cpp?rev=235932&r1=235931&r2=235932&view=diff
==============================================================================
--- clang-tools-extra/trunk/clang-tidy/readability/ElseAfterReturnCheck.cpp
(original)
+++ clang-tools-extra/trunk/clang-tidy/readability/ElseAfterReturnCheck.cpp Mon
Apr 27 17:42:20 2015
@@ -20,9 +20,11 @@ namespace readability {
void ElseAfterReturnCheck::registerMatchers(MatchFinder *Finder) {
// FIXME: Support continue, break and throw.
Finder->addMatcher(
- ifStmt(
- hasThen(stmt(anyOf(returnStmt(), compoundStmt(has(returnStmt()))))),
- hasElse(stmt().bind("else"))).bind("if"),
+ compoundStmt(
+ forEach(ifStmt(hasThen(stmt(anyOf(returnStmt(),
+ compoundStmt(has(returnStmt()))))),
+ hasElse(stmt().bind("else")))
+ .bind("if"))),
this);
}
Modified:
clang-tools-extra/trunk/test/clang-tidy/readability-else-after-return.cpp
URL:
http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/readability-else-after-return.cpp?rev=235932&r1=235931&r2=235932&view=diff
==============================================================================
--- clang-tools-extra/trunk/test/clang-tidy/readability-else-after-return.cpp
(original)
+++ clang-tools-extra/trunk/test/clang-tidy/readability-else-after-return.cpp
Mon Apr 27 17:42:20 2015
@@ -24,5 +24,12 @@ void f(int a) {
} else {
return;
}
+
+ if (a > 0)
+ f(0);
+ else if (a > 10)
+ return;
+ else
+ f(0);
}
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits