На 32-битных size_t и uint32_t это синонимы, на 64-битных size_t и uint64_t синонимы. Итого имея одну функцию, ты обрабатываешь одновременно обе системы
В смысле? Вопрос был ровно в обратном - как корректно добавить перегрузку для size_t, и не сломать те платформы, где это действительно один и тот же тип.