njames93 created this revision. njames93 added reviewers: aaron.ballman, alexfh, JonasToth. njames93 added projects: clang, clang-tools-extra. Herald added subscribers: kbarton, xazax.hun, nemanjai. njames93 added a parent revision: D72566: [clang-tidy] Clang tidy is now alias aware. Herald added a subscriber: wuzish.
Child of https://reviews.llvm.org/D72566 - just implementing the checks and a test case Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D72568 Files: clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp clang-tools-extra/clang-tidy/cppcoreguidelines/CppCoreGuidelinesTidyModule.cpp clang-tools-extra/clang-tidy/fuchsia/FuchsiaTidyModule.cpp clang-tools-extra/clang-tidy/google/GoogleTidyModule.cpp clang-tools-extra/clang-tidy/hicpp/HICPPTidyModule.cpp clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp clang-tools-extra/test/clang-tidy/infrastructure/duplicate-reports.cpp
Index: clang-tools-extra/test/clang-tidy/infrastructure/duplicate-reports.cpp =================================================================== --- clang-tools-extra/test/clang-tidy/infrastructure/duplicate-reports.cpp +++ clang-tools-extra/test/clang-tidy/infrastructure/duplicate-reports.cpp @@ -1,15 +1,30 @@ -// RUN: %check_clang_tidy %s cert-err09-cpp,cert-err61-cpp %t -- -- -fexceptions +// RUN: %check_clang_tidy %s "cert-err09-cpp,cert-err61-cpp, \ +// RUN: google-readability-braces-around-statements, \ +// RUN: readability-braces-around-statements, \ +// RUN: hicpp=braces-around-statements" %t -- -- -fexceptions void alwaysThrows() { int ex = 42; - // CHECK-MESSAGES: warning: throw expression should throw anonymous temporary values instead [cert-err09-cpp] - // CHECK-MESSAGES: warning: throw expression should throw anonymous temporary values instead [cert-err61-cpp] throw ex; + // CHECK-MESSAGES: :[[@LINE-1]]:9: warning: throw expression should throw anonymous temporary values instead + // ^^ Dont specify which check as could be either. + // Original name is misc-throw-by-value-catch-by-reference. } void doTheJob() { try { alwaysThrows(); - } catch (int&) { + } catch (int &) { } } + +void bracesStatements() { + for (;;) + ; + // CHECK-MESSAGES: :[[@LINE-2]]:11: warning: statement should be inside braces [readability-braces-around-statements] + // Specify check name as readability-braces-around-statements is the non + // aliased name of the check + // CHECK-FIXES: {{^}} for (;;) { + // CHECK-FIXES-NEXT: {{^}} ; + // CHECK-FIXES-NEXT: {{^}}} +} Index: clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp =================================================================== --- clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp +++ clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp @@ -102,7 +102,7 @@ "readability-static-definition-in-anonymous-namespace"); CheckFactories.registerCheck<StringCompareCheck>( "readability-string-compare"); - CheckFactories.registerCheck<readability::NamedParameterCheck>( + CheckFactories.registerCheck<NamedParameterCheck>( "readability-named-parameter"); CheckFactories.registerCheck<NonConstParameterCheck>( "readability-non-const-parameter"); Index: clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp =================================================================== --- clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp +++ clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp @@ -26,7 +26,7 @@ CheckFactories.registerCheck<LLVMHeaderGuardCheck>("llvm-header-guard"); CheckFactories.registerCheck<IncludeOrderCheck>("llvm-include-order"); CheckFactories.registerCheck<readability::NamespaceCommentCheck>( - "llvm-namespace-comment"); + "llvm-namespace-comment", "readability-namespace-comment"); CheckFactories.registerCheck<PreferIsaOrDynCastInConditionalsCheck>( "llvm-prefer-isa-or-dyn-cast-in-conditionals"); CheckFactories.registerCheck<PreferRegisterOverUnsignedCheck>( Index: clang-tools-extra/clang-tidy/hicpp/HICPPTidyModule.cpp =================================================================== --- clang-tools-extra/clang-tidy/hicpp/HICPPTidyModule.cpp +++ clang-tools-extra/clang-tidy/hicpp/HICPPTidyModule.cpp @@ -49,64 +49,67 @@ public: void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override { CheckFactories.registerCheck<modernize::AvoidCArraysCheck>( - "hicpp-avoid-c-arrays"); + "hicpp-avoid-c-arrays", "modernize-avoid-c-arrays"); CheckFactories.registerCheck<cppcoreguidelines::AvoidGotoCheck>( - "hicpp-avoid-goto"); + "hicpp-avoid-goto", "cppcoreguidelines-avoid-goto"); CheckFactories.registerCheck<readability::BracesAroundStatementsCheck>( - "hicpp-braces-around-statements"); + "hicpp-braces-around-statements", + "readability-braces-around-statements"); CheckFactories.registerCheck<modernize::DeprecatedHeadersCheck>( - "hicpp-deprecated-headers"); + "hicpp-deprecated-headers", "modernize-deprecated-headers"); CheckFactories.registerCheck<ExceptionBaseclassCheck>( "hicpp-exception-baseclass"); CheckFactories.registerCheck<MultiwayPathsCoveredCheck>( "hicpp-multiway-paths-covered"); CheckFactories.registerCheck<SignedBitwiseCheck>("hicpp-signed-bitwise"); CheckFactories.registerCheck<google::ExplicitConstructorCheck>( - "hicpp-explicit-conversions"); + "hicpp-explicit-conversions", "google-explicit-constructor"); CheckFactories.registerCheck<readability::FunctionSizeCheck>( - "hicpp-function-size"); + "hicpp-function-size", "readability-function-size"); CheckFactories.registerCheck<readability::IdentifierNamingCheck>( - "hicpp-named-parameter"); + "hicpp-named-parameter", "readability-identifier-naming"); CheckFactories.registerCheck<bugprone::UseAfterMoveCheck>( - "hicpp-invalid-access-moved"); + "hicpp-invalid-access-moved", "bugprone-use-after-move"); CheckFactories.registerCheck<cppcoreguidelines::ProTypeMemberInitCheck>( - "hicpp-member-init"); + "hicpp-member-init", "cppcoreguidelines-pro-type-member-init"); CheckFactories.registerCheck<performance::MoveConstArgCheck>( - "hicpp-move-const-arg"); + "hicpp-move-const-arg", "performance-move-const-arg"); CheckFactories.registerCheck<misc::NewDeleteOverloadsCheck>( - "hicpp-new-delete-operators"); + "hicpp-new-delete-operators", "misc-new-delete-operators"); CheckFactories.registerCheck<performance::NoexceptMoveConstructorCheck>( - "hicpp-noexcept-move"); + "hicpp-noexcept-move", "performance-noexcept-move-constructor"); CheckFactories .registerCheck<cppcoreguidelines::ProBoundsArrayToPointerDecayCheck>( "hicpp-no-array-decay"); CheckFactories.registerCheck<NoAssemblerCheck>("hicpp-no-assembler"); CheckFactories.registerCheck<cppcoreguidelines::NoMallocCheck>( - "hicpp-no-malloc"); + "hicpp-no-malloc", "cppcoreguidelines-no-malloc"); CheckFactories .registerCheck<cppcoreguidelines::SpecialMemberFunctionsCheck>( "hicpp-special-member-functions"); - CheckFactories.registerCheck<misc::StaticAssertCheck>( - "hicpp-static-assert"); - CheckFactories.registerCheck<modernize::UseAutoCheck>("hicpp-use-auto"); + CheckFactories.registerCheck<misc::StaticAssertCheck>("hicpp-static-assert", + "misc-static-assert"); + CheckFactories.registerCheck<modernize::UseAutoCheck>("hicpp-use-auto", + "modernize-use-auto"); CheckFactories.registerCheck<bugprone::UndelegatedConstructorCheck>( - "hicpp-undelegated-constructor"); + "hicpp-undelegated-constructor", "bugprone-undelegated-constructor"); CheckFactories.registerCheck<modernize::UseEmplaceCheck>( - "hicpp-use-emplace"); + "hicpp-use-emplace", "modernize-use-emplace"); CheckFactories.registerCheck<modernize::UseEqualsDefaultCheck>( - "hicpp-use-equals-default"); + "hicpp-use-equals-default", "modernize-use-equals-default"); CheckFactories.registerCheck<modernize::UseEqualsDeleteCheck>( - "hicpp-use-equals-delete"); + "hicpp-use-equals-delete", "modernize-use-equals-delete"); CheckFactories.registerCheck<modernize::UseNoexceptCheck>( - "hicpp-use-noexcept"); + "hicpp-use-noexcept", "modernize-use-noexcept"); CheckFactories.registerCheck<modernize::UseNullptrCheck>( - "hicpp-use-nullptr"); + "hicpp-use-nullptr", "modernize-use-nullptr"); CheckFactories.registerCheck<modernize::UseOverrideCheck>( - "hicpp-use-override"); + "hicpp-use-override", "modernize-use-override"); CheckFactories.registerCheck<readability::UppercaseLiteralSuffixCheck>( - "hicpp-uppercase-literal-suffix"); + "hicpp-uppercase-literal-suffix", + "readability-uppercase-literal-suffix"); CheckFactories.registerCheck<cppcoreguidelines::ProTypeVarargCheck>( - "hicpp-vararg"); + "hicpp-vararg", "cppcoreguidelines-pro-type-vararg"); } }; Index: clang-tools-extra/clang-tidy/google/GoogleTidyModule.cpp =================================================================== --- clang-tools-extra/clang-tidy/google/GoogleTidyModule.cpp +++ clang-tools-extra/clang-tidy/google/GoogleTidyModule.cpp @@ -74,12 +74,14 @@ "google-readability-todo"); CheckFactories .registerCheck<clang::tidy::readability::BracesAroundStatementsCheck>( - "google-readability-braces-around-statements"); + "google-readability-braces-around-statements", + "readability-braces-around-statements"); CheckFactories.registerCheck<clang::tidy::readability::FunctionSizeCheck>( - "google-readability-function-size"); + "google-readability-function-size", "readability-function-size"); CheckFactories .registerCheck<clang::tidy::readability::NamespaceCommentCheck>( - "google-readability-namespace-comments"); + "google-readability-namespace-comments", + "readability-namespace-comments"); CheckFactories.registerCheck<UpgradeGoogletestCaseCheck>( "google-upgrade-googletest-case"); } Index: clang-tools-extra/clang-tidy/fuchsia/FuchsiaTidyModule.cpp =================================================================== --- clang-tools-extra/clang-tidy/fuchsia/FuchsiaTidyModule.cpp +++ clang-tools-extra/clang-tidy/fuchsia/FuchsiaTidyModule.cpp @@ -34,7 +34,7 @@ CheckFactories.registerCheck<DefaultArgumentsDeclarationsCheck>( "fuchsia-default-arguments-declarations"); CheckFactories.registerCheck<google::build::UnnamedNamespaceInHeaderCheck>( - "fuchsia-header-anon-namespaces"); + "fuchsia-header-anon-namespaces", "google-build-namespaces"); CheckFactories.registerCheck<MultipleInheritanceCheck>( "fuchsia-multiple-inheritance"); CheckFactories.registerCheck<OverloadedOperatorCheck>( Index: clang-tools-extra/clang-tidy/cppcoreguidelines/CppCoreGuidelinesTidyModule.cpp =================================================================== --- clang-tools-extra/clang-tidy/cppcoreguidelines/CppCoreGuidelinesTidyModule.cpp +++ clang-tools-extra/clang-tidy/cppcoreguidelines/CppCoreGuidelinesTidyModule.cpp @@ -43,13 +43,14 @@ public: void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override { CheckFactories.registerCheck<modernize::AvoidCArraysCheck>( - "cppcoreguidelines-avoid-c-arrays"); + "cppcoreguidelines-avoid-c-arrays", "modernize-avoid-c-arrays"); CheckFactories.registerCheck<AvoidGotoCheck>( "cppcoreguidelines-avoid-goto"); CheckFactories.registerCheck<readability::MagicNumbersCheck>( - "cppcoreguidelines-avoid-magic-numbers"); + "cppcoreguidelines-avoid-magic-numbers", "readability-magic-numbers"); CheckFactories.registerCheck<modernize::UseOverrideCheck>( - "cppcoreguidelines-explicit-virtual-functions"); + "cppcoreguidelines-explicit-virtual-functions", + "modernize-use-override"); CheckFactories.registerCheck<InitVariablesCheck>( "cppcoreguidelines-init-variables"); CheckFactories.registerCheck<InterfacesGlobalInitCheck>( @@ -60,7 +61,8 @@ "cppcoreguidelines-narrowing-conversions"); CheckFactories.registerCheck<NoMallocCheck>("cppcoreguidelines-no-malloc"); CheckFactories.registerCheck<misc::NonPrivateMemberVariablesInClassesCheck>( - "cppcoreguidelines-non-private-member-variables-in-classes"); + "cppcoreguidelines-non-private-member-variables-in-classes", + "misc-non-private-member-variables-in-classes"); CheckFactories.registerCheck<OwningMemoryCheck>( "cppcoreguidelines-owning-memory"); CheckFactories.registerCheck<ProBoundsArrayToPointerDecayCheck>( @@ -87,7 +89,8 @@ "cppcoreguidelines-special-member-functions"); CheckFactories.registerCheck<SlicingCheck>("cppcoreguidelines-slicing"); CheckFactories.registerCheck<misc::UnconventionalAssignOperatorCheck>( - "cppcoreguidelines-c-copy-assignment-signature"); + "cppcoreguidelines-c-copy-assignment-signature", + "misc-unconventional-assignment-operator"); } ClangTidyOptions getModuleOptions() override { Index: clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp =================================================================== --- clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp +++ clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp @@ -45,19 +45,19 @@ "cert-dcl21-cpp"); CheckFactories.registerCheck<VariadicFunctionDefCheck>("cert-dcl50-cpp"); CheckFactories.registerCheck<misc::NewDeleteOverloadsCheck>( - "cert-dcl54-cpp"); + "cert-dcl54-cpp", "misc-new-delete-overloads"); CheckFactories.registerCheck<DontModifyStdNamespaceCheck>( "cert-dcl58-cpp"); CheckFactories.registerCheck<google::build::UnnamedNamespaceInHeaderCheck>( - "cert-dcl59-cpp"); + "cert-dcl59-cpp", "google-build-namespaces"); // ERR CheckFactories.registerCheck<misc::ThrowByValueCatchByReferenceCheck>( - "cert-err09-cpp"); + "cert-err09-cpp", "misc-throw-by-value-catch-by-reference"); CheckFactories.registerCheck<SetLongJmpCheck>("cert-err52-cpp"); CheckFactories.registerCheck<StaticObjectExceptionCheck>("cert-err58-cpp"); CheckFactories.registerCheck<ThrownExceptionTypeCheck>("cert-err60-cpp"); CheckFactories.registerCheck<misc::ThrowByValueCatchByReferenceCheck>( - "cert-err61-cpp"); + "cert-err61-cpp", "misc-throw-by-value-catch-by-reference"); // MEM CheckFactories.registerCheck<DefaultOperatorNewAlignmentCheck>( "cert-mem57-cpp"); @@ -67,23 +67,25 @@ "cert-msc51-cpp"); // OOP CheckFactories.registerCheck<performance::MoveConstructorInitCheck>( - "cert-oop11-cpp"); + "cert-oop11-cpp", "performance-move-constructor-init"); CheckFactories.registerCheck<bugprone::UnhandledSelfAssignmentCheck>( - "cert-oop54-cpp"); + "cert-oop54-cpp", "bugprone-unhandled-self-assignment"); CheckFactories.registerCheck<MutatingCopyCheck>( "cert-oop58-cpp"); // C checkers // DCL - CheckFactories.registerCheck<misc::StaticAssertCheck>("cert-dcl03-c"); + CheckFactories.registerCheck<misc::StaticAssertCheck>("cert-dcl03-c", + "misc-static-assert"); CheckFactories.registerCheck<readability::UppercaseLiteralSuffixCheck>( - "cert-dcl16-c"); + "cert-dcl16-c", "readability-uppercase-literal-suffix"); // ENV CheckFactories.registerCheck<CommandProcessorCheck>("cert-env33-c"); // FLP CheckFactories.registerCheck<FloatLoopCounter>("cert-flp30-c"); // FIO - CheckFactories.registerCheck<misc::NonCopyableObjectsCheck>("cert-fio38-c"); + CheckFactories.registerCheck<misc::NonCopyableObjectsCheck>( + "cert-fio38-c", "misc-non-copyable-objects"); // ERR CheckFactories.registerCheck<StrToNumCheck>("cert-err34-c"); // MSC @@ -92,7 +94,7 @@ "cert-msc32-c"); // POS CheckFactories.registerCheck<bugprone::BadSignalToKillThreadCheck>( - "cert-pos44-c"); + "cert-pos44-c", "bugprone-bad-signal-to-kill-thread"); } ClangTidyOptions getModuleOptions() override { Index: clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp =================================================================== --- clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp +++ clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp @@ -113,7 +113,8 @@ CheckFactories.registerCheck<MultipleStatementMacroCheck>( "bugprone-multiple-statement-macro"); CheckFactories.registerCheck<cppcoreguidelines::NarrowingConversionsCheck>( - "bugprone-narrowing-conversions"); + "bugprone-narrowing-conversions", + "cppcoreguidelines-narrowing-conversions"); CheckFactories.registerCheck<NotNullTerminatedResultCheck>( "bugprone-not-null-terminated-result"); CheckFactories.registerCheck<ParentVirtualCallCheck>(
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits