paperbot · PL 论文追踪

全部论文 待读 收藏

P2 IceBear: A Fine-Grained Incremental Scheduler for C/C++ Static Analyzers

IceBear:面向 C/C++ 静态分析器的细粒度增量调度器
FSE Proceedings of the 33rd ACM International Conference on the Foundations of Software Engineering2025匹配度 4/10 · 论文属于静态分析工程优化(C/C++ 增量分析调度),与用户关注的静态分析主题有弱关联;但完全不涉及 LLM/Agent、浮点程序分析或贝叶斯程序分析,也不是将静态分析用于 AI/Agentic 程序,因此不在核心交叉方向上。引用 0 inbox
Yu Xiao, Xutong Ma, Zhilin Li, Jun Yan
crossref: 2026-09-12

AI 速览

一句话:提出 IceBear 调度框架,为三种 C/C++ 静态分析器提供函数级细粒度增量分析,减少冗余检查并过滤无关报告。

静态分析器已广泛用于迭代开发中以发现代码缺陷,但现有许多分析器不支持增量分析,或仅支持粗粒度增量,导致大量时间耗费在重复分析上,并产生大量与本次修改无关的告警报告。针对这一问题,本文提出 IceBear——一个支持三种 C/C++ 静态分析器的调度框架,实现细粒度增量分析。IceBear 首先精确定位发生变更的代码范围,并将变更传播到其他受影响组件(如 AST 节点、函数),通过提取这些细粒度的 diff 信息,在函数级别实施增量分析,从而减少冗余检查并过滤与修改无关的报告。实验结果表明,IceBear 可将整体分析时长降低 60.4%,并消除 92.3% 与修改无关的报告。

问题
现实开发流程中的 C/C++ 静态分析器往往不支持增量分析或仅支持粗粒度增量,造成大量冗余分析时间,并输出众多与本次代码修改无关的报告。
方法
IceBear 定位变更代码范围,并把变更传播到受影响的 AST 节点、函数等组件,提取细粒度 diff 信息,据此在函数级别调度三种 C/C++ 静态分析器执行增量分析。
评估
通过实验对比分析时长与报告过滤效果,结果显示整体分析时长减少 60.4%,与修改无关的报告被消除 92.3%。
原文摘要(Abstract)

Static analyzers are commonly integrated into real-world development workflows to detect hidden code defects throughout iterative development. However, some analyzers do not support incremental analysis or only support coarse-grained incremental analysis, leading to substantial time wasted on redundant analysis, as well as numerous reports unrelated to the modifications made in this iteration. To address these issues, this paper proposes IceBear, a scheduling framework that supports three C/C++ static analyzers, offering fine-grained incremental analysis. IceBear pinpoints the changed code ranges and propagates these changes to other affected components (e.g., AST nodes, functions). By extracting this detailed diff information, IceBear implements a function-level incremental analysis, enabling it to reduce redundant checks and filter unrelated reports. Experimental results show that IceBear can reduce 60.4% of the overall analysis duration and eliminate 92.3% of reports that are unrelated to the modifications.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@inproceedings{paperbot9045,
  title = {IceBear: A Fine-Grained Incremental Scheduler for C/C++ Static Analyzers},
  author = {Yu Xiao and Xutong Ma and Zhilin Li and Jun Yan},
  booktitle = {FSE},
  year = {2025},
  doi = {10.1145/3696630.3728590}
}