3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-21 02:30:23 +00:00

fix compiler errors and memory issue with drat

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2017-02-06 16:09:46 -08:00
parent 4831c45ad8
commit 66089a7aef
4 changed files with 15 additions and 13 deletions

View file

@ -28,10 +28,10 @@ namespace sat {
enum { t_clause, t_unit, t_ext } m_type;
union {
clause* m_clause;
literal m_literal;
unsigned m_literal;
};
premise(s_ext, literal l): m_type(t_ext), m_literal(l) {}
premise(s_unit, literal l): m_type(t_unit), m_literal(l) {}
premise(s_ext, literal l): m_type(t_ext), m_literal(l.index()) {}
premise(s_unit, literal l): m_type(t_unit), m_literal(l.index()) {}
premise(clause* c): m_type(t_clause), m_clause(c) {}
};
private:
@ -52,7 +52,6 @@ namespace sat {
void append(clause& c, status st);
friend std::ostream& operator<<(std::ostream & out, status st);
status get_status(bool learned) const;
bool is_cleaned(unsigned n, literal const* lits) const;
void declare(literal l);
void assign(literal l);
@ -74,7 +73,8 @@ namespace sat {
void add(literal l1, literal l2, bool learned);
void add(clause& c, bool learned);
void add(literal_vector const& c, svector<premise> const& premises);
bool is_cleaned(clause& c) const;
void del(literal l);
void del(literal l1, literal l2);
void del(clause& c);