【24h】

An operational semantics and type safety prooffor multiple inheritance in C++

机译:C ++中多重继承的操作语义和类型安全证明

获取原文
获取原文并翻译 | 示例

摘要

We present an operational semantics and type safety proof for multiple inheritance in C++. The semantics models the behaviour of method calls, field accesses, and two forms of casts in C++ class hierarchies exactly, and the type safety proof was formalized and machine-checked in Isabelle/HOL. Our semantics enables one, for the first time, to understand the behaviour of operations on C++ class hierarchies without referring to implementation-level artifacts such as virtual function tables. Moreover, it can - as the semantics is executable - act as a reference for compilers, and it can form the basis for more advanced correctness proofs of, e.g., automated program transformations. The paper presents the semantics and type safety proof, and a discussion of the many subtleties that we encountered in modeling the intricate multiple inheritance model of C++.
机译:我们提出了C ++中多重继承的操作语义和类型安全证明。语义精确地模拟了C ++类层次结构中的方法调用,字段访问和两种形式的强制转换的行为,并且类型安全性证明已形式化并在Isabelle / HOL中进行了机器检查。我们的语义使我们第一次可以理解C ++类层次结构上的操作行为,而无需引用诸如虚拟功能表之类的实现级构件。此外,由于语义是可执行的,因此它可以用作编译器的参考,并且可以为例如自动化程序转换的更高级的正确性证明奠定基础。本文介绍了语义和类型安全性证明,并讨论了我们在复杂的C ++多重继承模型建模中遇到的许多微妙之处。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号