Flow insensitive C++ pointers and polymorphism analysis and its application to slicing

Large software systems are difficult to understand and maintain. Code analysis tools can provide programmers with different views of the software which may help their understanding activity. To be applicable to real programs written in modern programming languages, these tools need to efficiently ha...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Tonella, Paolo, Antoniol, Giuliano, Fiutem, Roberto, Merlo, Ettore
Format: Tagungsbericht
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Large software systems are difficult to understand and maintain. Code analysis tools can provide programmers with different views of the software which may help their understanding activity. To be applicable to real programs written in modern programming languages, these tools need to efficiently handle pointers. In the case of C++ analysis, object oriented peculiarities (like, e.g., polymorphism) have to be accounted for as well. We propose a flow insensitive, context insensitive points-to analysis capable of dealing with the features of the object oriented code. It is extremely promising because of the positive trade-off between complexity and accuracy. The integration of the points-to results with other analyses, such as reaching definitions and slicing, is also discussed in the context of our program understanding environment.
ISSN:0270-5257
1558-1225
DOI:10.1145/253228.253371