diff options
Diffstat (limited to 'lib/Solver/IndependentSolver.cpp')
| -rw-r--r-- | lib/Solver/IndependentSolver.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/Solver/IndependentSolver.cpp b/lib/Solver/IndependentSolver.cpp index 007bfdcb..c05fa6bb 100644 --- a/lib/Solver/IndependentSolver.cpp +++ b/lib/Solver/IndependentSolver.cpp @@ -393,7 +393,8 @@ private: std::unique_ptr<Solver> solver; public: - IndependentSolver(Solver *_solver) : solver(_solver) {} + IndependentSolver(std::unique_ptr<Solver> solver) + : solver(std::move(solver)) {} bool computeTruth(const Query&, bool &isValid); bool computeValidity(const Query&, Solver::Validity &result); @@ -557,6 +558,8 @@ void IndependentSolver::setCoreSolverTimeout(time::Span timeout) { solver->impl->setCoreSolverTimeout(timeout); } -Solver *klee::createIndependentSolver(Solver *s) { - return new Solver(new IndependentSolver(s)); +std::unique_ptr<Solver> +klee::createIndependentSolver(std::unique_ptr<Solver> s) { + return std::make_unique<Solver>( + std::make_unique<IndependentSolver>(std::move(s))); } |
