From 5aad30f2dcfc334fbe3b692fbc7e59576291cf29 Mon Sep 17 00:00:00 2001 From: Lauri Vasama Date: Wed, 15 Nov 2023 14:50:10 +0200 Subject: [PATCH] Improve integer type safety in static_thread_pool.hpp --- include/exec/static_thread_pool.hpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/include/exec/static_thread_pool.hpp b/include/exec/static_thread_pool.hpp index 87fcd4857..e7a6f8fc6 100644 --- a/include/exec/static_thread_pool.hpp +++ b/include/exec/static_thread_pool.hpp @@ -626,8 +626,8 @@ namespace exec { ++idx; } remote_queue* correct_queue = this_id == queue.id_ ? &queue : get_remote_queue(); - std::size_t nThreads = available_parallelism(); - for (std::size_t i = 0; i < nThreads; ++i) { + std::uint32_t nThreads = available_parallelism(); + for (std::uint32_t i = 0; i < nThreads; ++i) { auto [i0, iEnd] = even_share(nTasks, i, available_parallelism()); if (i0 == iEnd) { continue; @@ -676,8 +676,8 @@ namespace exec { if (victims_.empty()) { return {nullptr, index_}; } - std::uniform_int_distribution dist(0, victims_.size() - 1); - std::uint32_t victimIndex = dist(rng_); + std::uniform_int_distribution dist(0, victims_.size() - 1); + std::size_t victimIndex = dist(rng_); auto& v = victims_[victimIndex]; return {v.try_steal(), v.index()}; }