[Development] Switching Qt default builds to C++20 where supported
Mathias Hasselmann
mathias at taschenorakel.de
Mon Oct 14 20:46:17 CEST 2024
The QtCS24 misses the single one big reason you want to switch C++20 now
and whenever possible: Concepts.
They indeed are a total game changer and I'd boldy predict that 80% of
all meta-programming helpers in Qt's headers could be replaced by
concepts that are easier to understand, more expressive, more complete.
You simply do not like C++ if you are not eager to use concepts.
End of the advertisement block.
Mathias
Am 14.10.2024 um 16:56 schrieb Vladimir Minenko via Development:
>> 6) when should we do this?
>> The last time we discussed C++20, it was made clear that we can only
>> do such
>> changes on LTS+1 releases. That's 6.9.
>
> The last time we discussed this was at QtCS24
> (https://wiki.qt.io/QtCS2024_C%2B%2B20), where IIRC the conclusion was
> that ATM, there is no reason to switch to C++20. So, it is definitely
> not in 6.9.
>
>> Effectively, I don't see much difference from the current situation,
>> where we "pretend" that we require C++17 but in reality we just check
>> that we can pass `-std=c++17` to the compiler. Any usage in Qt code
>> of individual language/library features still requires protection,
>> because they're not universally implemented.
>
> And because of this, I once asked to set up a nightly build with
> forced `-std=c++17`, e.g.
> https://testresults.qt.io/coin/integration/qt/qtbase/tasks/nightly1728750903.
> We already had two cases when C++20-specific code was merged and the
> build failed only because of this. There is a notification email set
> on failures for this build. There are only people from The Qt Company
> so far on it. If someone else is interested, I would gladly change
> this and include other people ;-)
>
> --
> Vladimir
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20241014/58c1e2e1/attachment-0001.htm>
More information about the Development
mailing list