3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-02-10 02:50:55 +00:00

Modern C++: Add std::span overload for mk_or, adopt std::clamp, optimize stream output (#8507)

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
This commit is contained in:
Copilot 2026-02-06 11:54:06 +00:00 committed by GitHub
parent 384a8e291b
commit bb35267e46
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 19 additions and 20 deletions

View file

@ -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);
}

View file

@ -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("");
}

View file

@ -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 '$': {