Re: increasing CXX_STANDARD for kdevelop

Milian Wolff <[email protected]> Wed, 14 Oct 2020 11:28:17 +0200
Newsgroups gmane.comp.kde.devel.kdevelop
Message-ID <44520419.iPWNRfbLsO@milian-workstation>
On Mittwoch, 14. Oktober 2020 06:57:15 CEST Igor Kushnir wrote:
> On 2020-10-13 23:36, Milian Wolff wrote:
> > Hey all,
> > 
> > I'd like to increase the CXX_STANDARD for kdevelop, seems like we are
> > still
> > compiling with `-std=gnu++11`. Any objections to raise this to
> > `-std=c++14`?
> > 
> > And, actually, while at it - I would personally even prefer to jump
> > straight ahead to `-std=c++17`. Any objections to that?
> > 
> > I rarely have time for KDevelop, but whenever I do take the time I'm put
> > off by the (imo) archaic C++ support we have :) C++17 is a lot of fun,
> > esp. with `if constexpr` and some other utilites.
> > 
> > Cheers
> 
> Hi Milian,
> 
> I'd love that change too. Never had a chance to practice C++17 yet. I
> can see two downsides though:
> 
> 1. If the KDE Frameworks and the majority of KDE applications are mostly
> tested with C++11 (not sure about that), then there might be
> compatibility issues and bugs exposed by switching KDevelop to a
> different C++ standard.

From personal experience, I would say this is a non-issue. The ABI is 
independent of the compiler version being used e.g.

> 2. Some of the compilers KDevelop aims to support may not support C++17
> perfectly. We'll need to specify which versions of which compilers
> should be able to build KDevelop, then use standard feature support
> tables like this -
> https://en.cppreference.com/w/cpp/compiler_support#cpp17 - whenever we
> try out a new feature.

Right, does anyone know a table of compiler versions as shipped with the major 
distributions? I seem to remember I once saw something like that.

At work we already use C++17 since a while and it works on somewhat recent 
macOS, Windows and Linux distros. 

I'll ask on the distro mailing list and get back here.

Cheers

-- 
Milian Wolff
[email protected]
http://milianw.de
signature.asc (application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEezawi1aUvUGg3A1+8zYW/HGdOX8FAl+GxLEACgkQ8zYW/HGd
OX+2WBAAtx852zaKlYWZ0i0E70hZpQzWICSR73Lt4lEJPdp6vlVfnDi5fgjbo3TK
+GiPL/TZUT0wkIwTU/hIKmUho4F3PTM//sRV/47RWtEQ2NUn+E9txxk2N1USEpyW
Wi03RZktp/qZGvXeM/ytTBaNnr5FYh1flxkqdJ6p4NNHCFGSW0PtA58cEh8KOO0b
ns/eWFD9ynYtpWEgQY+/2UMeqXYOIJgv3AIAXNJ3riPw83foze+feikW9KOrLubM
OPRJeEQtVMLY87px6yLW3cg81TblvwpTYYks1baPN+7TVoMeqW/cLtGOJusRoer1
9S6VGZnYIdN3I4rXX3zbEsSwIbWUEoOG/bQ+jgsWbkxWuCW8LIj232ZH+FsEIzoG
4WIlX9Durpp+Q44y1iB3c9Yx/NeBsgMNPfxnVZMRqijWm1DhBDMClkClj2julkK7
Mj4lNeUyLNOcj+ww7ISmShBA1ABzWO3BS1icEorNVHN9371VlrCrZJegM0+9OBSn
XWnE3NDSvQC7iAnh/xgnFCjjT79NYtKa4VixoP2VPwEtA6MJkA964dlzcFmO98fT
6/BZGkBwaKefnKCG9kgFqSz5t5/h6j8z4bjpFuxCBvbCwY/YgUYm3eweKJBiMZri
dldW3WxeinDkS1x0LYnGpmu/IS1v9R5gZbq44m8GkFtEc0TRMB4=
=7jbf
-----END PGP SIGNATURE-----