diff --git a/.clang-tidy b/.clang-tidy index df924ca6a8..025098cceb 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -3,4 +3,5 @@ Checks: [-*, bugprone-branch-clone, bugprone-implicit-widening-of-multiplication-result, bugprone-incorrect-division, + bugprone-incorrect-roundings, ] diff --git a/src/util.cc b/src/util.cc index a7fae2700f..b931134d53 100644 --- a/src/util.cc +++ b/src/util.cc @@ -1875,9 +1875,9 @@ double current_time(bool real) { struct timeval double_to_timeval(double t) { struct timeval tv; - double t1 = floor(t); - tv.tv_sec = int(t1); - tv.tv_usec = int((t - t1) * 1e6 + 0.5); + double t1 = std::floor(t); + tv.tv_sec = static_cast(t1); + tv.tv_usec = std::lround((t - t1) * 1e6); return tv; }