diff --git a/kernel/include/kernel/Random.h b/kernel/include/kernel/Random.h index 939329b6..3e63ed03 100644 --- a/kernel/include/kernel/Random.h +++ b/kernel/include/kernel/Random.h @@ -11,14 +11,12 @@ namespace Kernel static void initialize(); static uint32_t get_u32(); static uint64_t get_u64(); - template - static T get(); + template requires (sizeof(T) == 4) + static T get() { return Random::get_u32(); } + template requires (sizeof(T) == 8) + static T get() { return Random::get_u64(); } }; - template<> - inline uint32_t Random::get() { return Random::get_u32(); } - template<> - inline uint64_t Random::get() { return Random::get_u64(); } }