paperbot · PL 论文追踪

全部论文 待读 收藏

P2 An empirical study of real-world variability bugs detected by variability-oblivious tools

对可变性无关工具检测到的真实世界可变性错误的实证研究
FSE Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering2019匹配度 4/10 · 该论文属于静态分析与缺陷检测的实证研究,并构建了真实缺陷基准,契合用户对‘缺乏 benchmark 的重要场景’的部分偏好;但其聚焦编译期可变性缺陷,未涉及 LLM/Agent、浮点程序分析或贝叶斯程序分析,与用户核心的 PL-AI 交叉方向距离较远。引用 55 inbox
Austin Mordahl, Jeho Oh, Ugur Koc, Shiyi Wei, Paul Gazzillo
crossref: 2026-09-12

AI 速览

一句话:用配置采样与自动特征识别模拟可变性感知分析,在三个可配置C项目上发现80%警告为可变性警告,人工确认77个真实缺陷。

许多关键C软件系统使用编译时可配置性,大量配置组合使静态分析难以有效检测缺陷,而已有的可变性感知分析与先进缺陷检测工具间仍有差距。本文提出利用配置采样、现成的“可变性无关”缺陷检测器及自动特征识别技术来模拟可变性感知分析。作者在三个高度可配置的真实C项目上,用四种流行静态分析工具获得36,061条警告,80%为可变性警告。分析发现大多数警告是各类可变性警告(如NULL解引用)。人工调查后产出包含77个已确认真实缺陷(其中52个为可变性缺陷)的基准,可用于未来可变性感知分析的开发。

问题
许多C系统依赖编译时可配置性,配置空间巨大,导致静态分析难以有效检测缺陷;现有可变性感知分析与先进缺陷检测工具之间存在差距,且缺乏真实世界基准来评估这类分析。
方法
利用配置采样、现成的可变性无关缺陷检测工具和自动特征识别技术来模拟可变性感知分析,并在三个高度可配置的真实C项目上使用四种静态分析工具进行实例化,收集并分析警告。
评估
获得36,061条警告,其中80%为可变性警告;人工调查后确认77个真实缺陷(52个为可变性缺陷),形成可用于未来可变性感知分析开发的基准。
原文摘要(Abstract)

Many critical software systems developed in C utilize compile-time configurability. The many possible configurations of this software make bug detection through static analysis difficult. While variability-aware static analyses have been developed, there remains a gap between those and state-of-the-art static bug detection tools. In order to collect data on how such tools may perform and to develop real-world benchmarks, we present a way to leverage configuration sampling, off-the-shelf “variability-oblivious” bug detectors, and automatic feature identification techniques to simulate a variability-aware analysis. We instantiate our approach using four popular static analysis tools on three highly configurable, real-world C projects, obtaining 36,061 warnings, 80% of which are variability warnings. We analyze the warnings we collect from these experiments, finding that most results are variability warnings of a variety of kinds such as NULL dereference. We then manually investigate these warnings to produce a benchmark of 77 confirmed true bugs (52 of which are variability bugs) useful for future development of variability-aware analyses.

链接与引用

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

BibTeX
@inproceedings{paperbot5093,
  title = {An empirical study of real-world variability bugs detected by variability-oblivious tools},
  author = {Austin Mordahl and Jeho Oh and Ugur Koc and Shiyi Wei and Paul Gazzillo},
  booktitle = {FSE},
  year = {2019},
  doi = {10.1145/3338906.3338967}
}