summaryrefslogtreecommitdiff
path: root/src/api
diff options
context:
space:
mode:
authorAina Niemetz <aina.niemetz@gmail.com>2018-08-01 11:36:30 -0700
committerGitHub <noreply@github.com>2018-08-01 11:36:30 -0700
commitc85d906d4fc8da9e31d96804ccbf6d52ec22cdd5 (patch)
tree9b403c088bbad792017c8cb4dde6766d8cd19dc6 /src/api
parent0aa6e039827750757941751e0829575a55601ace (diff)
New C++ API: Fixed ownership of options object. (#2243)
Diffstat (limited to 'src/api')
-rw-r--r--src/api/cvc4cpp.cpp8
-rw-r--r--src/api/cvc4cpp.h2
2 files changed, 4 insertions, 6 deletions
diff --git a/src/api/cvc4cpp.cpp b/src/api/cvc4cpp.cpp
index 10c0c8e26..19d7840a8 100644
--- a/src/api/cvc4cpp.cpp
+++ b/src/api/cvc4cpp.cpp
@@ -1429,12 +1429,12 @@ size_t RoundingModeHashFunction::operator()(const RoundingMode& rm) const
/* Solver */
/* -------------------------------------------------------------------------- */
-Solver::Solver(Options* opts) : d_opts(new Options())
+Solver::Solver(Options* opts)
{
- if (opts) d_opts->copyValues(*opts);
- d_exprMgr = std::unique_ptr<ExprManager>(new ExprManager(*d_opts));
+ d_exprMgr = std::unique_ptr<ExprManager>(
+ opts == nullptr ? new ExprManager(Options()) : new ExprManager(*opts));
d_smtEngine = std::unique_ptr<SmtEngine>(new SmtEngine(d_exprMgr.get()));
- d_rng = std::unique_ptr<Random>(new Random((*d_opts)[options::seed]));
+ d_rng = std::unique_ptr<Random>(new Random((*opts)[options::seed]));
}
Solver::~Solver() {}
diff --git a/src/api/cvc4cpp.h b/src/api/cvc4cpp.h
index b76fbb08f..c3c429009 100644
--- a/src/api/cvc4cpp.h
+++ b/src/api/cvc4cpp.h
@@ -2355,8 +2355,6 @@ class CVC4_PUBLIC Solver
/* Helper to convert a vector of sorts to internal types. */
std::vector<Expr> termVectorToExprs(const std::vector<Term>& vector) const;
- /* The options of this solver. */
- std::unique_ptr<Options> d_opts;
/* The expression manager of this solver. */
std::unique_ptr<ExprManager> d_exprMgr;
/* The SMT engine of this solver. */
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback