diff --git a/src/api/api_ast_vector.cpp b/src/api/api_ast_vector.cpp index 9eecd95cc..46a889438 100644 --- a/src/api/api_ast_vector.cpp +++ b/src/api/api_ast_vector.cpp @@ -130,7 +130,7 @@ extern "C" { for (unsigned i = 0; i < sz; ++i) { buffer << "\n " << mk_ismt2_pp(to_ast_vector_ref(v).get(i), mk_c(c)->m(), 2); } - buffer << ")"; + buffer << ')'; return mk_c(c)->mk_external_string(buffer.str()); Z3_CATCH_RETURN(nullptr); } diff --git a/src/api/api_params.cpp b/src/api/api_params.cpp index d07aec16a..efd33cc05 100644 --- a/src/api/api_params.cpp +++ b/src/api/api_params.cpp @@ -200,14 +200,14 @@ extern "C" { LOG_Z3_param_descrs_to_string(c, p); RESET_ERROR_CODE(); std::ostringstream buffer; - buffer << "("; + buffer << '('; unsigned sz = to_param_descrs_ptr(p)->size(); for (unsigned i = 0; i < sz; ++i) { if (i > 0) buffer << ", "; buffer << to_param_descrs_ptr(p)->get_param_name(i); } - buffer << ")"; + buffer << ')'; return mk_c(c)->mk_external_string(std::move(buffer).str()); Z3_CATCH_RETURN(""); } diff --git a/src/api/z3_replayer.cpp b/src/api/z3_replayer.cpp index be2026b55..6af8b2e0b 100644 --- a/src/api/z3_replayer.cpp +++ b/src/api/z3_replayer.cpp @@ -427,13 +427,13 @@ struct z3_replayer::imp { case 'R': // reset next(); - TRACE(z3_replayer, tout << "[" << m_line << "] " << "R\n";); + TRACE(z3_replayer, tout << "[" << m_line << "] R\n";); reset(); break; case 'P': { // push pointer next(); skip_blank(); read_ptr(); - TRACE(z3_replayer, tout << "[" << m_line << "] " << "P " << m_ptr << "\n";); + TRACE(z3_replayer, tout << "[" << m_line << "] P " << m_ptr << "\n";); if (m_ptr == 0) { m_args.push_back(nullptr); } @@ -449,7 +449,7 @@ struct z3_replayer::imp { case 'S': { // push string next(); skip_blank(); read_string(); - TRACE(z3_replayer, tout << "[" << m_line << "] " << "S " << m_string.begin() << "\n";); + TRACE(z3_replayer, tout << "[" << m_line << "] S " << m_string.begin() << "\n";); symbol sym(m_string.begin()); // save string m_args.push_back(value(STRING, sym.bare_str())); break; @@ -457,7 +457,7 @@ struct z3_replayer::imp { case 'N': // push null symbol next(); - TRACE(z3_replayer, tout << "[" << m_line << "] " << "N\n";); + TRACE(z3_replayer, tout << "[" << m_line << "] N\n";); m_args.push_back(value(SYMBOL, symbol::null)); break; case '$': { diff --git a/src/ast/ast.h b/src/ast/ast.h index 779913f17..d96958a3d 100644 --- a/src/ast/ast.h +++ b/src/ast/ast.h @@ -2206,6 +2206,7 @@ public: app * mk_xor(ref_buffer const& args) { return mk_xor(args.size(), args.data()); } app * mk_or(unsigned num_args, expr * const * args) { return mk_app(basic_family_id, OP_OR, num_args, args); } app * mk_and(std::span args) { return mk_app(basic_family_id, OP_AND, args); } + app * mk_or(std::span args) { return mk_app(basic_family_id, OP_OR, args); } app * mk_or(expr * arg1, expr * arg2) { return mk_app(basic_family_id, OP_OR, arg1, arg2); } app * mk_and(expr * arg1, expr * arg2) { return mk_app(basic_family_id, OP_AND, arg1, arg2); } app * mk_or(expr * arg1, expr * arg2, expr * arg3) { return mk_app(basic_family_id, OP_OR, arg1, arg2, arg3); } @@ -2216,10 +2217,10 @@ public: app * mk_and(ptr_vector const& args) { return mk_and(std::span(args.data(), args.size())); } app * mk_and(ref_buffer const& args) { return mk_and(std::span(args.data(), args.size())); } app * mk_and(ptr_buffer const& args) { return mk_and(std::span(args.data(), args.size())); } - app * mk_or(ref_vector const& args) { return mk_or(args.size(), args.data()); } - app * mk_or(ptr_vector const& args) { return mk_or(args.size(), args.data()); } - app * mk_or(ref_buffer const& args) { return mk_or(args.size(), args.data()); } - app * mk_or(ptr_buffer const& args) { return mk_or(args.size(), args.data()); } + app * mk_or(ref_vector const& args) { return mk_or(std::span(args.data(), args.size())); } + app * mk_or(ptr_vector const& args) { return mk_or(std::span(args.data(), args.size())); } + app * mk_or(ref_buffer const& args) { return mk_or(std::span(args.data(), args.size())); } + app * mk_or(ptr_buffer const& args) { return mk_or(std::span(args.data(), args.size())); } app * mk_implies(expr * arg1, expr * arg2) { return mk_app(basic_family_id, OP_IMPLIES, arg1, arg2); } app * mk_not(expr * n) { return mk_app(basic_family_id, OP_NOT, n); } app * mk_distinct(unsigned num_args, expr * const * args); diff --git a/src/ast/euf/euf_mam.cpp b/src/ast/euf/euf_mam.cpp index aba3036d7..00d9c0726 100644 --- a/src/ast/euf/euf_mam.cpp +++ b/src/ast/euf/euf_mam.cpp @@ -284,14 +284,14 @@ namespace euf { out << " " << c.m_label->get_name() << " " << c.m_oreg; for (unsigned i = 0; i < c.m_num_args; ++i) out << " " << c.m_iregs[i]; - out << ")"; + out << ')'; } void display_is_cgr(std::ostream & out, const is_cgr & c) { out << "(IS_CGR " << c.m_label->get_name() << " " << c.m_ireg; for (unsigned i = 0; i < c.m_num_args; ++i) out << " " << c.m_iregs[i]; - out << ")"; + out << ')'; } void display_yield(std::ostream & out, const yield & y) { diff --git a/src/ast/normal_forms/nnf.cpp b/src/ast/normal_forms/nnf.cpp index efd5784cf..219cea3f8 100644 --- a/src/ast/normal_forms/nnf.cpp +++ b/src/ast/normal_forms/nnf.cpp @@ -522,7 +522,7 @@ struct nnf::imp { app * r; if (fr.m_pol) - r = m.mk_or(2, m_result_stack.data() + fr.m_spos); + r = m.mk_or(std::span(m_result_stack.data() + fr.m_spos, 2)); else r = m.mk_and(std::span(m_result_stack.data() + fr.m_spos, 2)); diff --git a/src/ast/simplifiers/bound_propagator.cpp b/src/ast/simplifiers/bound_propagator.cpp index e21c16c6d..240ba7a98 100644 --- a/src/ast/simplifiers/bound_propagator.cpp +++ b/src/ast/simplifiers/bound_propagator.cpp @@ -391,7 +391,7 @@ bool bound_propagator::relevant_bound(var x, double new_k) const { if (abs_k < 0.0) abs_k -= abs_k; if (bounded) - improvement = m_threshold * std::max(std::min(interval_size, abs_k), 1.0); + improvement = m_threshold * std::clamp(interval_size, 1.0, abs_k); else improvement = m_threshold * std::max(abs_k, 1.0); diff --git a/src/ast/substitution/substitution_tree.cpp b/src/ast/substitution/substitution_tree.cpp index b23c44c80..410637a37 100644 --- a/src/ast/substitution/substitution_tree.cpp +++ b/src/ast/substitution/substitution_tree.cpp @@ -580,7 +580,7 @@ void substitution_tree::display(std::ostream & out, subst const & s) const { out << "(" << to_app(s.second)->get_decl()->get_name(); for (unsigned i = 0; i < num; ++i) out << " r!" << to_var(to_app(s.second)->get_arg(i))->get_idx(); - out << ")"; + out << ')'; } } else { diff --git a/src/muz/spacer/spacer_context.cpp b/src/muz/spacer/spacer_context.cpp index 8ee2a3f7f..cf27f23cb 100644 --- a/src/muz/spacer/spacer_context.cpp +++ b/src/muz/spacer/spacer_context.cpp @@ -1969,8 +1969,7 @@ void pred_transformer::update_solver_with_rfs(prop_solver *solver, e = m.mk_or(m.mk_not(rule_tag), rf->get(), rf->tag()); } else { - expr *args[4] = { not_rule_tag, last_tag, rf->get(), rf->tag() }; - e = m.mk_or(4, args); + e = m.mk_or(not_rule_tag, last_tag, rf->get(), rf->tag()); } last_tag = m.mk_not(rf->tag()); pm.formula_n2o(e.get(), e, pos); diff --git a/src/smt/dyn_ack.cpp b/src/smt/dyn_ack.cpp index 1c66427e2..526eed2e1 100644 --- a/src/smt/dyn_ack.cpp +++ b/src/smt/dyn_ack.cpp @@ -155,8 +155,7 @@ namespace smt { proof* ps[2] = { p3, p4 }; p5 = m.mk_unit_resolution(2, ps); SASSERT(m.get_fact(p5) == m.mk_false()); - expr* eqs[3] = { m.mk_not(m_eq1), m.mk_not(m_eq2), m_eq3 }; - expr_ref conclusion(m.mk_or(3, eqs), m); + expr_ref conclusion(m.mk_or(m.mk_not(m_eq1), m.mk_not(m_eq2), m_eq3), m); p6 = m.mk_lemma(p5, conclusion); return p6; }