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...
Gespeichert in:
Hauptverfasser: | , , , |
---|---|
Format: | Tagungsbericht |
Sprache: | eng |
Schlagworte: |
Social and professional topics
> Professional topics
> Management of computing and information systems
> Software management
> Software maintenance
Software and its engineering
> Software creation and management
> Software verification and validation
> Software defect analysis
> Software testing and debugging
|
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | 443 |
---|---|
container_issue | |
container_start_page | 433 |
container_title | |
container_volume | |
creator | Tonella, Paolo Antoniol, Giuliano Fiutem, Roberto Merlo, Ettore |
description | 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. |
doi_str_mv | 10.1145/253228.253371 |
format | Conference Proceeding |
fullrecord | <record><control><sourceid>proquest_6IE</sourceid><recordid>TN_cdi_ieee_primary_610312</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>610312</ieee_id><sourcerecordid>26514742</sourcerecordid><originalsourceid>FETCH-LOGICAL-a310t-fa226c62d7b3e330d9f79768b91570db3ad1bf705836e2c611cae8d77d9e6ca3</originalsourceid><addsrcrecordid>eNqFkL1PwzAQxS0-JKrSkYUpEwuk-OzYjkdUUUCqxFKxWk5yAUMSh9gF9b8nVZAYueWnd-_pTnqEXABdAmTilgnOWL4cwRUckRkIkafAmDgmC61ymmulQUPGTsiMMkVTwYQ6I4sQ3uk4mQAFekZe1o3_TlwXsAsuui9MVtfXSe9dF3EIie2qUTT71g_9mwvtuLDNPrjJcXFk3zeutNH5Lok-CaNw3es5Oa1tE3DxyznZru-3q8d08_zwtLrbpJYDjWltGZOlZJUqOHJOK10rrWReaBCKVgW3FRS1oiLnElkpAUqLeaVUpVGWls_J1XS2H_znDkM0rQslNo3t0O-CYVJApjI2Bi-noENE0w-utcPeSKAcDubNZNqyNYX3H8EANYeWzdSymVo2xeCw_nv6T5z_AJzEeCU</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>conference_proceeding</recordtype><pqid>26514742</pqid></control><display><type>conference_proceeding</type><title>Flow insensitive C++ pointers and polymorphism analysis and its application to slicing</title><source>IEEE Electronic Library (IEL) Conference Proceedings</source><creator>Tonella, Paolo ; Antoniol, Giuliano ; Fiutem, Roberto ; Merlo, Ettore</creator><creatorcontrib>Tonella, Paolo ; Antoniol, Giuliano ; Fiutem, Roberto ; Merlo, Ettore</creatorcontrib><description>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.</description><identifier>ISSN: 0270-5257</identifier><identifier>ISBN: 9780897919142</identifier><identifier>ISBN: 0897919149</identifier><identifier>EISSN: 1558-1225</identifier><identifier>DOI: 10.1145/253228.253371</identifier><language>eng</language><publisher>New York, NY, USA: ACM</publisher><subject>Application software ; Computer languages ; Debugging ; Permission ; Programming profession ; Reverse engineering ; Social and professional topics -- Professional topics -- Management of computing and information systems -- Software management -- Software maintenance ; Software and its engineering -- Software creation and management -- Software verification and validation -- Software defect analysis -- Software testing and debugging ; Software and its engineering -- Software notations and tools -- General programming languages -- Language types ; Software systems ; Software tools ; Testing ; User interfaces</subject><ispartof>Proceedings / International Conference on Software Engineering, 1997, p.433-443</ispartof><rights>1997 ACM</rights><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/610312$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>309,310,780,784,789,790,2058,27925,54920</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/610312$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc></links><search><creatorcontrib>Tonella, Paolo</creatorcontrib><creatorcontrib>Antoniol, Giuliano</creatorcontrib><creatorcontrib>Fiutem, Roberto</creatorcontrib><creatorcontrib>Merlo, Ettore</creatorcontrib><title>Flow insensitive C++ pointers and polymorphism analysis and its application to slicing</title><title>Proceedings / International Conference on Software Engineering</title><addtitle>ICSE</addtitle><description>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.</description><subject>Application software</subject><subject>Computer languages</subject><subject>Debugging</subject><subject>Permission</subject><subject>Programming profession</subject><subject>Reverse engineering</subject><subject>Social and professional topics -- Professional topics -- Management of computing and information systems -- Software management -- Software maintenance</subject><subject>Software and its engineering -- Software creation and management -- Software verification and validation -- Software defect analysis -- Software testing and debugging</subject><subject>Software and its engineering -- Software notations and tools -- General programming languages -- Language types</subject><subject>Software systems</subject><subject>Software tools</subject><subject>Testing</subject><subject>User interfaces</subject><issn>0270-5257</issn><issn>1558-1225</issn><isbn>9780897919142</isbn><isbn>0897919149</isbn><fulltext>true</fulltext><rsrctype>conference_proceeding</rsrctype><creationdate>1997</creationdate><recordtype>conference_proceeding</recordtype><sourceid>6IE</sourceid><sourceid>RIE</sourceid><recordid>eNqFkL1PwzAQxS0-JKrSkYUpEwuk-OzYjkdUUUCqxFKxWk5yAUMSh9gF9b8nVZAYueWnd-_pTnqEXABdAmTilgnOWL4cwRUckRkIkafAmDgmC61ymmulQUPGTsiMMkVTwYQ6I4sQ3uk4mQAFekZe1o3_TlwXsAsuui9MVtfXSe9dF3EIie2qUTT71g_9mwvtuLDNPrjJcXFk3zeutNH5Lok-CaNw3es5Oa1tE3DxyznZru-3q8d08_zwtLrbpJYDjWltGZOlZJUqOHJOK10rrWReaBCKVgW3FRS1oiLnElkpAUqLeaVUpVGWls_J1XS2H_znDkM0rQslNo3t0O-CYVJApjI2Bi-noENE0w-utcPeSKAcDubNZNqyNYX3H8EANYeWzdSymVo2xeCw_nv6T5z_AJzEeCU</recordid><startdate>19970101</startdate><enddate>19970101</enddate><creator>Tonella, Paolo</creator><creator>Antoniol, Giuliano</creator><creator>Fiutem, Roberto</creator><creator>Merlo, Ettore</creator><general>ACM</general><general>IEEE</general><scope>6IE</scope><scope>6IL</scope><scope>CBEJK</scope><scope>RIE</scope><scope>RIL</scope><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>19970101</creationdate><title>Flow insensitive C++ pointers and polymorphism analysis and its application to slicing</title><author>Tonella, Paolo ; Antoniol, Giuliano ; Fiutem, Roberto ; Merlo, Ettore</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-a310t-fa226c62d7b3e330d9f79768b91570db3ad1bf705836e2c611cae8d77d9e6ca3</frbrgroupid><rsrctype>conference_proceedings</rsrctype><prefilter>conference_proceedings</prefilter><language>eng</language><creationdate>1997</creationdate><topic>Application software</topic><topic>Computer languages</topic><topic>Debugging</topic><topic>Permission</topic><topic>Programming profession</topic><topic>Reverse engineering</topic><topic>Social and professional topics -- Professional topics -- Management of computing and information systems -- Software management -- Software maintenance</topic><topic>Software and its engineering -- Software creation and management -- Software verification and validation -- Software defect analysis -- Software testing and debugging</topic><topic>Software and its engineering -- Software notations and tools -- General programming languages -- Language types</topic><topic>Software systems</topic><topic>Software tools</topic><topic>Testing</topic><topic>User interfaces</topic><toplevel>online_resources</toplevel><creatorcontrib>Tonella, Paolo</creatorcontrib><creatorcontrib>Antoniol, Giuliano</creatorcontrib><creatorcontrib>Fiutem, Roberto</creatorcontrib><creatorcontrib>Merlo, Ettore</creatorcontrib><collection>IEEE Electronic Library (IEL) Conference Proceedings</collection><collection>IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume</collection><collection>IEEE Xplore All Conference Proceedings</collection><collection>IEEE Electronic Library (IEL)</collection><collection>IEEE Proceedings Order Plans (POP All) 1998-Present</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Tonella, Paolo</au><au>Antoniol, Giuliano</au><au>Fiutem, Roberto</au><au>Merlo, Ettore</au><format>book</format><genre>proceeding</genre><ristype>CONF</ristype><atitle>Flow insensitive C++ pointers and polymorphism analysis and its application to slicing</atitle><btitle>Proceedings / International Conference on Software Engineering</btitle><stitle>ICSE</stitle><date>1997-01-01</date><risdate>1997</risdate><spage>433</spage><epage>443</epage><pages>433-443</pages><issn>0270-5257</issn><eissn>1558-1225</eissn><isbn>9780897919142</isbn><isbn>0897919149</isbn><abstract>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.</abstract><cop>New York, NY, USA</cop><pub>ACM</pub><doi>10.1145/253228.253371</doi><tpages>11</tpages><oa>free_for_read</oa></addata></record> |
fulltext | fulltext_linktorsrc |
identifier | ISSN: 0270-5257 |
ispartof | Proceedings / International Conference on Software Engineering, 1997, p.433-443 |
issn | 0270-5257 1558-1225 |
language | eng |
recordid | cdi_ieee_primary_610312 |
source | IEEE Electronic Library (IEL) Conference Proceedings |
subjects | Application software Computer languages Debugging Permission Programming profession Reverse engineering Social and professional topics -- Professional topics -- Management of computing and information systems -- Software management -- Software maintenance Software and its engineering -- Software creation and management -- Software verification and validation -- Software defect analysis -- Software testing and debugging Software and its engineering -- Software notations and tools -- General programming languages -- Language types Software systems Software tools Testing User interfaces |
title | Flow insensitive C++ pointers and polymorphism analysis and its application to slicing |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-02T06%3A13%3A49IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_6IE&rft_val_fmt=info:ofi/fmt:kev:mtx:book&rft.genre=proceeding&rft.atitle=Flow%20insensitive%20C++%20pointers%20and%20polymorphism%20analysis%20and%20its%20application%20to%20slicing&rft.btitle=Proceedings%20/%20International%20Conference%20on%20Software%20Engineering&rft.au=Tonella,%20Paolo&rft.date=1997-01-01&rft.spage=433&rft.epage=443&rft.pages=433-443&rft.issn=0270-5257&rft.eissn=1558-1225&rft.isbn=9780897919142&rft.isbn_list=0897919149&rft_id=info:doi/10.1145/253228.253371&rft_dat=%3Cproquest_6IE%3E26514742%3C/proquest_6IE%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=26514742&rft_id=info:pmid/&rft_ieee_id=610312&rfr_iscdi=true |