zero means no error---but the result could be sat, unsat, or unknown---and
nonzero means error.
* bv2nat/int2bv functionality
+* User-defined symbols (define-funs) are no longer reported in the output
+ of get-model commands.
Changes since 1.1
=================
ss << Expr::setlanguage(Expr::setlanguage::getLanguage(Dump.getStream()))
<< func;
DefineFunctionCommand c(ss.str(), func, formals, formula);
- addToModelCommandAndDump(c, ExprManager::VAR_FLAG_NONE, true, "declarations");
+ addToModelCommandAndDump(c, ExprManager::VAR_FLAG_DEFINED, true, "declarations");
SmtScope smts(this);
// decouple SmtEngine and ExprManager if the user does a few
// ExprManager::mkSort() before SmtEngine::setOption("produce-models")
// and expects to find their cardinalities in the model.
- if(/* userVisible && */ (!d_fullyInited || options::produceModels())) {
+ if(/* userVisible && */
+ (!d_fullyInited || options::produceModels()) &&
+ (flags & ExprManager::VAR_FLAG_DEFINED) == 0) {
doPendingPops();
if(flags & ExprManager::VAR_FLAG_GLOBAL) {
d_modelGlobalCommands.push_back(c.clone());