template <class... Types, class Alloc> struct uses_allocator<variant<Types...>, Alloc> : true_type { };
Requires: Alloc должен быть Allocator.
[ Note: Специализация этого признака сообщает другим компонентам библиотеки, что вариант может быть сконструирован с помощью распределителя, даже если у него нет вложенного allocator_type. ] — end note