Type Infeasible Call Chains

Author : Souter, Amie; Pollock, Lori
Booktitle : International Workshop on Source Code Analysis and Manipulation (SCAM)
Date : Nov 2001
Publisher : IEEE
Keyword(s) : call chain, object-oriented programming, call graphs
Document Type : In Conference Proceedings

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 and object-oriented program may not be executable, or feasible, such that there is no input for which the chain will be taken. This paper examines type 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 determined and exemplified, a key property characterizing type infeasibile call chains is described, empirical results from examining the call graphs for a set of Java programs are described, and two approaches to automatically desciding the type infeasibility of a call chain due to object parameters are presented.

Paper Link