#include "NonTrivialTypesLibcMemoryCallsCheck.h"
#include "../utils/OptionsUtils.h"
#include "clang/AST/Decl.h"
#include "clang/ASTMatchers/ASTMatchFinder.h"
#include "clang/ASTMatchers/ASTMatchers.h"
#include "clang/ASTMatchers/ASTMatchersInternal.h"
#include "clang/ASTMatchers/ASTMatchersMacros.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/raw_ostream.h"
usingnamespaceclang::ast_matchers;
namespace clang::tidy::cert {
namespace {
AST_MATCHER(CXXRecordDecl, isTriviallyDefaultConstructible) { … }
AST_MATCHER(CXXRecordDecl, isTriviallyCopyable) { … }
}
static const char BuiltinMemSet[] = …;
static const char BuiltinMemCpy[] = …;
static const char BuiltinMemCmp[] = …;
static constexpr llvm::StringRef ComparisonOperators[] = …;
NonTrivialTypesLibcMemoryCallsCheck::NonTrivialTypesLibcMemoryCallsCheck(
StringRef Name, ClangTidyContext *Context)
: … { … }
void NonTrivialTypesLibcMemoryCallsCheck::storeOptions(
ClangTidyOptions::OptionMap &Opts) { … }
void NonTrivialTypesLibcMemoryCallsCheck::registerMatchers(
MatchFinder *Finder) { … }
void NonTrivialTypesLibcMemoryCallsCheck::check(
const MatchFinder::MatchResult &Result) { … }
}