summaryrefslogtreecommitdiff
path: root/src/expr/command.cpp
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@gmail.com>2012-02-13 01:06:01 +0000
committerMorgan Deters <mdeters@gmail.com>2012-02-13 01:06:01 +0000
commitc691f9118e104129bf894b568542c7509e9747a0 (patch)
tree31383784d65c8a3624a34e8fd0d086daf67b591b /src/expr/command.cpp
parent2bbf79cb4512477857fd1a9252f1f66349300151 (diff)
proper handling of improper get-value
Diffstat (limited to 'src/expr/command.cpp')
-rw-r--r--src/expr/command.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/expr/command.cpp b/src/expr/command.cpp
index 47c6d1eb5..7d060186a 100644
--- a/src/expr/command.cpp
+++ b/src/expr/command.cpp
@@ -484,9 +484,13 @@ Expr GetValueCommand::getTerm() const throw() {
}
void GetValueCommand::invoke(SmtEngine* smtEngine) throw() {
- d_result = d_term.getExprManager()->mkExpr(kind::TUPLE, d_term,
- smtEngine->getValue(d_term));
- d_commandStatus = CommandSuccess::instance();
+ try {
+ d_result = d_term.getExprManager()->mkExpr(kind::TUPLE, d_term,
+ smtEngine->getValue(d_term));
+ d_commandStatus = CommandSuccess::instance();
+ } catch(exception& e) {
+ d_commandStatus = new CommandFailure(e.what());
+ }
}
Expr GetValueCommand::getResult() const throw() {
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback