1#ifndef ROSE_BinaryAnalysis_ModelChecker_NullDereferenceTag_H 
    2#define ROSE_BinaryAnalysis_ModelChecker_NullDereferenceTag_H 
    3#include <featureTests.h> 
    4#ifdef ROSE_ENABLE_MODEL_CHECKER 
    6#include <Rose/BinaryAnalysis/ModelChecker/Tag.h> 
    7#include <Rose/BinaryAnalysis/InstructionSemantics/BaseSemantics/BasicTypes.h> 
   12namespace BinaryAnalysis {
 
   13namespace ModelChecker {
 
   16class NullDereferenceTag: 
public Tag {
 
   18    using Ptr = NullDereferenceTagPtr;
 
   24    const InstructionSemantics::BaseSemantics::SValuePtr addr_; 
 
   27    NullDereferenceTag() = 
delete;
 
   29                       const InstructionSemantics::BaseSemantics::SValuePtr &addr);
 
   31    ~NullDereferenceTag();
 
   37                        const InstructionSemantics::BaseSemantics::SValuePtr &addr);
 
   40    virtual std::string name() 
const override;
 
   41    virtual std::string printableName() 
const override;
 
   42    virtual void print(std::ostream&, 
const std::string &prefix) 
const override;
 
   43    virtual void toYaml(std::ostream&, 
const std::string &prefix) 
const override;
 
   44    virtual Sarif::ResultPtr toSarif(
const Sarif::AnalysisPtr&) 
const override;
 
Base class for machine instructions.
 
Sawyer::SharedPointer< Node > Ptr
Reference counting pointer.
 
void print(const GlobalVariables &, const Partitioner2::PartitionerConstPtr &, std::ostream &out, const std::string &prefix="")
Print info about multiple global variables.
 
const char * TestMode(int64_t)
Convert Rose::BinaryAnalysis::ModelChecker::TestMode enum constant to a string.
 
const char * IoMode(int64_t)
Convert Rose::BinaryAnalysis::ModelChecker::IoMode enum constant to a string.