Why not always allow a `--`? I know that all that is said about the bang at the end of an Ex command is that it “makes the command behave in a different way” (`:_!` help), but this case doesn’t feel right to me; the bang’s existence or non-existence is merely trivial sugar.

I’d just as soon see it unified:

    :RustRun [[rustc-args] --] [args]

Which would allow

    :RustRun args
    :RustRun -- args
    :RustRun rustc-args --
    :RustRun rustc-args -- args

These are achievable in the current behaviour thus:

    :RustRun args
    :RustRun args
    :RustRun! rustc-args
    :RustRun! rustc-args -- args

I think the precedent in bang behaviour is more along the lines of whether it should `:update` or not.