To C++11 or not?
Martin Gräßlin
mgraesslin at kde.org
Mon Nov 14 09:45:07 UTC 2016
Hi framework devs,
recently we started to see the first patches for frameworks to silence
warnings for not used features of C++11. In particular to add override
to methods of inheriting classes.
Now I find this weird from the perspective of our C++ requirements. On
the one side we say that we are not allowed to use these features to
still support non-C++11 compilers on the other side we see that
compilers already generate warnings if you don't use the C++11 features.
In that particular case I do not think that Q_DECL_OVERRIDE is a
solution. It's an ugly hack and for the frameworks I maintain I gave a
-2 on the review. I think this needs a general solution of either not
adding or adding override, but not the Qt hack.
I think this is a sign that we need to move on. We cannot continue with
the state we are in. It's too much a hassle for developers:
* false-positive compile warnings
* no way to check which features are allowed or not
* no warnings if a not allowed feature is used
* no CI system in place to ensure our rules
Given that I want to suggest that we remove all compiler restrictions
and allow the full feature set of C++11. If someone still thinks we need
to support the compilers not supporting C++11, I would like to see a
plan on how we can improve the developer story, especially how to
address the last two points in my list above.
Opinions?
Cheers
Martin
More information about the Kde-frameworks-devel
mailing list