mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 17:15:31 +00:00
fix memory alias bug and non-termination bug exposed by issue #184
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
0ed38ed59b
commit
963981b3a6
3 changed files with 10 additions and 6 deletions
|
@ -440,7 +440,8 @@ void grobner::merge_monomials(ptr_vector<monomial> & monomials) {
|
|||
unsigned sz = monomials.size();
|
||||
if (sz == 0)
|
||||
return;
|
||||
ptr_vector<monomial>& to_delete = m_tmp_monomials;
|
||||
SASSERT(&m_del_monomials != &monomials);
|
||||
ptr_vector<monomial>& to_delete = m_del_monomials;
|
||||
to_delete.reset();
|
||||
for (unsigned i = 1; i < sz; ++i) {
|
||||
monomial * m1 = monomials[j];
|
||||
|
|
|
@ -110,6 +110,7 @@ protected:
|
|||
};
|
||||
svector<scope> m_scopes;
|
||||
ptr_vector<monomial> m_tmp_monomials;
|
||||
ptr_vector<monomial> m_del_monomials;
|
||||
ptr_vector<expr> m_tmp_vars1;
|
||||
ptr_vector<expr> m_tmp_vars2;
|
||||
unsigned m_num_new_equations; // temporary variable
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue