Skip to content

Add mirsa predicates for RPL patterns - #117

Closed
990466307 wants to merge 2 commits into
RPL-Toolchain:masterfrom
990466307:add-mirsa-predicates
Closed

Add mirsa predicates for RPL patterns#117
990466307 wants to merge 2 commits into
RPL-Toolchain:masterfrom
990466307:add-mirsa-predicates

Conversation

@990466307

@990466307 990466307 commented May 16, 2026

Copy link
Copy Markdown

在 RPL 的谓词系统中接入 mirsa 的分析结果:
rpl_constraints/Cargo.toml 增加 mirsa_core 和 mirsa_domains 的依赖,依赖代码 在 third_party/mirsa。
predicates/mod.rs 新增 LocationLocalLocationLocalConstLocationLocalLocal 三类谓词签名,注册 is_null_mirsaeq_constlt_constgt_constindex_in_bounds
新增 null_analysis.rs 和 internval_analysis.rs 文件,查询指定 location 前的状态,返回 bool 给 RPL 谓词系统
locals.rsBodyInfoCache<'tcx>,缓存每个函数体的 null_mirsainternval_mirsa 结果
transmuting-nulltransmute-null-to-fn pattern 从 is_null 改为 is_null_mirsa('cast, $null),并删掉其中专门处理中间 cast 的冗余 pattern
新增 bytes-count-to-lenduration-subsecstring-from-utf8-as-bytes 三个 pattern和相关测试

@990466307
990466307 force-pushed the add-mirsa-predicates branch from 5e8adae to 0868193 Compare May 16, 2026 08:17
@990466307

Copy link
Copy Markdown
Author

Superseded by #122, which rebases the MIRSA predicate work onto the current master and includes the Clippy patterns together with the new safety-requirement modeling.

@990466307 990466307 closed this Aug 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants