A mechanized semantics for C++ object construction and destruction, with applications to resource management

Author:

Ramananandro Tahina1,Dos Reis Gabriel2,Leroy Xavier1

Affiliation:

1. INRIA Paris-Rocquencourt, Le Chesnay, France

2. Texas A&M University, College Station, TX, USA

Abstract

We present a formal operational semantics and its Coq mechanization for the C++ object model, featuring object construction and destruction, shared and repeated multiple inheritance, and virtual function call dispatch. These are key C++ language features for high-level system programming, in particular for predictable and reliable resource management. This paper is the first to present a formal mechanized account of the metatheory of construction and destruction in C++, and applications to popular programming techniques such as "resource acquisition is initialization". We also report on irregularities and apparent contradictions in the ISO C++03 and C++11 standards.

Publisher

Association for Computing Machinery (ACM)

Subject

Computer Graphics and Computer-Aided Design,Software

Reference16 articles.

1. The Coq proof assistant 1999--2012. URL http://coq.inria.fr. The Coq proof assistant 1999--2012. URL http://coq.inria.fr.

2. Establishing object invariants with delayed types

3. Lecture Notes in Computer Science;Hubert L.,2010

Cited by 6 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. Verifying C++ Dynamic Binding;Proceedings of the 25th ACM International Workshop on Formal Techniques for Java-like Programs;2023-07-18

2. Verification of the ROS NavFn planner using executable specification languages;Journal of Logical and Algebraic Methods in Programming;2023-04

3. SafeDrop: Detecting Memory Deallocation Bugs of Rust Programs via Static Data-Flow Analysis;ACM Transactions on Software Engineering and Methodology;2022-06-21

4. Memory-Safety Challenge Considered Solved? An In-Depth Study with All Rust CVEs;ACM Transactions on Software Engineering and Methodology;2022-01-31

5. Rethink Scalable M:N Threading on Modern Operating Systems;Journal of Computers;2016-05

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3