[PATCH] D26125: [clang-tidy] Fixed readability-else-after-return for cascade statements
Malcolm Parsons via cfe-commits
cfe-commits at lists.llvm.org
Fri Nov 4 11:07:54 PDT 2016
This revision was automatically updated to reflect the committed changes.
Closed by commit rL285999: [clang-tidy] Fixed readability-else-after-return for cascade statements (authored by malcolm.parsons).
Changed prior to commit:
https://reviews.llvm.org/D26125?vs=76604&id=76924#toc
Repository:
rL LLVM
https://reviews.llvm.org/D26125
Files:
clang-tools-extra/trunk/clang-tidy/readability/ElseAfterReturnCheck.cpp
clang-tools-extra/trunk/test/clang-tidy/readability-else-after-return.cpp
Index: clang-tools-extra/trunk/clang-tidy/readability/ElseAfterReturnCheck.cpp
===================================================================
--- clang-tools-extra/trunk/clang-tidy/readability/ElseAfterReturnCheck.cpp
+++ clang-tools-extra/trunk/clang-tidy/readability/ElseAfterReturnCheck.cpp
@@ -23,7 +23,7 @@
stmt(anyOf(returnStmt().bind("return"), continueStmt().bind("continue"),
breakStmt().bind("break"), cxxThrowExpr().bind("throw")));
Finder->addMatcher(
- stmt(forEach(
+ compoundStmt(forEach(
ifStmt(hasThen(stmt(
anyOf(ControlFlowInterruptorMatcher,
compoundStmt(has(ControlFlowInterruptorMatcher))))),
Index: clang-tools-extra/trunk/test/clang-tidy/readability-else-after-return.cpp
===================================================================
--- clang-tools-extra/trunk/test/clang-tidy/readability-else-after-return.cpp
+++ clang-tools-extra/trunk/test/clang-tidy/readability-else-after-return.cpp
@@ -29,32 +29,60 @@
else if (a > 10)
return;
else // comment-2
- // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: do not use 'else' after 'return'
- // CHECK-FIXES: {{^}} // comment-2
+ // CHECK-FIXES-NOT: {{^}} // comment-2
f(0);
+
+ if (a > 0)
+ if (a < 10)
+ return;
+ else // comment-3
+ // CHECK-FIXES-NOT: {{^}} // comment-3
+ f(0);
+ else
+ if (a > 10)
+ return;
+ else // comment-4
+ // CHECK-FIXES-NOT: {{^}} // comment-4
+ f(0);
+
+ if (a > 0) {
+ if (a < 10)
+ return;
+ else // comment-5
+ // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: do not use 'else' after 'return'
+ // CHECK-FIXES: {{^}} // comment-5
+ f(0);
+ } else {
+ if (a > 10)
+ return;
+ else // comment-6
+ // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: do not use 'else' after 'return'
+ // CHECK-FIXES: {{^}} // comment-6
+ f(0);
+ }
}
void foo() {
for (unsigned x = 0; x < 42; ++x) {
if (x) {
continue;
- } else { // comment-3
+ } else { // comment-7
// CHECK-MESSAGES: :[[@LINE-1]]:7: warning: do not use 'else' after 'continue'
- // CHECK-FIXES: {{^}} } // comment-3
+ // CHECK-FIXES: {{^}} } // comment-7
x++;
}
if (x) {
break;
- } else { // comment-4
+ } else { // comment-8
// CHECK-MESSAGES: :[[@LINE-1]]:7: warning: do not use 'else' after 'break'
- // CHECK-FIXES: {{^}} } // comment-4
+ // CHECK-FIXES: {{^}} } // comment-8
x++;
}
if (x) {
throw 42;
- } else { // comment-5
+ } else { // comment-9
// CHECK-MESSAGES: :[[@LINE-1]]:7: warning: do not use 'else' after 'throw'
- // CHECK-FIXES: {{^}} } // comment-5
+ // CHECK-FIXES: {{^}} } // comment-9
x++;
}
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D26125.76924.patch
Type: text/x-patch
Size: 2834 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20161104/36b0949a/attachment.bin>
More information about the cfe-commits
mailing list