El dimarts, 25 de novembre del 2025, a les 10:46:03 (Hora estàndard d’Europa 
central), Nicolas Fella va escriure:
> Am 25.11.25 um 10:21 schrieb Albert Astals Cid:
> > El dimarts, 25 de novembre del 2025, a les 1:35:03 (Hora estàndard
> > d’Europa
> > 
> > central), Michael Pyne va escriure:
> >> On 11/24/25 3:58 PM, Neal Gompa wrote:
> >>> On Mon, Nov 24, 2025 at 3:54 PM Albert Astals Cid<[email protected]> wrote:
> >>>> https://community.kde.org/Frameworks/Policies#Frameworks_compiler_requi
> >>>> re
> >>>> ments_and_Modern_C++
> >>>> 
> >>>> It is wildly outdated, so I would suggest to remove it.
> >>>> 
> >>>> Or does someone have a suggested way to update it?
> >>> 
> >>> As far as I know, starting from 6.0, we require a C++20 capable
> >>> compiler. That means at least GCC 12, Clang 14, or MSVC 2022 I
> >>> believe.
> 
> We did say we _want_ C++20. What specific compiler versions this
> translates to is rather fuzzy since different compiler versions
> implements different subsets of C++20 (e.g. for the longest time
> "nobody" usefully implemented modules). Because of that I don't think we
> ever settled on specific versions.
> 
> >> I think there is value in having the policy for allowable C++ standards
> >> and/or compilers written down in some easily-accessible form.  Perhaps a
> >> bit more future-proofed so it doesn't get wildly outdated again.  I've
> >> been able to find references to requiring C++20-supporting compilers for
> >> KF6 starting from 6.0.
> > 
> > The problem is, what is the value of a policy if we do not check/enforce
> > it?
> > 
> > Right now the only thing we can say is "it builds with whatever compilers
> > we have in CI".
> 
> Even if we don't enforce it by CI there is still value to it. If
> somebody comes around and points out that we broke compilation on
> "reasonably recent platform" that's going to be a different conversation
> than if it's Ubuntu 14.04.

Ok, fair enough, what about something like

A) KDE Frameworks can use features of the previous to latest C++ standard, at 
the time of writing (November 2025) that means C++20.

B) KDE Frameworks shall compile with the major compilers: gcc, clang and 
msvc(for Frameworks that claim Windows support)

C) KDE Frameworks shall compile with "reasonably old" versions of the 
compilers that claim to support the C++ standard mentioned in point "A"

Cheers,
  Albert

> 
> > Cheers,
> > 
> >    Albert
> >> 
> >> Are there any other relevant policies that apply to KF6 for C++ support
> >> and/or compiler support? Assuming not, I'd propose that the page be
> >> updated to note that KDE Frameworks require a C++20-compatible compiler,
> >> and that the compiler must also be supported by the minimum required Qt
> >> version as listed in the prior section.
> >> 
> >> If it were not for Qt supporting as far back as GCC 9 (for openSUSE) we
> >> might simply be able to require the same compiler Qt requires.  But it's
> >> not until GCC 12 you get nearly full support for C++20 (and even 12
> >> still misses parts of C++ modules support), so it's probably still worth
> >> mentioning we require a C++20-capable compiler.
> >> 
> >> I'll volunteer to update the page if that works, something along the
> >> lines of KF6 requires a C++ compiler that is compliant with at least
> >> C++20 and supported by the oldest supported Qt 6 minor release.
> >> 
> >> Regards,
> >> 
> >>    - Michael Pyne




Reply via email to