[Development] GCC 16 libstdc++ C++20 ABI break affects Qt C++17 builds, too

Ville Voutilainen ville.voutilainen at gmail.com
Thu Jan 22 09:13:08 CET 2026


On Wed, 21 Jan 2026 at 00:21, Thiago Macieira <thiago.macieira at intel.com> wrote:

> When we first talked about C++20, the GCC devs (Ville in particular) were very
> clear that they were not yet committing to an ABI. The next time we discussed
> std::format, they repeated their position that we should not depend on the C+
> +20 ABI yet.

Right. It's not any preference of mine or anything like that, it's the
official policy of mostly Mr. Wakely
that experimental features are not ABI-stable. And that makes perfect
sense, experimental
features can be improved and fixed even if such changes require ABI
changes. We would do
and we have done the exact same thing.

Which is why we perhaps shouldn't rush into baking them either into
our APIs or ABIs. :)

> And we haven't. That's why we introduced Qt::partial_ordering.
>
> In other words, we've already done the right thing to shield us from the
> breakage.
>
> We were incomplete, in that we were doing std::bit_cast based on the stdlib
> vendor, instead of an if constexpr of the right values. That's what my patch
> fixes.

I'll let other people find their acceptance for that for a day or two
and will then +2 that patch. :)


More information about the Development mailing list