How Far Can We Go with Practical Function-Level Program Repair?
Jiahong Xiang, Xiaoyang Xu, Fanchu Kong, Mingyuan Wu, Zizheng Zhang,, Haotian Zhang, Yuqun Zhang

TL;DR
This paper explores the effectiveness of Large Language Models in function-level automated program repair, demonstrating that auxiliary information and a dual-LLM framework significantly improve repair success rates without relying on statement-level fault localization.
Contribution
It provides the first comprehensive study of LLM-based function-level APR, introduces the SRepair technique leveraging auxiliary information, and achieves state-of-the-art repair performance on Defects4J datasets.
Findings
Zero-shot LLMs are already effective for function-level repair.
Auxiliary repair-relevant information significantly boosts repair performance.
SRepair fixes 300 single-function bugs and 32 multi-function bugs in Defects4J.
Abstract
Recently, multiple Automated Program Repair (APR) techniques based on Large Language Models (LLMs) have been proposed to enhance the repair performance. While these techniques mainly focus on the single-line or hunk-level repair, they face significant challenges in real-world application due to the limited repair task scope and costly statement-level fault localization. However, the more practical function-level APR, which broadens the scope of APR task to fix entire buggy functions and requires only cost-efficient function-level fault localization, remains underexplored. In this paper, we conduct the first comprehensive study of LLM-based function-level APR including investigating the effect of the few-shot learning mechanism and the auxiliary repair-relevant information. Specifically, we adopt six widely-studied LLMs and construct a benchmark in both the Defects4J 1.2 and 2.0…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Advanced Data Storage Technologies · Scientific Computing and Data Management
