CLI::PositiveNumber calls detail::lexical_cast which in turn uses std::stoull and so any float type produces an error.