From 8db67b9edc7c213d20d6ef01a4b63db87c97ff84 Mon Sep 17 00:00:00 2001 From: Daniel Kroening Date: Mon, 27 Nov 2023 10:17:59 -0800 Subject: [PATCH] fix conversions between long and long long as_long in external_sat.cpp was declared as long long, computed as long, and subsequently passed to labs, which expects a long. This yields an error on any platform where long is not long long. This changes the calculation to use long long consistently. --- src/solvers/sat/external_sat.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/solvers/sat/external_sat.cpp b/src/solvers/sat/external_sat.cpp index bbda26ca8a5..5848a4370bd 100644 --- a/src/solvers/sat/external_sat.cpp +++ b/src/solvers/sat/external_sat.cpp @@ -119,8 +119,8 @@ external_satt::resultt external_satt::parse_result(std::string solver_output) { try { - signed long long as_long = std::stol(assignment_string); - size_t index = std::labs(as_long); + signed long long as_long = std::stoll(assignment_string); + size_t index = std::llabs(as_long); if(index >= number_of_variables) {