On Wednesday 27 November 2024 06:51:23 Pacific Standard Time Volker Hilsheimer via Development wrote: > As per the comments to that change, it’s a) not going to fly and b) not the > choice a single person can make, even if that person is the maintainer of > Qt Core 🙂 > > A more pragmatic and scalable choice seems to be to not try to support > mixing C++ versions in a static build of Qt. I see no reason for doing > that, and explicitly disallowing that option would create clarity for > anyone trying to do so.
And as I reported there: I don't know if the problem is exclusive to static builds. The fact that dynamic builds have not complained is not sufficient reason to believe there is no ABI incompatibility. For example, we've had std::future<void> in our ABI since 5.10 and the inline code uses std::async. Someone (not me) must prove or disprove that dynamic builds are affected. And as I wrote there too, disallowing mixed C++ versions is probably going to create unbuildable solutions when third-party libraries are in the mix. Therefore, I don't think your solution will be acceptable. Instead, assuming that the issue only affects static builds, I propose we disable cpp-winrt for all static builds or for C++17 static builds. And make MSVC build with C++20 by default. -- Thiago Macieira - thiago.macieira (AT) intel.com Principal Engineer - Intel DCAI Platform & System Engineering
smime.p7s
Description: S/MIME cryptographic signature
-- Development mailing list Development@qt-project.org https://lists.qt-project.org/listinfo/development