summaryrefslogtreecommitdiff
path: root/src/smt
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@gmail.com>2012-10-06 05:27:33 +0000
committerMorgan Deters <mdeters@gmail.com>2012-10-06 05:27:33 +0000
commit8116fa6b55db64301ed89f1f174b95780449007f (patch)
treef75566f83d9bbefd9fd5cb2b34feab7d7a3faa84 /src/smt
parent9b871cceb0f9c3372504f9f7b786a7c1dd7cd700 (diff)
* Include a few bug testcases for resolved bugs.
* Fix error message if you POP beyond the bottom user stack frame. (this commit was certified error- and warning-free by the test-and-commit script.)
Diffstat (limited to 'src/smt')
-rw-r--r--src/smt/smt_engine.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/smt/smt_engine.cpp b/src/smt/smt_engine.cpp
index 0a5270d83..d63a63ba2 100644
--- a/src/smt/smt_engine.cpp
+++ b/src/smt/smt_engine.cpp
@@ -2447,7 +2447,7 @@ void SmtEngine::pop() throw(ModalException) {
if(!options::incrementalSolving()) {
throw ModalException("Cannot pop when not solving incrementally (use --incremental)");
}
- if(d_userContext->getLevel() == 0) {
+ if(d_userLevels.size() == 0) {
throw ModalException("Cannot pop beyond the first user frame");
}
@@ -2457,7 +2457,8 @@ void SmtEngine::pop() throw(ModalException) {
d_needPostsolve = false;
}
- AlwaysAssert(d_userLevels.size() > 0 && d_userLevels.back() < d_userContext->getLevel());
+ AlwaysAssert(d_userContext->getLevel() > 0);
+ AlwaysAssert(d_userLevels.back() < d_userContext->getLevel());
while (d_userLevels.back() < d_userContext->getLevel()) {
internalPop(true);
}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback