Title :
Type infeasible call chains
Author :
Souter, Amie L. ; Pollock, Lori L.
Author_Institution :
Dept. of Comput. & Inf. Sci., Delaware Univ., Newark, DE, USA
Abstract :
While some software engineering applications perform static analysis over the whole program call graph, others are more interested in specific call chains within a program´s call graph. It is thus important to identify when a particular static call chain for an object-oriented program may not be executable, or feasible, such that there is no input for which the chain will be taken. The paper examines type infeasibility of call chains, which is the infeasibility caused by inherently polymorphic call sites and sometimes also due to imprecision in call graphs. The problem of determining whether a call chain is type infeasible is defined and exemplified, a key property characterizing type in infeasible call chains is described, empirical results from examining the call graphs for a set of Java programs are described, and two approaches to automatically deciding the type infeasibility of a call chain due to object parameters are presented
Keywords :
Java; graph theory; object-oriented programming; program diagnostics; type theory; Java programs; call graph imprecision; inherently polymorphic call sites; object parameters; object-oriented program; program call graph; software engineering applications; static analysis; static call chain; type infeasible call chains; Application software; Computer applications; Debugging; Information analysis; Java; Optimizing compilers; Performance analysis; Runtime; Software engineering; Software testing;
Conference_Titel :
Source Code Analysis and Manipulation, 2001. Proceedings. First IEEE International Workshop on
Conference_Location :
Florence
Print_ISBN :
0-7695-1387-5
DOI :
10.1109/SCAM.2001.972681