Open RalfJung opened 1 month ago
With https://github.com/rust-lang/miri/pull/3621, our parser's behavior changed: ./miri run foo.rs --dep
and ./miri run --dep foo.rs
are now equivalent. However, we'd still like to preserve the --
and forward it to miri (e.g. in ./miri run foo.rs -- arg1 arg2
), so we still can't use clap.
We are currently using ad-hoc hand-written parsers for this, and it's kind of annoying. However, we tried to use clap, and it currently doesn't seem possible: what we'd like to do is that once there is a positional argument, that argument and everything that follows gets collected in
Vec
-- our flags, like--dep
, need to come before all of them.This is non-standard, as it makes
./miri run foo.rs --dep
different from./miri run --dep foo.rs
. But it's kind of necessary as./miri run
(and a bunch of other commands) are wrappers around other, complicated tools for which we want to just forward all flags (including--
) without parsing them ourselves.Using clap here is blocked on https://github.com/clap-rs/clap/issues/5055. But maybe there's another crate we can use?