16 using namespace clang;
20 : SCL(llvm::SpecialCaseList::createOrDie(BlacklistPaths)), SM(SM) {}
23 StringRef Category)
const {
24 return SCL->inSection(
"global", GlobalName, Category);
28 StringRef Category)
const {
29 return SCL->inSection(
"type", MangledTypeName, Category);
33 return SCL->inSection(
"fun", FunctionName);
37 StringRef Category)
const {
38 return SCL->inSection(
"src", FileName, Category);
42 StringRef Category)
const {
bool isBlacklistedFile(StringRef FileName, StringRef Category=StringRef()) const
bool isBlacklistedLocation(SourceLocation Loc, StringRef Category=StringRef()) const
SourceLocation getFileLoc(SourceLocation Loc) const
Given Loc, if it is a macro location return the expansion location or the spelling location...
StringRef getFilename(SourceLocation SpellingLoc) const
Return the filename of the file containing a SourceLocation.
Encodes a location in the source. The SourceManager can decode this to get at the full include stack...
bool isBlacklistedType(StringRef MangledTypeName, StringRef Category=StringRef()) const
bool isBlacklistedGlobal(StringRef GlobalName, StringRef Category=StringRef()) const
bool isBlacklistedFunction(StringRef FunctionName) const
SanitizerBlacklist(const std::vector< std::string > &BlacklistPaths, SourceManager &SM)
This class handles loading and caching of source files into memory.