中文

从低级指针到高级容器

编程语言 2015-10-28 v1

摘要

我们提出一种方法,将使用低级指针语句操纵容器的C程序转换为等价程序,其中容器通过调用标准高级容器操作如push_back或pop_front来操纵。我们方法的输入是一个用特殊形式形状不变式标注的C程序,该不变式可在稍作修改后从当前自动形状分析器获得。所得程序将低级指针语句概括为高级容器操作,更易理解且(除其他可能的好处外)更适于程序分析。我们已实现我们的方法并通过若干基于链表的容器实验成功测试,包括通过分离形状分析与数据相关属性分析来简化程序分析的实验。

关键词

引用

@article{arxiv.1510.07995,
  title  = {From Low-Level Pointers to High-Level Containers},
  author = {Kamil Dudka and Lukáš Holík and Petr Peringer and Marek Trtík and Tomáš Vojnar},
  journal= {arXiv preprint arXiv:1510.07995},
  year   = {2015}
}

备注

An extended version of a VMCAI'16 paper