From c7dc420b3be3ad72e7576e36785955e170b48427 Mon Sep 17 00:00:00 2001 From: Nikolaj Bjorner Date: Sat, 3 Aug 2019 23:19:59 -0700 Subject: [PATCH] let me guess, ASAN doesn't like 0-byte memcpy Signed-off-by: Nikolaj Bjorner --- src/nlsat/nlsat_justification.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/nlsat/nlsat_justification.h b/src/nlsat/nlsat_justification.h index db0abbb0e..3e6fcd5aa 100644 --- a/src/nlsat/nlsat_justification.h +++ b/src/nlsat/nlsat_justification.h @@ -46,8 +46,12 @@ namespace nlsat { lazy_justification(unsigned nl, literal const * lits, unsigned nc, nlsat::clause * const* clss): m_num_literals(nl), m_num_clauses(nc) { - memcpy(m_data + 0, clss, sizeof(nlsat::clause const*)*nc); - memcpy(m_data + sizeof(nlsat::clause*)*nc, lits, sizeof(literal)*nl); + if (nc > 0) { + memcpy(m_data + 0, clss, sizeof(nlsat::clause*)*nc); + } + if (nl > 0) { + memcpy(m_data + sizeof(nlsat::clause*)*nc, lits, sizeof(literal)*nl); + } } unsigned num_lits() const { return m_num_literals; } literal lit(unsigned i) const { SASSERT(i < num_lits()); return lits()[i]; }