Title
A study of dead data members in C++ applications
Abstract
Object-oriented applications may contain data members that can be removed from the application without affecting program behavior. Such "dead" data members may occur due to unused functionality in class libraries, or due to the programmer losing track of member usage as the application changes over time. We present a simple and efficient algorithm for detecting dead data members in C++ applications. This algorithm has been implemented using a prototype version of the IBM VisualAge C++ compiler, and applied to a number of realistic benchmark programs ranging from 600 to 58,000 lines of code. For the non-trivial benchmarks, we found that up to 27.3% of the data members in the benchmarks are dead (average 12.5%), and that up to 11.6% of the object space of these applications may be occupied by dead data members at run-time (average 4.4%).
Year
DOI
Venue
1998
10.1145/277650.277750
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
Keywords
Field
DocType
just in time compilation,lines of code,inlining,threaded code,object oriented
Dead code elimination,Threaded code,Programming language,Computer science,Real-time computing,Ranging,Just-in-time compilation,Source lines of code,Programmer,Parallel computing,Compiler,Operating system,Dead code
Conference
Volume
Issue
ISSN
33
5
0362-1340
ISBN
Citations 
PageRank 
0-89791-987-4
17
3.15
References 
Authors
11
2
Name
Order
Citations
PageRank
Peter F. Sweeney174269.82
Frank Tip22197132.10