Noteworthy changes when porting to C++17

Milian Wolff mail at milianw.de
Sun Jul 18 20:53:17 BST 2021


On Sonntag, 18. Juli 2021 02:34:24 CEST Frederik Schwarzer wrote:
> Hi,
> 
> since we are increasing the C++ standard requirement from 11 to 17 with
> KF6 and there were a few deprecations/removals in between, I wonder if
> any of those are noteworthy for people developing applications based on
> KDE Frameworks.
> 
> What I mean by "noteworthy" is features that are commonly used or at
> least known to be used sometimes in our ecosystem. Things like the
> "register" keyword for example might not be found in high-level
> applications so pointing KDE developers to its removal might get you
> shrugs in return.
> 
> What I have seen is that std::mem_fun was used within KIO and has been
> replaced by std::mem_fn. Not sure if that counts as "commonly used", though.

Imo, usages of either of these two should be rewritten to use lambdas instead.

> Compiler vendors seem to be handling those removalss differently. The
> libstdc++ devs have not had deprecation warnings for at least some of
> the stuff that was deprecated in C++11, so they will not remove those
> any time soon. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91383#c1
> 
> In libc++, the deprecation warnings were shown since C++11 and now with
> C++17 they removed some stuff. On Linux you will have to build with the
> -stdlib=libc++ option for clang to notice. See e.g.
> https://godbolt.org/z/6Y1eE3z4P for playing with it.
> 
> But I digress ...
> 
> So the question is: did you notice things that have been removed from
> the C++ standard since C++11 that were used in our applications?


-- 
Milian Wolff
mail at milianw.de
http://milianw.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20210718/f191df20/attachment.sig>


More information about the Kde-frameworks-devel mailing list