Static Value-Flow Analysis
Public Member Functions | Static Public Member Functions | List of all members
SVF::FullNullPtrDereferenceBug Class Reference

#include <SVFBugReport.h>

Inheritance diagram for SVF::FullNullPtrDereferenceBug:
SVF::GenericBug

Public Member Functions

 FullNullPtrDereferenceBug (const EventStack &bugEventStack)
 
cJSONgetBugDescription () const
 
void printBugToTerminal () const
 
- Public Member Functions inherited from SVF::GenericBug
 GenericBug (BugType bugType, const EventStack &bugEventStack)
 note: should be initialized with a bugEventStack More...
 
virtual ~GenericBug ()=default
 
BugType getBugType () const
 returns bug type More...
 
const std::string getLoc () const
 returns bug location as json format string More...
 
const std::string getFuncName () const
 return bug source function name More...
 
const EventStackgetEventStack () const
 

Static Public Member Functions

static bool classof (const GenericBug *bug)
 ClassOf. More...
 

Additional Inherited Members

- Public Types inherited from SVF::GenericBug
enum  BugType {
  FULLBUFOVERFLOW , PARTIALBUFOVERFLOW , NEVERFREE , PARTIALLEAK ,
  DOUBLEFREE , FILENEVERCLOSE , FILEPARTIALCLOSE , FULLNULLPTRDEREFERENCE ,
  PARTIALNULLPTRDEREFERENCE
}
 
typedef std::vector< SVFBugEventEventStack
 
- Static Public Attributes inherited from SVF::GenericBug
static const std::map< GenericBug::BugType, std::stringBugType2Str
 
- Protected Attributes inherited from SVF::GenericBug
BugType bugType
 
const EventStack bugEventStack
 

Detailed Description

Definition at line 256 of file SVFBugReport.h.

Constructor & Destructor Documentation

◆ FullNullPtrDereferenceBug()

SVF::FullNullPtrDereferenceBug::FullNullPtrDereferenceBug ( const EventStack bugEventStack)
inline

Definition at line 259 of file SVFBugReport.h.

259  :
GenericBug(BugType bugType, const EventStack &bugEventStack)
note: should be initialized with a bugEventStack
Definition: SVFBugReport.h:95
const EventStack bugEventStack
Definition: SVFBugReport.h:91

Member Function Documentation

◆ classof()

static bool SVF::FullNullPtrDereferenceBug::classof ( const GenericBug bug)
inlinestatic

ClassOf.

Definition at line 266 of file SVFBugReport.h.

267  {
268  return bug->getBugType() == GenericBug::FULLNULLPTRDEREFERENCE;
269  }

◆ getBugDescription()

cJSON * FullNullPtrDereferenceBug::getBugDescription ( ) const
virtual

Implements SVF::GenericBug.

Definition at line 253 of file SVFBugReport.cpp.

254 {
255  cJSON *bugDescription = cJSON_CreateObject();
256  return bugDescription;
257 }
Definition: cJSON.h:104

◆ printBugToTerminal()

void FullNullPtrDereferenceBug::printBugToTerminal ( ) const
virtual

Implements SVF::GenericBug.

Definition at line 259 of file SVFBugReport.cpp.

260 {
261  SVFUtil::errs() << SVFUtil::bugMsg2("\t FullNullPtrDereference :") << " dereference at : ("
262  << GenericBug::getLoc() << ")\n";
263 }
const std::string getLoc() const
returns bug location as json format string
std::ostream & errs()
Overwrite llvm::errs()
Definition: SVFUtil.h:56
std::string bugMsg2(const std::string &msg)
Definition: SVFUtil.cpp:86

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