Improving Patch Optimization With Buggy Block for Complex Program Repair

Jisung Kim, Aslan Safarovich Abdinabiev, Byungjeong Lee · IEEE Access · 2025

Automated program repair (APR) identifies and repairs bugs automatically. However, previous studies have faced some limitations in terms of counting the number of repaired bug locations, generating and evaluating patches, etc. Therefore, to overcome these limitations, we propose the “MCRepair++” technique for APR that applies minimized repaired locations, revised patch filtering and ranking, and a proportional patch combination. First, the minimized repaired locations merge the divided cases and exclude overlapping cases to improve preprocessing for buggy blocks. Next, the revised patch filtering and ranking filter out unnecessary patches and favor patches, which have fewer expected actions, with a high score. Finally, the proportional patch combination yields high top k values to reasonably select patches while considering the size of each buggy chunk. We conducted several experiments and evaluated the proposed approach using six project modules of Defects4J. On Defects4J, MCRepair++ correctly fixed 79 bugs, including 31 multi-chunk bugs. It also showed better performance than the baselines. Moreover, it found many unique bugs, including multi-chunk bugs, compared to the baselines.

Read the paper · More papers on PaperTik