13 #ifndef LLVM_CLANG_STATICANALYZER_CORE_BUGREPORTER_BUGTYPE_H 14 #define LLVM_CLANG_STATICANALYZER_CORE_BUGREPORTER_BUGTYPE_H 32 const std::string Description;
33 const std::string Category;
37 virtual void anchor();
41 bool SuppressOnSink =
false)
42 : CheckerName(CheckerName), Description(Name), Category(Cat),
43 Checker(nullptr), SuppressOnSink(SuppressOnSink) {}
45 bool SuppressOnSink =
false)
47 Category(Cat), Checker(Checker), SuppressOnSink(SuppressOnSink) {}
59 assert(!Ret.empty() &&
"Checker name is not set properly.");
70 const std::string desc;
71 void anchor()
override;
74 const char *description)
78 const char *description)
CheckerNameRef getCheckerName() const
This wrapper is used to ensure that only StringRefs originating from the CheckerRegistry are used as ...
BugType(const CheckerBase *Checker, StringRef Name, StringRef Cat, bool SuppressOnSink=false)
BuiltinBug(class CheckerNameRef checker, const char *name, const char *description)
StringRef getDescription() 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...
BugType(CheckerNameRef CheckerName, StringRef Name, StringRef Cat, bool SuppressOnSink=false)
static bool Ret(InterpState &S, CodePtr &PC, APValue &Result)
Dataflow Directional Tag Classes.
StringRef getDescription() const
virtual ~BugType()=default
StringRef getCheckerName() const
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)