Analysis of entities in C and C++ programs and relations between them for program understanding


Cite item

Full Text

Open Access Open Access
Restricted Access Access granted
Restricted Access Subscription Access

Abstract

A tool for the static analysis of programs that can detect entities in C and C++ programs, their metrics, and relations between them is considered. The program entities are files, functions, classes, methods, etc., and relations are calls, inheritance, read/write operations of global variables, file inclusion, and aggregation. Methods for the development of such a tool based on the open compiler infrastructure LLVM [1], including the necessary modifications in the Clang compiler [2], and the developed analyzer are described. Results of the tool testing on the Android code are presented.

About the authors

A. A. Belevantsev

Institute for System Programming; Moscow State University

Author for correspondence.
Email: abel@ispras.ru
Russian Federation, Moscow, 109004; Moscow, 119991

E. A. Veselevich

Institute for System Programming

Email: abel@ispras.ru
Russian Federation, Moscow, 109004

V. P. Ivannikov

Institute for System Programming; Moscow State University; Moscow Institute of Physics and Technology State University

Email: abel@ispras.ru
Russian Federation, Moscow, 109004; Moscow, 119991; Dolgoprudny, Moscow oblast, 141700

Supplementary files

Supplementary Files
Action
1. JATS XML

Copyright (c) 2016 Pleiades Publishing, Ltd.