Dead code: Difference between revisions

Content deleted Content added
Analysis: add note on large projects
Wikilink author of citation
Line 1:
{{TOCright}}
 
'''Dead code''' is a [[computer programming]] term for code in the [[source code]] of a program which is executed but whose result is never used in any other computation.<ref>[http://doi.acm.org/10.1145/349214.349233 Debray, S. K., Evans, W., Muth, R., and De Sutter, B. 2000. Compiler techniques for code compaction. ACM Trans. Program. Lang. Syst. 22, 2 (Mar. 2000), 378-415.]</ref><ref>[[Andrew Appel|Appel, A. W.]] 1998 Modern Compiler Implementation in Java. Cambridge University Press.</ref> The execution of dead code wastes computation time as its results are never used.
 
While the result of a dead computation may never be used the dead code may raise [[exceptions]] or affect some global state, thus removal of such code may change the output of the program and introduce unintended [[software_bug|bugs]]. Compiler optimizations are typically conservative in their approach to dead code removal if there is any ambiguity as to whether removal of the dead code will affect the program output.