Abstract
For data flow analysis of Java program to be correct and precise, the flows induced by exceptions must be properly analysed. In our data flow analysis, the implicit control flow for a raised exception is represented explicitly. Exception branches, exception plateaus, and exception exits for methods and method calls are introduced as additional control flow structures for analysis of exception handling. These structures are constructed dynamically under control of data flow analysis.
This research was supported by the Russian Foundation for Basic Research, RFFI 97-01-00724
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
R. Chatterjee, B.G. Ryder, and W.A. Landi. Complexity of Concrete Type-Inference in the Presence of Exceptions. LNCS 1381, Proceedings of European Symposium on Programming, April, 1998.
S.V. Kuksenko, V.I. Shelekhov. The Static Source Code Checker of Run-time Errors, Programmirovanie, 1998, no. 6. (in Russian)
R. Cytron, J. Ferrante, B.K. Rosen, M.N. Wegman, and F.K. Zadek. Efficient Computing Static Single Assignment Form and the Control Dependence Graph, ACM Trans. Prog. Lang. Sys., 1991, vol. 13, no. 4, pp. 451–490.
Shelekhov, V.I., Invariant of the Programming Language, in Sredstva i instrumenty programmirovaniya (Programming Tools), Novosibirsk: Institute of Informatics Systems, Siberian Division, Russian Academy of Sciences, 1995, pp. 6–22. (in Russian)
Cousot, P. and Cousot, R., Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints, Rec. 18th ACM Symp. on Principles of Programming Languages, ACM, 1977, pp. 55–56.
Landi, W. and Rider, B.G., A Safe Approximate Algorithm for Interprocedural Pointer Aliasing, Proc. ACM SIGPLAN’92 Conf. on Prog. Lang. Design and Implem., SIGPLAN Notices, 1992, vol. 27, no. 7, pp. 235–248.
J. Gosling, B. Joy, G. Steele. The Java Language Specification. Pre-Release Version 1.0, Draft 5.2-July 3, 1996
Kwangkeun Yi, Sukyoung Ryu. Toward a Cost-Effective Estimation of Uncaught Exceptions in SML Programs. LNCS 1302, Static Analysis, 4th International Symposium, SAS’97. Proceedings. 1997. pp. 98–113.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Shelekhov, V.I., Kuksenko, S.V. (2000). Data Flow Analysis of Java Programs in the Presence of Exceptions. In: Bjøner, D., Broy, M., Zamulin, A.V. (eds) Perspectives of System Informatics. PSI 1999. Lecture Notes in Computer Science, vol 1755. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46562-6_34
Download citation
DOI: https://doi.org/10.1007/3-540-46562-6_34
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67102-2
Online ISBN: 978-3-540-46562-1
eBook Packages: Springer Book Archive