Spirit 1.8 has a directive called limit_d which allowed to set the value range. Is there an equivalent for this in Spirit 2.x?There is not anything like this, but you can achieve the same with a semantic action: limit_d(min, max)[uint_p] is equivalent to (when using qi::uint_, qi::_pass, and qi::_1): uint_[_pass = (min <= _1 && _1 <= max)] Regards Hartmut