cargo rap [rap options] -- [cargo check options]
e.g.
1. detect use-after-free and memory leak for a riscv target:
cargo rap -F -M -- --target riscv64gc-unknown-none-elf
2. detect use-after-free and memory leak for tests:
cargo rap -F -M -- --tests
3. detect use-after-free and memory leak for all members:
cargo rap -F -M -- --workspace
Marjor changes:
cargo-rap won't run cargo clean any more: this imporves checking time, and is fine for most cases; sometimes cargo caches won't emit MIRs, then users should run cargo clean, especially for the existing cached projects.
cargo-rap won't handle crates selection any more: all crates to be checked is handled via cargo check, which means
by default, if no cargo check options are specified, cargo-rap only checks lib.rs and main.rs as cargo check does
use -- cargo check options as shown above to select what to check
Internal changes:
purge rustc_version and cargo_metadata dependencies and related code: crates analsis and selection are needless
add #[macro_use] pub mod utils; to import log macros to all sub modules via #[macro_use] extern crate rap; from the root module
Marjor changes:
cargo clean
any more: this imporves checking time, and is fine for most cases; sometimes cargo caches won't emit MIRs, then users should runcargo clean
, especially for the existing cached projects.cargo check
, which means-- cargo check options
as shown above to select what to checkInternal changes:
#[macro_use] pub mod utils;
to import log macros to all sub modules via#[macro_use] extern crate rap;
from the root module