Title
SPrinter: a static checker for finding smart pointer errors in C++ programs
Abstract
ABSTRACTSmart pointers are widely used to prevent memory errors in modern C++ code. However, improper usage of smart pointers may also lead to common memory errors, which makes the code not as safe as expected. To avoid smart pointer errors as early as possible, we present a coding style checker to detect possible bad smart pointer usages during compile time, and notify programmers about bug-prone behaviors. The evaluation indicates that the currently available state-of-the-art static code checkers can only detect 25 out of 116 manually inserted errors, while our tool can detect all these errors. And we also found 521 bugs among 8 open source projects with only 4 false positives.
Year
DOI
Venue
2019
10.1109/ASE.2019.00117
ASE
Keywords
Field
DocType
C plus plus Smart Pointer, Memory Error, Coding Styles
Programming language,Compile time,Computer science,Coding (social sciences),Theoretical computer science,Smart pointer,Memory errors,False positive paradox
Conference
Citations 
PageRank 
References 
0
0.34
0
Authors
5
Name
Order
Citations
PageRank
Xutong Ma122.09
Jiwei Yan2104.22
Yaqi Li300.34
Jun Yan4146.32
Jian Zhang53212.20