From 19910ae9dc035dbef9cb40915842cc1a64c061f3 Mon Sep 17 00:00:00 2001 From: Christopher Kormanyos Date: Fri, 19 Jan 2024 06:40:45 +0100 Subject: [PATCH] Reduce truncation in dec_float multiplication --- include/boost/multiprecision/cpp_dec_float.hpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/include/boost/multiprecision/cpp_dec_float.hpp b/include/boost/multiprecision/cpp_dec_float.hpp index 2cc19605..6270556c 100644 --- a/include/boost/multiprecision/cpp_dec_float.hpp +++ b/include/boost/multiprecision/cpp_dec_float.hpp @@ -635,8 +635,8 @@ class cpp_dec_float } else { - std::copy(result.cbegin() + 1, - result.cbegin() + (std::min)(static_cast(prec_elems_for_multiply + 1), cpp_dec_float_elem_number), + std::copy(result.cbegin() + static_cast(1), + result.cbegin() + static_cast(1 + (std::min)(prec_elems_for_multiply, cpp_dec_float_elem_number)), data.begin()); } } @@ -673,8 +673,8 @@ class cpp_dec_float } else { - std::copy(result.cbegin() + 1, - result.cbegin() + (std::min)(static_cast(prec_elems_for_multiply + 1), cpp_dec_float_elem_number), + std::copy(result.cbegin() + static_cast(1), + result.cbegin() + static_cast(1 + (std::min)(prec_elems_for_multiply, cpp_dec_float_elem_number)), data.begin()); } } @@ -719,8 +719,8 @@ class cpp_dec_float } else { - std::copy(result + 1, - result + (std::min)(static_cast(prec_elems_for_multiply + 1), cpp_dec_float_elem_number), + std::copy(result + static_cast(1), + result + static_cast(1 + (std::min)(prec_elems_for_multiply, cpp_dec_float_elem_number)), data.begin()); } }