,
Wei Li
,
Jingling Xue
Creative Commons Attribution 4.0 International license
463327f1c7c0bd69701e5bc34898af82
(Get MD5 Sum)
The artifact has been evaluated as described in the ECOOP 2026 Call for Artifacts and the ACM Artifact Review and Badging Policy.
Pointer analysis for Rust faces unique challenges arising from its ownership-based memory model and layered abstractions, which complicate how heap-allocated objects flow across functions. Existing k-limited callsite abstractions—designed for earlier languages—are both imprecise and inefficient on large Rust programs. We present Rceus, a Rust-oriented pointer-analysis technique that mitigates points-to set explosion and resource exhaustion caused by cross-function pointer conflation under deep heap encapsulation, a scalability bottleneck that conventional k-limiting cannot address. Rceus performs a fast, coarse-grained pointer-flow pre-analysis to identify precision-critical functions and the essential callsites within their calling contexts. This selective context construction distinguishes parameter-derived flows while avoiding unnecessary expansion. As a result, Rceus cleanly partitions intertwined pointer flows, eliminating context explosion and improving both scalability and precision. On 16 real-world Rust applications, Rceus outperforms state-of-the-art techniques—standard k-limiting, selective k-limiting for Java, and stack-filtered k-limiting for Rust—in both precision and efficiency. The evaluation includes Wasmtime, a WebAssembly runtime with 669K lines of code, where the benefits increase with program size. Rceus also composes with existing techniques, providing a practical and extensible foundation for scalable, precise Rust pointer analysis.
@Article{chen_et_al:DARTS.12.1.12,
author = {Chen, Wenyao and Li, Wei and Xue, Jingling},
title = {{Beyond k-Limiting: Pointer-Flow-Guided Context Sensitivity for Scalable and Precise Rust Pointer Analysis (Artifact)}},
pages = {12:1--12:3},
journal = {Dagstuhl Artifacts Series},
ISSN = {2509-8195},
year = {2026},
volume = {12},
number = {1},
editor = {Chen, Wenyao and Li, Wei and Xue, Jingling},
publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/entities/document/10.4230/DARTS.12.1.12},
URN = {urn:nbn:de:0030-drops-261496},
doi = {10.4230/DARTS.12.1.12},
annote = {Keywords: Pointer Analysis, Context Sensitivity, Rust}
}