clang-tools  14.0.0git
Public Member Functions | List of all members
clang::tidy::cppcoreguidelines::NoMallocCheck Class Reference

This checker is concerned with C-style memory management and suggest modern alternatives to it. More...

#include <NoMallocCheck.h>

Inheritance diagram for clang::tidy::cppcoreguidelines::NoMallocCheck:
Inheritance graph
[legend]
Collaboration diagram for clang::tidy::cppcoreguidelines::NoMallocCheck:
Collaboration graph
[legend]

Public Member Functions

 NoMallocCheck (StringRef Name, ClangTidyContext *Context)
 Construct Checker and read in configuration for function names. More...
 
bool isLanguageVersionSupported (const LangOptions &LangOpts) const override
 Override this to disable registering matchers and PP callbacks if an invalid language version is being used. More...
 
void storeOptions (ClangTidyOptions::OptionMap &Opts) override
 Make configuration of checker discoverable. More...
 
void registerMatchers (ast_matchers::MatchFinder *Finder) override
 Registering for malloc, calloc, realloc and free calls. More...
 
void check (const ast_matchers::MatchFinder::MatchResult &Result) override
 Checks matched function calls and gives suggestion to modernize the code. More...
 
- Public Member Functions inherited from clang::tidy::ClangTidyCheck
 ClangTidyCheck (StringRef CheckName, ClangTidyContext *Context)
 Initializes the check with CheckName and Context. More...
 
virtual void registerPPCallbacks (const SourceManager &SM, Preprocessor *PP, Preprocessor *ModuleExpanderPP)
 Override this to register PPCallbacks in the preprocessor. More...
 
DiagnosticBuilder diag (SourceLocation Loc, StringRef Description, DiagnosticIDs::Level Level=DiagnosticIDs::Warning)
 Add a diagnostic with the check's name. More...
 
DiagnosticBuilder diag (StringRef Description, DiagnosticIDs::Level Level=DiagnosticIDs::Warning)
 Add a diagnostic with the check's name. More...
 
DiagnosticBuilder configurationDiag (StringRef Description, DiagnosticIDs::Level Level=DiagnosticIDs::Warning) const
 Adds a diagnostic to report errors in the check's configuration. More...
 

Additional Inherited Members

- Protected Member Functions inherited from clang::tidy::ClangTidyCheck
StringRef getCurrentMainFile () const
 Returns the main file name of the current translation unit. More...
 
const LangOptions & getLangOpts () const
 Returns the language options from the context. More...
 
- Protected Attributes inherited from clang::tidy::ClangTidyCheck
OptionsView Options
 

Detailed Description

This checker is concerned with C-style memory management and suggest modern alternatives to it.

The check is only enabled in C++. For analyzing malloc calls see Clang Static Analyzer - unix.Malloc.

For the user-facing documentation see: http://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines-no-malloc.html

Definition at line 25 of file NoMallocCheck.h.

Constructor & Destructor Documentation

◆ NoMallocCheck()

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

Construct Checker and read in configuration for function names.

Definition at line 28 of file NoMallocCheck.h.

Member Function Documentation

◆ check()

void clang::tidy::cppcoreguidelines::NoMallocCheck::check ( const ast_matchers::MatchFinder::MatchResult &  Result)
overridevirtual

Checks matched function calls and gives suggestion to modernize the code.

Reimplemented from clang::tidy::ClangTidyCheck.

Definition at line 58 of file NoMallocCheck.cpp.

◆ isLanguageVersionSupported()

bool clang::tidy::cppcoreguidelines::NoMallocCheck::isLanguageVersionSupported ( const LangOptions &  LangOpts) const
inlineoverridevirtual

Override this to disable registering matchers and PP callbacks if an invalid language version is being used.

For example if a check is examining overloaded functions then this should be overridden to return false when the CPlusPlus flag is not set in LangOpts.

Reimplemented from clang::tidy::ClangTidyCheck.

Definition at line 34 of file NoMallocCheck.h.

◆ registerMatchers()

void clang::tidy::cppcoreguidelines::NoMallocCheck::registerMatchers ( ast_matchers::MatchFinder *  Finder)
overridevirtual

Registering for malloc, calloc, realloc and free calls.

Reimplemented from clang::tidy::ClangTidyCheck.

Definition at line 39 of file NoMallocCheck.cpp.

◆ storeOptions()

void clang::tidy::cppcoreguidelines::NoMallocCheck::storeOptions ( ClangTidyOptions::OptionMap Opts)
overridevirtual

Make configuration of checker discoverable.

Reimplemented from clang::tidy::ClangTidyCheck.

Definition at line 33 of file NoMallocCheck.cpp.


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