A years-long effort led by Kayvan Memarian and Peter Sewell from Cambridge University, UK, Martin Uecker from Graz University of Technology, Austria, and myself (from ICube/Inria, France) has guide…| Jens Gustedt's Blog
Martin Uecker has started a new initiative to ensure a better const contract for C2y: change the type of string literals to a const-qualified base type, much as it is already the case in C++. Compi…| Jens Gustedt's Blog
This week on the C committee mailing list we had a discussion about how C’s types are organized into different categories. At the end I came up with a diagram with that organization. It basic…| Jens Gustedt's Blog
C++ seems to finally converge with their contracts proposal, I decided to give it a try and come up with ideas how such a thing would look for C. This is in early stages, not a full proposal yet, a…| Jens Gustedt's Blog
The new revision of eĿlipsis (20250219) has a lot of cleanups, bugfixes etc, but one thing I’d like to emphasize is a new feature that I’d call meta-quotes in lack for a better idea of …| Jens Gustedt's Blog
With this post I will concentrate on the here and now: how to use C’s future lifesaving defer feature with existing tools and compilers.| Jens Gustedt's Blog
The C23 edition of Modern C is now available for free download from And as before a dedicated page for the book may be found at where you also may find a link to download the code examples that com…| Jens Gustedt's Blog
I already talked about a proposal for an extension of the C language calleddefer, that is prospected to either be published in a technicalspecification or the next revision, C2Y, of the C standard: EĿlipsis now implements a simple form of this feature by mixing some specific preprocessor extensions (in particular counters) with the usual macro … Continue reading "Braiding the spaghetti: implementing defer in the preprocessor"| Jens Gustedt's Blog
In view of the addition of __VA_OPT__ first to C++ and now to C23, there had been interest in extending the C preprocessor to include recursion. The basic idea would be that __VA_OPT__ can be used …| Jens Gustedt's Blog
EĿlipsis is an extension and continuation of the C preprocessor with theaim to be useful for other technical languages, be they programminglanguages or text processing languages. There were several…| Jens Gustedt's Blog
Manning’s early access program (MEAP) for the new edition is now openat There is a special code mlgustedt2 to get 45% off of the official price. This is currently limited until Jan 31. The pr…| Jens Gustedt's Blog