C++ is one of the most widely used programming languages in practice, including for embedded critical software. Thus, it becomes interesting to apply formal methods to programs written in C++. To this end, it is necessary to rely on a formal semantics of C++. Moreover, such a formal semantics can be validated as a basis to the specification and proof of a verified realistic compiler for C++ to gain confidence in the implementation techniques of mainstream C++ compilers. In this thesis, we focus on the C++ object model. We formally specify C++ multiple inheritance with C-style embedded structures, leading us to study the concrete representation of objects with empty base optimizations. We propose a set of sufficient layout conditions, and we...
This thesis is about object-oriented languages in multiple inheritance and static typing executed by...
We present a resource-management model for ML-style programming languages, designed to be compatible...
The work described in this report was motivated by a desire to understand the implementation of inhe...
C++ is one of the most widely used programming languages in practice, including for embedded critica...
Nous proposons une sémantique formelle de l'héritage multiple en C++ comprenant les structures imbri...
International audienceWe present a formal operational semantics and its Coq mechanization for the C+...
We present a formal operational semantics and its Coq mechaniza-tion for the C++ object model, featu...
International audienceObject layout - the concrete in-memory representation of objects - raises many...
We present an operational semantics and type safety proof for multiple inheritance in C++. The seman...
Inheritance together with virtual functions in C++ provides programmers much polymorphism, an import...
Design patterns are distilled from many real systems to catalog common programming practice. We have...
Software Engineering progresses as improvements are made in languages and methodologies. Significant...
This thesis presents an extension of the CompCert compiler that aims at providing formal guarantees ...
C++ is a multi-paradigm language. The two main paradigms in C++ are object-oriented programming and ...
The C++ type system provides a programmer with modular class features and inheritance capabilities. ...
This thesis is about object-oriented languages in multiple inheritance and static typing executed by...
We present a resource-management model for ML-style programming languages, designed to be compatible...
The work described in this report was motivated by a desire to understand the implementation of inhe...
C++ is one of the most widely used programming languages in practice, including for embedded critica...
Nous proposons une sémantique formelle de l'héritage multiple en C++ comprenant les structures imbri...
International audienceWe present a formal operational semantics and its Coq mechanization for the C+...
We present a formal operational semantics and its Coq mechaniza-tion for the C++ object model, featu...
International audienceObject layout - the concrete in-memory representation of objects - raises many...
We present an operational semantics and type safety proof for multiple inheritance in C++. The seman...
Inheritance together with virtual functions in C++ provides programmers much polymorphism, an import...
Design patterns are distilled from many real systems to catalog common programming practice. We have...
Software Engineering progresses as improvements are made in languages and methodologies. Significant...
This thesis presents an extension of the CompCert compiler that aims at providing formal guarantees ...
C++ is a multi-paradigm language. The two main paradigms in C++ are object-oriented programming and ...
The C++ type system provides a programmer with modular class features and inheritance capabilities. ...
This thesis is about object-oriented languages in multiple inheritance and static typing executed by...
We present a resource-management model for ML-style programming languages, designed to be compatible...
The work described in this report was motivated by a desire to understand the implementation of inhe...