diff options
author | Tim King <taking@cs.nyu.edu> | 2017-11-15 02:58:30 -0800 |
---|---|---|
committer | Andres Noetzli <andres.noetzli@gmail.com> | 2017-11-15 02:58:30 -0800 |
commit | 3c130b44fdecc62b1ace2a739e77f913cd606aa0 (patch) | |
tree | 6abfb806dd45c83606c04dda5c26e9c410ac2ee1 /src/proof/proof_output_channel.cpp | |
parent | 85df7998e4362e0a9c796146d07d7b9e91045a31 (diff) |
Adding garbage collection for Proof objects. (#1294)
Diffstat (limited to 'src/proof/proof_output_channel.cpp')
-rw-r--r-- | src/proof/proof_output_channel.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/proof/proof_output_channel.cpp b/src/proof/proof_output_channel.cpp index 85a742dfa..a75987c06 100644 --- a/src/proof/proof_output_channel.cpp +++ b/src/proof/proof_output_channel.cpp @@ -24,18 +24,19 @@ namespace CVC4 { ProofOutputChannel::ProofOutputChannel() : d_conflict(), d_proof(nullptr) {} - -Proof* ProofOutputChannel::getConflictProof() { +const Proof& ProofOutputChannel::getConflictProof() const +{ Assert(hasConflict()); - return d_proof; + return *d_proof; } -void ProofOutputChannel::conflict(TNode n, Proof* pf) { +void ProofOutputChannel::conflict(TNode n, std::unique_ptr<Proof> pf) +{ Trace("pf::tp") << "ProofOutputChannel: CONFLICT: " << n << std::endl; Assert(!hasConflict()); Assert(!d_proof); d_conflict = n; - d_proof = pf; + d_proof = std::move(pf); Assert(hasConflict()); Assert(d_proof); } |