
该文章提出了针对C/C++程序修复的基准数据集Defects4C,填补了C/C++领域高质量基准缺失的空白,并通过实验评估了24个主流大语言模型(LLMs)在C/C++程序修复中的表现,揭示了当前LLM-based APR技术的不足。一、文章主要内容研究背景自动化程序修复(APR)在提升软件质量中至关重要,但现有研究多聚焦Java(如Defects4J基准),C/C++作为高性能软件的基础语言,虽漏洞占比超50%(2019年起),却因缺乏高质量基准导致APR研究滞后。现有C/C++基准存在缺陷:部分源于学生作业或竞赛(如DeepFix、Code4Bench),无法反映真实场景;部分项目覆盖少(DBGBench仅2个项目)、可用性低(ManyBugs需复杂编译)或存在虚假bug(BUGC++)。Defects4C基准构建数据来源:从11万个GitHub C/C++仓库提取3800万bug相关提交,结合CVE数据库1.45万个漏洞提交,经筛选后保留900万有效提交。核心组成:包含3部分,分别是Defects4C_bgcommit(900万bug相关提交,用于模型预训练/微调)、Defects4C_bug(248个人工验证的通用bug,含测试用例)、Defects4C_vul(102个人工验证的漏洞,含测试用例)。质量保障:通过单元测试