Merge topic 'ctest-num-width'

6d28884617 cmCTestRunTest: Avoid float/int conversions in number width logic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2433
diff --git a/Source/CTest/cmCTestRunTest.h b/Source/CTest/cmCTestRunTest.h
index 48a5064..10dceca 100644
--- a/Source/CTest/cmCTestRunTest.h
+++ b/Source/CTest/cmCTestRunTest.h
@@ -5,7 +5,6 @@
 
 #include "cmConfigure.h" // IWYU pragma: keep
 
-#include <cmath>
 #include <set>
 #include <stddef.h>
 #include <string>
@@ -122,7 +121,12 @@
 
 inline int getNumWidth(size_t n)
 {
-  return static_cast<int>(std::log10(n)) + 1;
+  int w = 1;
+  while (n >= 10) {
+    n /= 10;
+    ++w;
+  }
+  return w;
 }
 
 #endif