针对常见的利用指针或引用的聚集实现方式,提出一种基于形态分析的一对多聚集关系的自动识别方法.首先,扩充Sagiv的三值逻辑结构中的谓词以描述链表上聚集管理操作的语义特征.然后,给出基于控制流上链表形态结构的变化识别聚集管理行为的方法.最后,通过开源软件JEdit中的实例分析展示了该方法的有效性.
In this paper,a shape-analysis based approach is proposed to automatically identify aggregations that are implemented using the commonly used implementation mechanism,pointers or references.First,this paper augments predicates of Sagiv's three-valued logical structure to describe the semantic constraints for the central aggregation management operations on linked lists.Then,this paper presents a method to identify the aggregation management behavior by analyzing the changes of shape structures for linked lists along control flow paths.Finally,the effectiveness of the proposed 1-n aggregation identification approach is proposed using a case study from the open-source software JEdit.