summaryrefslogtreecommitdiff
path: root/src/smt/smt_engine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/smt/smt_engine.cpp')
-rw-r--r--src/smt/smt_engine.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/smt/smt_engine.cpp b/src/smt/smt_engine.cpp
index a182d8927..81a212edd 100644
--- a/src/smt/smt_engine.cpp
+++ b/src/smt/smt_engine.cpp
@@ -660,7 +660,7 @@ void SmtEngine::setInfo(const std::string& key, const SExpr& value)
}
SExpr SmtEngine::getInfo(const std::string& key) const
- throw(BadOptionException) {
+ throw(BadOptionException, ModalException) {
SmtScope smts(this);
@@ -677,7 +677,7 @@ SExpr SmtEngine::getInfo(const std::string& key) const
}
return stats;
} else if(key == ":error-behavior") {
- return SExpr("immediate-exit");
+ return SExpr::Keyword("immediate-exit");
} else if(key == ":name") {
return Configuration::getName();
} else if(key == ":version") {
@@ -687,10 +687,10 @@ SExpr SmtEngine::getInfo(const std::string& key) const
} else if(key == ":status") {
return d_status.asSatisfiabilityResult().toString();
} else if(key == ":reason-unknown") {
- if(d_status.isUnknown()) {
+ if(!d_status.isNull() && d_status.isUnknown()) {
stringstream ss;
ss << d_status.whyUnknown();
- return ss.str();
+ return SExpr::Keyword(ss.str());
} else {
throw ModalException("Can't get-info :reason-unknown when the "
"last result wasn't unknown!");
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback