v2 of that specification just appeared on the C comittee website:
A Common C/C++ Core Specification rev 2
For an introduction to the originial version see “A common C/C++ core specification”
Most important additions in this revision are
- three-way comparison (spaceship operator)
- “initializer” construct for captures of lambdas
- a tool for textual representation of all basic types and arrays, totext
- more attributes: core::free , core::realloc, core::noleak,
core::writethrough, core::concurrent - constexpr
- if with variable definitions
and some more cleanups and harmonizations between C and C++.
This is pretty interesting. We’ve been working on formalizing C++ for the purpose of doing program verification. I couldn’t find anything in the document about the memory model. Do you know of any work on the memory model of C++? A core memory model would really be a great thing.
There is nothing in particular that I am aware off, but my knowledge about C++ and their model for improvements is still only rudimentary. In the C memory model study group we are actively working with people from the C++ side to make things consistent between the two languages.
Thanks. Is the study group public? Are there people that you could put me in touch with, especially people from the C++ side of things? We’ve been getting much deeper into this lately, but we’re probably still only scratching the surface in our current examples.