Index: clang-tools-extra/trunk/clang-tidy/readability/ImplicitBoolCastCheck.h =================================================================== --- clang-tools-extra/trunk/clang-tidy/readability/ImplicitBoolCastCheck.h +++ clang-tools-extra/trunk/clang-tidy/readability/ImplicitBoolCastCheck.h @@ -22,12 +22,9 @@ /// http://clang.llvm.org/extra/clang-tidy/checks/readability-implicit-bool-cast.html class ImplicitBoolCastCheck : public ClangTidyCheck { public: - ImplicitBoolCastCheck(StringRef Name, ClangTidyContext *Context) - : ClangTidyCheck(Name, Context), - AllowConditionalIntegerCasts( - Options.get("AllowConditionalIntegerCasts", 0) != 0), - AllowConditionalPointerCasts( - Options.get("AllowConditionalPointerCasts", 0) != 0) {} + ImplicitBoolCastCheck(StringRef Name, ClangTidyContext *Context); + void storeOptions(ClangTidyOptions::OptionMap &Opts) override; + void registerMatchers(ast_matchers::MatchFinder *Finder) override; void check(const ast_matchers::MatchFinder::MatchResult &Result) override; Index: clang-tools-extra/trunk/clang-tidy/readability/ImplicitBoolCastCheck.cpp =================================================================== --- clang-tools-extra/trunk/clang-tidy/readability/ImplicitBoolCastCheck.cpp +++ clang-tools-extra/trunk/clang-tidy/readability/ImplicitBoolCastCheck.cpp @@ -299,6 +299,22 @@ } // anonymous namespace +ImplicitBoolCastCheck::ImplicitBoolCastCheck(StringRef Name, + ClangTidyContext *Context) + : ClangTidyCheck(Name, Context), + AllowConditionalIntegerCasts( + Options.get("AllowConditionalIntegerCasts", false)), + AllowConditionalPointerCasts( + Options.get("AllowConditionalPointerCasts", false)) {} + +void ImplicitBoolCastCheck::storeOptions( + ClangTidyOptions::OptionMap &Opts) { + Options.store(Opts, "AllowConditionalIntegerCasts", + AllowConditionalIntegerCasts); + Options.store(Opts, "AllowConditionalPointerCasts", + AllowConditionalPointerCasts); +} + void ImplicitBoolCastCheck::registerMatchers(MatchFinder *Finder) { // This check doesn't make much sense if we run it on language without // built-in bool support.