Detecting Condition-Related Bugs with Control Flow Graph Neural Network
Control flow
Leverage (statistics)
Control flow graph
Software bug
Call graph
Program comprehension
Knowledge graph
DOI:
10.1145/3597926.3598142
Publication Date:
2023-07-13T20:12:53Z
AUTHORS (7)
ABSTRACT
Automated bug detection is essential for high-quality software development and has attracted much attention over the years. Among various bugs, previous studies show that condition expressions are quite error-prone condition-related bugs commonly found in practice. Traditional approaches to automated usually limited compilable code require tedious manual effort. Recent deep learning-based work tends learn general syntactic features based on Abstract Syntax Tree (AST) or apply existing Graph Neural Networks program graphs. However, AST-based neural models may miss important control flow information of source code, tend local neighbourhood structure information. Generally, highly influenced by knowledge, therefore we propose a novel CFG-based Network (CFGNN) automatically detect which includes graph-structured LSTM unit efficiently knowledge long-distance context We also adopt API-usage mechanism leverage API knowledge. To evaluate proposed approach, collect real-world popular GitHub repositories build large-scale dataset. The experimental results our approach significantly outperforms state-of-the-art methods detecting bugs.
SUPPLEMENTAL MATERIAL
Coming soon ....
REFERENCES (60)
CITATIONS (9)
EXTERNAL LINKS
PlumX Metrics
RECOMMENDATIONS
FAIR ASSESSMENT
Coming soon ....
JUPYTER LAB
Coming soon ....