Thank you for the suggestions. This should be addressed in r262618. On 3 March 2016 at 14:42, Alexander Kornienko <ale...@google.com> wrote:
> > > On Thu, Mar 3, 2016 at 2:08 PM, Gabor Horvath via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> Author: xazax >> Date: Thu Mar 3 07:08:11 2016 >> New Revision: 262615 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=262615&view=rev >> Log: >> [clang-tidy] Do not emit warnings from misc-suspicious-semicolon when the >> compilation fails. >> >> Added: >> >> clang-tools-extra/trunk/test/clang-tidy/misc-suspicious-semicolon-fail.cpp >> Modified: >> clang-tools-extra/trunk/clang-tidy/misc/SuspiciousSemicolonCheck.cpp >> >> clang-tools-extra/trunk/docs/clang-tidy/checks/misc-suspicious-semicolon.rst >> >> Modified: >> clang-tools-extra/trunk/clang-tidy/misc/SuspiciousSemicolonCheck.cpp >> URL: >> http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/misc/SuspiciousSemicolonCheck.cpp?rev=262615&r1=262614&r2=262615&view=diff >> >> ============================================================================== >> --- clang-tools-extra/trunk/clang-tidy/misc/SuspiciousSemicolonCheck.cpp >> (original) >> +++ clang-tools-extra/trunk/clang-tidy/misc/SuspiciousSemicolonCheck.cpp >> Thu Mar 3 07:08:11 2016 >> @@ -7,8 +7,8 @@ >> // >> >> >> //===----------------------------------------------------------------------===// >> >> -#include "../utils/LexerUtils.h" >> #include "SuspiciousSemicolonCheck.h" >> +#include "../utils/LexerUtils.h" >> #include "clang/AST/ASTContext.h" >> #include "clang/ASTMatchers/ASTMatchFinder.h" >> >> @@ -30,6 +30,9 @@ void SuspiciousSemicolonCheck::registerM >> } >> >> void SuspiciousSemicolonCheck::check(const MatchFinder::MatchResult >> &Result) { >> + if (Result.Context->getDiagnostics().hasErrorOccurred()) >> + return; >> + >> const auto *Semicolon = Result.Nodes.getNodeAs<NullStmt>("semi"); >> SourceLocation LocStart = Semicolon->getLocStart(); >> >> >> Modified: >> clang-tools-extra/trunk/docs/clang-tidy/checks/misc-suspicious-semicolon.rst >> URL: >> http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/docs/clang-tidy/checks/misc-suspicious-semicolon.rst?rev=262615&r1=262614&r2=262615&view=diff >> >> ============================================================================== >> --- >> clang-tools-extra/trunk/docs/clang-tidy/checks/misc-suspicious-semicolon.rst >> (original) >> +++ >> clang-tools-extra/trunk/docs/clang-tidy/checks/misc-suspicious-semicolon.rst >> Thu Mar 3 07:08:11 2016 >> @@ -11,7 +11,7 @@ intentional. >> >> .. code-block:: c++ >> >> - if(x < y); >> + if (x < y); >> { >> x++; >> } >> @@ -22,7 +22,7 @@ the first line, and `x` will be incremen >> >> .. code-block:: c++ >> >> - while((line = readLine(file)) != NULL); >> + while ((line = readLine(file)) != NULL); >> processLine(line); >> >> As a result of this code, `processLine()` will only be called once, when >> the >> @@ -32,7 +32,7 @@ the code indicates the intention of the >> >> .. code-block:: c++ >> >> - if(x >= y); >> + if (x >= y); >> x -= y; >> >> While the indentation does not imply any nesting, there is simply no >> valid >> @@ -45,7 +45,7 @@ line. For example: >> >> .. code-block:: c++ >> >> - while(readWhitespace()); >> + while (readWhitespace()); >> Token t = readNextToken(); >> >> Here the second line is indented in a way that suggests that it is meant >> to be >> @@ -56,14 +56,14 @@ Either remove the indentation from the s >> >> .. code-block:: c++ >> >> - while(readWhitespace()); >> + while (readWhitespace()); >> Token t = readNextToken(); >> >> ... or move the semicolon from the end of the first line to a new line: >> >> .. code-block:: c++ >> >> - while(readWhitespace()) >> + while (readWhitespace()) >> ; >> >> Token t = readNextToken(); >> >> Added: >> clang-tools-extra/trunk/test/clang-tidy/misc-suspicious-semicolon-fail.cpp >> URL: >> http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/misc-suspicious-semicolon-fail.cpp?rev=262615&view=auto >> >> ============================================================================== >> --- >> clang-tools-extra/trunk/test/clang-tidy/misc-suspicious-semicolon-fail.cpp >> (added) >> +++ >> clang-tools-extra/trunk/test/clang-tidy/misc-suspicious-semicolon-fail.cpp >> Thu Mar 3 07:08:11 2016 >> @@ -0,0 +1,13 @@ >> +// RUN: clang-tidy %s -checks="-*,misc-suspicious-semicolon" -- 2>&1 > %t >> +// RUN: FileCheck --input-file=%t %s >> > > Please pipe the output to FileCheck instead of redirecting it to a > temporary file. > > >> + >> +// Note: This test verifies that, the checker does not emit any warning >> for >> +// files that do not compile. >> + >> +bool g(); >> + >> +void f() { >> + if (g()); >> + // CHECK-NOT: :[[@LINE-1]]:11: warning: potentially unintended >> semicolon [misc-suspicious-semicolon] >> > > Please make the check line more broad for more tolerance to bugs and > changes to the check. Just match the core of the message or even just the > check name. > > >> + int a >> +} >> >> >> _______________________________________________ >> cfe-commits mailing list >> cfe-commits@lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits >> > >
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits