TL;DR
This study investigates the prevalence of cloned bug fix changes within patches, revealing that most contain identical or similar changes, highlighting the potential for automated multi-location repair solutions.
Contribution
It provides the first large-scale analysis of change clones in multi-hunk patches, demonstrating the high occurrence of identical change clones and their implications for automated program repair.
Findings
68% of multi-hunk patches contain at least one change clone group
70% of patches are strictly-cloned, composed of one clone group
89% of strictly-cloned patches have identical change clones
Abstract
Research in automatic program repair has shown that real bugs can be automatically fixed. However, there are several challenges involved in such a task that are not yet fully addressed. As an example, consider that a test-suite-based repair tool performs a change in a program to fix a bug spotted by a failing test case, but then the same or another test case fails. This could mean that the change is a partial fix for the bug or that another bug was manifested. However, the repair tool discards the change and possibly performs other repair attempts. One might wonder if the applied change should be also applied in other locations in the program so that the bug is fully fixed. In this paper, we are interested in investigating the extent of bug fix changes being cloned by developers within patches. Our goal is to investigate the need of multi-location repair by using identical or similar…
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.
