From e5b9f901d41df98422ae056a79bc7e62d192d2ae Mon Sep 17 00:00:00 2001 From: fbusato Date: Mon, 18 Nov 2024 22:19:43 +0000 Subject: [PATCH] fix common_type in fast_div_mod --- cub/cub/detail/fast_modulo_division.cuh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cub/cub/detail/fast_modulo_division.cuh b/cub/cub/detail/fast_modulo_division.cuh index e45063a9de6..e9e60241975 100644 --- a/cub/cub/detail/fast_modulo_division.cuh +++ b/cub/cub/detail/fast_modulo_division.cuh @@ -134,15 +134,15 @@ class fast_div_mod { static_assert(supported_integral::value, "unsupported type"); - // uint16_t is a special case that would requires complex logic. Workaround: convert to unsigned - using T = ::cuda::std::conditional_t<::cuda::std::is_same::value, unsigned, T1>; + // uint16_t is a special case that would requires complex logic. Workaround: convert to int + using T = ::cuda::std::conditional_t<::cuda::std::is_same::value, int, T1>; using unsigned_t = unsigned_implicit_prom_t; public: template struct result { - using common_t = decltype(R{} / T1{}); + using common_t = decltype(R{} / T{}); common_t quotient; common_t remainder; };