clang-tools 22.0.0git
clang::tidy::cppcoreguidelines::MacroUsageCheck Class Reference

Find macro usage that is considered problematic because better language constructs exist for the task. More...

#include <MacroUsageCheck.h>

Inheritance diagram for clang::tidy::cppcoreguidelines::MacroUsageCheck:
[legend]

Public Member Functions

 MacroUsageCheck (StringRef Name, ClangTidyContext *Context)
bool isLanguageVersionSupported (const LangOptions &LangOpts) const override
void storeOptions (ClangTidyOptions::OptionMap &Opts) override
void registerPPCallbacks (const SourceManager &SM, Preprocessor *PP, Preprocessor *ModuleExpanderPP) override
void warnMacro (const MacroDirective *MD, StringRef MacroName)
void warnNaming (const MacroDirective *MD, StringRef MacroName)

Detailed Description

Find macro usage that is considered problematic because better language constructs exist for the task.

For the user-facing documentation see: https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/macro-usage.html

Definition at line 25 of file MacroUsageCheck.h.

Constructor & Destructor Documentation

◆ MacroUsageCheck()

clang::tidy::cppcoreguidelines::MacroUsageCheck::MacroUsageCheck ( StringRef Name,
ClangTidyContext * Context )
inline

Definition at line 27 of file MacroUsageCheck.h.

Member Function Documentation

◆ isLanguageVersionSupported()

bool clang::tidy::cppcoreguidelines::MacroUsageCheck::isLanguageVersionSupported ( const LangOptions & LangOpts) const
inlineoverride

Definition at line 32 of file MacroUsageCheck.h.

◆ registerPPCallbacks()

void clang::tidy::cppcoreguidelines::MacroUsageCheck::registerPPCallbacks ( const SourceManager & SM,
Preprocessor * PP,
Preprocessor * ModuleExpanderPP )
override

Definition at line 75 of file MacroUsageCheck.cpp.

◆ storeOptions()

void clang::tidy::cppcoreguidelines::MacroUsageCheck::storeOptions ( ClangTidyOptions::OptionMap & Opts)
override

Definition at line 69 of file MacroUsageCheck.cpp.

◆ warnMacro()

void clang::tidy::cppcoreguidelines::MacroUsageCheck::warnMacro ( const MacroDirective * MD,
StringRef MacroName )

Definition at line 82 of file MacroUsageCheck.cpp.

◆ warnNaming()

void clang::tidy::cppcoreguidelines::MacroUsageCheck::warnNaming ( const MacroDirective * MD,
StringRef MacroName )

Definition at line 103 of file MacroUsageCheck.cpp.


The documentation for this class was generated from the following files: