Finding More Null Pointer Bugs, But Not Too Many

被引:60
作者
Hovemeyer, David [1 ]
Pugh, William [2 ]
机构
[1] York Coll Penn, Dept Phys Sci, York, PA USA
[2] Univ Maryland, Dept Comp Sci, College Pk, MD USA
来源
PASTE'07 PROCEEDINGS OF THE 2007 ACM SIGPLAN- SIGSOFT WORKSHOP ON PROGRAM ANALYSIS FOR SOFTWARE TOOLS & ENGINEERING | 2007年
关键词
FindBugs; null pointers; static analysis; bugs; bug patterns; !text type='Java']Java[!/text; software quality;
D O I
10.1145/1251535.1251537
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In the summer of 2006, the FindBugs project was challenged to improve the null pointer analysis in FindBugs so that we could find more null pointer bugs. In particular, we were challenged to try to do as well as a publicly available analysis by Reasoning, Inc on version 4.1.24 of Apache Tomcat. Reasoning's report is a result of running their own static analysis tool and using manual auditing to remove false positives. Reasoning reported a total of 9 null pointer warnings in Tomcat 4.1.24, of which only 2 were reported by FindBugs 1.0. While we wanted to improve the analysis in FindBugs, we wanted to retain our current low level of false positives. As of result of the work presented in this paper, FindBugs now reports 4 of the 9 warnings in Tomcat, shows that one of the warnings reported by Reasoning is a false positive, and classifies the remaining 4 as being dependent on the feasibility of a particular path, which cannot be easier ascertained by a local examination of the source code. Moreover, we found 24 additional null pointer bugs in Tomcat that had been missed by Reasoning, and overall doubled the number of null pointer bugs found by FindBugs while improving the quality and significance of reported defects.
引用
收藏
页码:9 / +
页数:2
相关论文
共 7 条
[1]  
[Anonymous], 2001, Symposium on Operating Systems Principles
[2]  
DILLIG I, 2007, P C PROGR LANG DES I
[3]  
ENGLER DR, 2003, SOSP, P237
[4]  
Hovemeyer David, 2005, ACM_SIGSOFT_Software_Engineering_Notes, P13, DOI 10.1145/1108792.1108798
[5]  
PUGH W, 2006, NULL POINTER DETECTI
[6]  
*REAS INC, 2003, REAS INSP SERV DEF D
[7]  
[No title captured]