brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.4 KiB · 03f2577 Raw
103 lines · cpp
1//===----------------------------------------------------------------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8 9#include "../ClangTidy.h"10#include "../ClangTidyModule.h"11#include "../ClangTidyModuleRegistry.h"12#include "ConfusableIdentifierCheck.h"13#include "ConstCorrectnessCheck.h"14#include "CoroutineHostileRAIICheck.h"15#include "DefinitionsInHeadersCheck.h"16#include "HeaderIncludeCycleCheck.h"17#include "IncludeCleanerCheck.h"18#include "MisleadingBidirectionalCheck.h"19#include "MisleadingIdentifierCheck.h"20#include "MisplacedConstCheck.h"21#include "NewDeleteOverloadsCheck.h"22#include "NoRecursionCheck.h"23#include "NonCopyableObjectsCheck.h"24#include "NonPrivateMemberVariablesInClassesCheck.h"25#include "OverrideWithDifferentVisibilityCheck.h"26#include "PredictableRandCheck.h"27#include "RedundantExpressionCheck.h"28#include "StaticAssertCheck.h"29#include "ThrowByValueCatchByReferenceCheck.h"30#include "UnconventionalAssignOperatorCheck.h"31#include "UniqueptrResetReleaseCheck.h"32#include "UnusedAliasDeclsCheck.h"33#include "UnusedParametersCheck.h"34#include "UnusedUsingDeclsCheck.h"35#include "UseAnonymousNamespaceCheck.h"36#include "UseInternalLinkageCheck.h"37 38namespace clang::tidy {39namespace misc {40 41class MiscModule : public ClangTidyModule {42public:43  void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override {44    CheckFactories.registerCheck<ConfusableIdentifierCheck>(45        "misc-confusable-identifiers");46    CheckFactories.registerCheck<ConstCorrectnessCheck>(47        "misc-const-correctness");48    CheckFactories.registerCheck<CoroutineHostileRAIICheck>(49        "misc-coroutine-hostile-raii");50    CheckFactories.registerCheck<DefinitionsInHeadersCheck>(51        "misc-definitions-in-headers");52    CheckFactories.registerCheck<HeaderIncludeCycleCheck>(53        "misc-header-include-cycle");54    CheckFactories.registerCheck<IncludeCleanerCheck>("misc-include-cleaner");55    CheckFactories.registerCheck<MisleadingBidirectionalCheck>(56        "misc-misleading-bidirectional");57    CheckFactories.registerCheck<MisleadingIdentifierCheck>(58        "misc-misleading-identifier");59    CheckFactories.registerCheck<MisplacedConstCheck>("misc-misplaced-const");60    CheckFactories.registerCheck<NewDeleteOverloadsCheck>(61        "misc-new-delete-overloads");62    CheckFactories.registerCheck<NoRecursionCheck>("misc-no-recursion");63    CheckFactories.registerCheck<NonCopyableObjectsCheck>(64        "misc-non-copyable-objects");65    CheckFactories.registerCheck<NonPrivateMemberVariablesInClassesCheck>(66        "misc-non-private-member-variables-in-classes");67    CheckFactories.registerCheck<OverrideWithDifferentVisibilityCheck>(68        "misc-override-with-different-visibility");69    CheckFactories.registerCheck<PredictableRandCheck>("misc-predictable-rand");70    CheckFactories.registerCheck<RedundantExpressionCheck>(71        "misc-redundant-expression");72    CheckFactories.registerCheck<StaticAssertCheck>("misc-static-assert");73    CheckFactories.registerCheck<ThrowByValueCatchByReferenceCheck>(74        "misc-throw-by-value-catch-by-reference");75    CheckFactories.registerCheck<UnconventionalAssignOperatorCheck>(76        "misc-unconventional-assign-operator");77    CheckFactories.registerCheck<UniqueptrResetReleaseCheck>(78        "misc-uniqueptr-reset-release");79    CheckFactories.registerCheck<UnusedAliasDeclsCheck>(80        "misc-unused-alias-decls");81    CheckFactories.registerCheck<UnusedParametersCheck>(82        "misc-unused-parameters");83    CheckFactories.registerCheck<UnusedUsingDeclsCheck>(84        "misc-unused-using-decls");85    CheckFactories.registerCheck<UseAnonymousNamespaceCheck>(86        "misc-use-anonymous-namespace");87    CheckFactories.registerCheck<UseInternalLinkageCheck>(88        "misc-use-internal-linkage");89  }90};91 92} // namespace misc93 94// Register the MiscTidyModule using this statically initialized variable.95static ClangTidyModuleRegistry::Add<misc::MiscModule>96    X("misc-module", "Adds miscellaneous lint checks.");97 98// This anchor is used to force the linker to link in the generated object file99// and thus register the MiscModule.100volatile int MiscModuleAnchorSource = 0; // NOLINT(misc-use-internal-linkage)101 102} // namespace clang::tidy103