2021
DOI: 10.1109/tse.2018.2884955
|View full text |Cite
|
Sign up to set email alerts
|

Mining Fix Patterns for FindBugs Violations

Abstract: Several static analysis tools, such as Splint or FindBugs, have been proposed to the software development community to help detect security vulnerabilities or bad programming practices. However, the adoption of these tools is hindered by their high false positive rates. If the false positive rate is too high, developers may get acclimated to violation reports from these tools, causing concrete and severe bugs being overlooked. Fortunately, some violations are actually addressed and resolved by developers. We c… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
80
0

Year Published

2022
2022
2023
2023

Publication Types

Select...
4
3
1

Relationship

5
3

Authors

Journals

citations
Cited by 80 publications
(80 citation statements)
references
References 89 publications
0
80
0
Order By: Relevance
“…Mutating the integer division expressions to return a float value, by mutating its divisor or divider to make them be of type float. Released by Liu et al [35], it is not implemented in any APR tool yet. where literal1 and literal2 are of the same type literals, but having different values (e.g., literal1 is true, literal2 is false).…”
Section: Fix Patterns Taxonomymentioning
confidence: 99%
See 1 more Smart Citation
“…Mutating the integer division expressions to return a float value, by mutating its divisor or divider to make them be of type float. Released by Liu et al [35], it is not implemented in any APR tool yet. where literal1 and literal2 are of the same type literals, but having different values (e.g., literal1 is true, literal2 is false).…”
Section: Fix Patterns Taxonomymentioning
confidence: 99%
“…Nevertheless, its precision (ratio of correct vs. plausible patches) is lower than some recent tools such as CapGen and SimFix which employs sophisticated techniques to select fix ingredients. Nonetheless, it is noteworthy that, despite using fix patterns catalogued in the literature, we can fix three bugs (namely Cl-86,L-47,M-11) which had never been fixed by any APR system: M-11 is fixed by a pattern found by a standalone fix pattern mining tool [35] but which was not encoded by any APR system yet. Cl-86 and L-47 are fixed by patterns that were not applied to Defects4J.…”
Section: Repair Performance Comparison: Tbar Vsmentioning
confidence: 99%
“…A common, and reliable, strategy in automatic program repair is to generate concrete patches based on fix patterns [26] (also referred to as fix templates [51] or program transformation schemas [18]). Several APR systems [14,18,26,31,46,48,49,51,60,73] in the literature implement this strategy by using diverse sets of fix patterns obtained either via manual generation or automatic mining of bug fix datasets. In this work, we consider the pioneer PAR system by Kim et al [26].…”
Section: Fix Pattern-based Patch Generationmentioning
confidence: 99%
“…Their approach aims at learning code change templates to be systematically applied to refactor code. Li et al leveraged convolutional neural networks, which is one of the deep neural network techniques, to automatically cluster commons fix patterns from more than 88 000 bug‐fixing changes. Those fix patterns can successfully fix real bugs …”
Section: Related Workmentioning
confidence: 99%