1 #ifndef ROSE_BinaryAnalysis_ModelChecker_ErrorTag_H
2 #define ROSE_BinaryAnalysis_ModelChecker_ErrorTag_H
3 #include <featureTests.h>
4 #ifdef ROSE_ENABLE_MODEL_CHECKER
5 #include <Rose/BinaryAnalysis/ModelChecker/Tag.h>
7 #include <Rose/BinaryAnalysis/InstructionSemantics/BaseSemantics/BasicTypes.h>
8 #include <Rose/BinaryAnalysis/SymbolicExpression.h>
11 namespace BinaryAnalysis {
12 namespace ModelChecker {
19 class ErrorTag:
public NameTag {
21 using Ptr = ErrorTagPtr;
24 const std::string mesg_;
33 ErrorTag(
size_t nodeStep,
const std::string &name,
const std::string &mesg,
SgAsmInstruction*,
35 ErrorTag(
size_t nodeStep,
const std::string &name,
const std::string &mesg,
SgAsmInstruction*,
37 ErrorTag(
size_t nodeStep,
const std::string &name,
const std::string &mesg,
SgAsmInstruction*,
48 static Ptr instance(
size_t nodeStep,
const std::string &name,
const std::string &mesg,
SgAsmInstruction*);
49 static Ptr instance(
size_t nodeStep,
const std::string &name,
const std::string &mesg,
SgAsmInstruction*,
51 static Ptr instance(
size_t nodeStep,
const std::string &name,
const std::string &mesg,
SgAsmInstruction*,
53 static Ptr instance(
size_t nodeStep,
const std::string &name,
const std::string &mesg,
SgAsmInstruction*,
74 void print(std::ostream &out,
const std::string &prefix)
const override;
75 void toYaml(std::ostream &out,
const std::string &prefix)
const override;
Base class for machine instructions.
Error messages that indicate an abnormal situation from which the program was able to at least partia...
Main namespace for the ROSE library.
void message(Sawyer::Message::Importance, const Ast::FilePtr &, const Token &, const std::string &mesg)
Print a diagnostic message to standard error.
void print(const StackVariables &, const Partitioner2::PartitionerConstPtr &, std::ostream &out, const std::string &prefix="")
Print info about multiple local variables.
Importance
Level of importance for a message.
Sawyer::SharedPointer< SValue > SValuePtr
Shared-ownership pointer to a semantic value in any domain.
Sawyer::SharedPointer< Node > Ptr
Reference counting pointer.