mirror of
				https://github.com/Z3Prover/z3
				synced 2025-10-31 03:32:28 +00:00 
			
		
		
		
	build fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
		
							parent
							
								
									39913667c6
								
							
						
					
					
						commit
						1477ce2a99
					
				
					 2 changed files with 33 additions and 0 deletions
				
			
		|  | @ -42,8 +42,37 @@ class sls_tracker { | |||
|     struct value_score { | ||||
|         value_score() : value(unsynch_mpz_manager::mk_z(0)) {}; | ||||
|         value_score(value_score&&) noexcept = default; | ||||
|         value_score(const value_score &other) { | ||||
|             m = other.m; | ||||
|             if (other.m && !unsynch_mpz_manager::is_zero(other.value)) { | ||||
|                 m->set(value, other.value); | ||||
|             } | ||||
|             score = other.score; | ||||
|             score_prune = other.score_prune; | ||||
|             has_pos_occ = other.has_pos_occ; | ||||
|             has_neg_occ = other.has_neg_occ; | ||||
|             distance = other.distance; | ||||
|             touched = other.touched; | ||||
|         } | ||||
|         ~value_score() { if (m) m->del(value); } | ||||
|         value_score& operator=(value_score&&) = default; | ||||
|         value_score &operator=(const value_score &other) { | ||||
|             if (this != &other) { | ||||
|                 if (m) | ||||
|                     m->del(value); | ||||
|                 m = other.m; | ||||
|                 if (other.m && !unsynch_mpz_manager::is_zero(other.value)) { | ||||
|                     m->set(value, other.value); | ||||
|                 } | ||||
|                 score = other.score; | ||||
|                 score_prune = other.score_prune; | ||||
|                 has_pos_occ = other.has_pos_occ; | ||||
|                 has_neg_occ = other.has_neg_occ; | ||||
|                 distance = other.distance; | ||||
|                 touched = other.touched; | ||||
|             } | ||||
|             return *this; | ||||
|         } | ||||
|         unsynch_mpz_manager * m = nullptr; | ||||
|         mpz value; | ||||
|         double score = 0.0; | ||||
|  |  | |||
|  | @ -61,6 +61,10 @@ public: | |||
|         key_data() {} | ||||
|         key_data(Key *key) : m_key(key) {} | ||||
|         key_data(Key *k, Value const &v) : m_key(k), m_value(v) {} | ||||
|         key_data(key_data &&kd) noexcept = default; | ||||
|         key_data(key_data const &kd) noexcept = default; | ||||
|         key_data &operator=(key_data const &kd)  = default; | ||||
|         key_data &operator=(key_data &&kd) = default; | ||||
|         Value const & get_value() const { return m_value; } | ||||
|         Key & get_key () const { return *m_key; } | ||||
|         unsigned hash() const { return m_key->hash(); } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue