14 #ifndef LLVM_CLANG_STATICANALYZER_CORE_BUGREPORTER_BUGTYPE_H 15 #define LLVM_CLANG_STATICANALYZER_CORE_BUGREPORTER_BUGTYPE_H 33 const std::string Name;
34 const std::string Category;
38 virtual void anchor();
42 : Check(Check), Name(Name), Category(Cat), Checker(nullptr),
43 SuppressOnSink(
false) {}
45 : Check(Checker->
getCheckName()), Name(Name), Category(Cat),
46 Checker(Checker), SuppressOnSink(
false) {}
49 StringRef
getName()
const {
return Name; }
59 assert(!CheckName.empty() &&
"Check name is not set properly.");
71 const std::string desc;
72 void anchor()
override;
78 const char *description)
BuiltinBug(class CheckName check, const char *name, const char *description)
BugType(const CheckerBase *Checker, StringRef Name, StringRef Cat)
CheckName getCheckName() const
StringRef getDescription() const
StringRef getName() const
const char *const LogicError
StringRef getCategory() const
BuiltinBug(const CheckerBase *checker, const char *name)
Forward-declares and imports various common LLVM datatypes that clang wants to use unqualified...
void setSuppressOnSink(bool x)
StringRef getName() const
Dataflow Directional Tag Classes.
virtual ~BugType()=default
StringRef getCheckName() const
BugType(CheckName Check, StringRef Name, StringRef Cat)
bool isSuppressOnSink() const
isSuppressOnSink - Returns true if bug reports associated with this bug type should be suppressed if ...
BuiltinBug(const CheckerBase *checker, const char *name, const char *description)