Hacker News Viewer

C++26 is done ISO C++ standards meeting, Trip Report

by pjmlp on 3/29/2026, 5:46:12 PM

https://herbsutter.com/2026/03/29/c26-is-done-trip-report-march-2026-iso-c-standards-meeting-london-croydon-uk/

Comments

by: chrisaycock

std::execution is very interesting, but will be difficult to get started with, as cautioned by Sutter. This HPC Wire article demonstrates how to use standard C++ to benefit from asynchronously parallel computation on both CUDA and MPI:<p><a href="https:&#x2F;&#x2F;www.hpcwire.com&#x2F;2022&#x2F;12&#x2F;05&#x2F;new-c-sender-library-enables-portable-asynchrony&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.hpcwire.com&#x2F;2022&#x2F;12&#x2F;05&#x2F;new-c-sender-library-enab...</a><p>Overlapping communication and computation has been a common technique for decades in high-performance computing to &quot;hide latency&quot;, which leads to better scaling. Now standard C++ can be used to express parallel algorithms without tying to a specific scheduler.

3/29/2026, 8:35:21 PM


by: suby

I am somewhat dismayed that contracts were accepted. It feels like piling on ever more complexity to a language which has already surpassed its complexity budget, and given that the feature comes with its own set of footguns I&#x27;m not sure that it is justified.<p>Here&#x27;s a quote from Bjarne,<p>&gt; So go back about one year, and we could vote about it before it got into the standard, and some of us voted no. Now we have a much harder problem. This is part of the standard proposal. Do we vote against the standard because there is a feature we think is bad? Because I think this one is bad. And that is a much harder problem. People vote yes because they think: &quot;Oh we are getting a lot of good things out of this.&quot;, and they are right. We are also getting a lot of complexity and a lot of bad things. And this proposal, in my opinion is bloated committee design and also incomplete.

3/29/2026, 7:00:34 PM


by: ill_ion

Contracts feel like the right direction but the wrong execution timeline. The Ada&#x2F;SPARK model shows how powerful contracts become when they feed into static verification — but that took decades of iteration on a language with far cleaner semantics. Bolting that onto C++ where UB is load-bearing infrastructure is a different beast entirely. The real risk isn&#x27;t complexity for complexity&#x27;s sake — it&#x27;s that a &quot;minimum viable&quot; contracts spec gets locked in, and then the things that would actually make it useful for proof assistants become impossible to retrofit because they&#x27;d break the v1 semantics. Bjarne&#x27;s concern about &quot;incomplete&quot; is more worrying to me than &quot;bloated.&quot;

3/29/2026, 8:26:15 PM


by: jcalvinowens

The &quot;erroneous behavior&quot; redefinition for reads of uninitialized variables is really interesting: <a href="https:&#x2F;&#x2F;www.open-std.org&#x2F;jtc1&#x2F;sc22&#x2F;wg21&#x2F;docs&#x2F;papers&#x2F;2024&#x2F;p2795r5.html" rel="nofollow">https:&#x2F;&#x2F;www.open-std.org&#x2F;jtc1&#x2F;sc22&#x2F;wg21&#x2F;docs&#x2F;papers&#x2F;2024&#x2F;p27...</a><p>It does have a runtime cost. There&#x27;s an attribute to force undefined behavior on read again and avoid the cost:<p><pre><code> int x [[indeterminate]]; std::cin &gt;&gt; x;</code></pre>

3/29/2026, 8:26:09 PM


by: dataflow

&gt; Second, conforming compiler and standard library implementations are coming quickly. Throughout the development of C++26, at any given point both GCC and Clang had already implemented two-thirds of C++26 features. Today, GCC already has reflection and contracts merged in trunk, awaiting release.<p>How far is Clang on reflection and contracts?

3/29/2026, 7:55:36 PM


by: LatencyKills

This is awesome. I&#x27;ve was a dev on the C++ team at MS in the 90s and was sure that RTTI was the closest the language would ever get to having a true reflection system.

3/29/2026, 6:29:08 PM


by: mohamedkoubaa

Biggest open question is whether the small changes to the module system in this standard will actually lead to more widespread adoption

3/29/2026, 6:27:35 PM


by: AyanamiKaine

I am actually excited for post and pre conditions. I think they are an underused feature in most languages.

3/29/2026, 8:01:20 PM


by: affenape

Finally, reflection has arrived, five years after I last touched a line in c++. I wonder how long would it take the committee, if ever, to introduce destructing move.

3/29/2026, 6:46:49 PM


by: porise

I don&#x27;t care until they stop pretending Unicode doesn&#x27;t exist.

3/29/2026, 7:22:22 PM


by: VerifiedReports

As long as programmers still have to deal with header files, all of this is lipstick on a pig.

3/29/2026, 7:59:14 PM


by: delduca

Sadly, transparent hash strings for unordered_map are out.

3/29/2026, 7:10:43 PM


by: levodelellis

Great. C++20 has been my favorite and I was wasn&#x27;t sure what the standards says since it&#x27;s been a while. I&#x27;ll be reading the C++26 standard soon

3/29/2026, 6:55:33 PM


by: rustyhancock

I look forwards to getting to make use of this in 2040!<p>Proper reflection is exciting.

3/29/2026, 6:33:26 PM


by: the__alchemist

Seeing that pic at the top of the article, and reflecting on my own experiences with rust: It is wild just how male-centric systems programming languages are. I&#x27;m from a career backround that&#x27;s traditionally male-dominated (military aviation), but the balance is far more skewed among C, C++ and Rust developers.

3/29/2026, 7:54:59 PM