TransRepair: Context-aware Program Repair for Compilation Errors
Xueyang Li, Shangqing Liu, Ruitao Feng, Guozhu Meng, Xiaofei Xie, Kai, Chen, Yang Liu

TL;DR
TransRepair is an innovative, context-aware neural network approach that automatically locates and repairs compilation errors in C programs, significantly improving repair accuracy by leveraging diagnostic feedback and extensive training data.
Contribution
It introduces a Transformer-based model that considers code context and diagnostic feedback, along with a large synthesized dataset for effective program repair.
Findings
Outperforms state-of-the-art in repair accuracy
Effectively utilizes diagnostic feedback and code context
Demonstrates robustness across diverse compilation errors
Abstract
Automatically fixing compilation errors can greatly raise the productivity of software development, by guiding the novice or AI programmers to write and debug code. Recently, learning-based program repair has gained extensive attention and became the state-of-the-art in practice. But it still leaves plenty of space for improvement. In this paper, we propose an end-to-end solution TransRepair to locate the error lines and create the correct substitute for a C program simultaneously. Superior to the counterpart, our approach takes into account the context of erroneous code and diagnostic compilation feedback. Then we devise a Transformer-based neural network to learn the ways of repair from the erroneous code as well as its context and the diagnostic feedback. To increase the effectiveness of TransRepair, we summarize 5 types and 74 fine-grained sub-types of compilations errors from two…
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Software Engineering Research · Software System Performance and Reliability
