[PATCH] D17069: [clang-tidy] Fix an assert failure in 'readability-braces-around-statements' check.
Haojian Wu via cfe-commits
cfe-commits at lists.llvm.org
Thu Feb 11 01:54:30 PST 2016
hokein updated this revision to Diff 47609.
hokein added a comment.
Address review comment.
http://reviews.llvm.org/D17069
Files:
clang-tidy/readability/BracesAroundStatementsCheck.cpp
test/clang-tidy/readability-braces-around-statements-assert-failure.cpp
Index: test/clang-tidy/readability-braces-around-statements-assert-failure.cpp
===================================================================
--- /dev/null
+++ test/clang-tidy/readability-braces-around-statements-assert-failure.cpp
@@ -0,0 +1,7 @@
+// RUN: %check_clang_tidy %s readability-braces-around-statements %t
+
+int test_failure() {
+ if (std::rand()) {
+ // CHECK-MESSAGES: :[[@LINE-1]]:7: error: use of undeclared identifier 'std'
+ }
+}
Index: clang-tidy/readability/BracesAroundStatementsCheck.cpp
===================================================================
--- clang-tidy/readability/BracesAroundStatementsCheck.cpp
+++ clang-tidy/readability/BracesAroundStatementsCheck.cpp
@@ -180,7 +180,10 @@
if (const DeclStmt *CondVar = S->getConditionVariableDeclStmt())
CondEndLoc = CondVar->getLocEnd();
- assert(CondEndLoc.isValid());
+ if (!CondEndLoc.isValid()) {
+ return SourceLocation();
+ }
+
SourceLocation PastCondEndLoc =
Lexer::getLocForEndOfToken(CondEndLoc, 0, SM, Context->getLangOpts());
if (PastCondEndLoc.isInvalid())
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17069.47609.patch
Type: text/x-patch
Size: 1086 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20160211/1babb4be/attachment-0001.bin>
More information about the cfe-commits
mailing list