diff options
author | Alexander Kornienko <alexfh@google.com> | 2015-04-10 19:26:43 +0000 |
---|---|---|
committer | Alexander Kornienko <alexfh@google.com> | 2015-04-10 19:26:43 +0000 |
commit | f5e72b0448eb1152cbd25303fbd359e540b6cca9 (patch) | |
tree | 908b14d9731914fb3187785a13315a210d245081 /clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp | |
parent | 18d1696d6201a7460ecf7aa79bd5f1cbd8868c91 (diff) | |
download | bcm5719-llvm-f5e72b0448eb1152cbd25303fbd359e540b6cca9.tar.gz bcm5719-llvm-f5e72b0448eb1152cbd25303fbd359e540b6cca9.zip |
[clang-tidy] Add readability-simplify-boolean-expr check to clang-tidy
This check looks for comparisons between boolean expressions and boolean
constants and simplifies them to just use the appropriate boolean expression
directly.
if (b == true) becomes if (b)
if (b == false) becomes if (!b)
if (b && true) becomes if (b)
if (b && false) becomes if (false)
if (b || true) becomes if (true)
if (b || false) becomes if (b)
e ? true : false becomes e
e ? false : true becomes !e
if (true) t(); else f(); becomes t();
if (false) t(); else f(); becomes f();
if (e) return true; else return false; becomes return (e);
if (e) return false; else return true; becomes return !(e);
if (e) b = true; else b = false; becomes b = e;
if (e) b = false; else b = true; becomes b = !(e);
http://reviews.llvm.org/D7648
Patch by Richard Thomson!
llvm-svn: 234626
Diffstat (limited to 'clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp')
-rw-r--r-- | clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp b/clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp index c82062092cc..bf118f88ace 100644 --- a/clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp +++ b/clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp @@ -18,6 +18,7 @@ #include "RedundantSmartptrGetCheck.h" #include "RedundantStringCStrCheck.h" #include "ShrinkToFitCheck.h" +#include "SimplifyBooleanExprCheck.h" namespace clang { namespace tidy { @@ -40,7 +41,10 @@ public: "readability-redundant-smartptr-get"); CheckFactories.registerCheck<RedundantStringCStrCheck>( "readability-redundant-string-cstr"); - CheckFactories.registerCheck<ShrinkToFitCheck>("readability-shrink-to-fit"); + CheckFactories.registerCheck<ShrinkToFitCheck>( + "readability-shrink-to-fit"); + CheckFactories.registerCheck<SimplifyBooleanExprCheck>( + "readability-simplify-boolean-expr"); } }; |