<table><tr><td style="">aaronpuchert created this revision.<br />aaronpuchert added a reviewer: KDevelop.<br />Herald added a project: KDevelop.<br />aaronpuchert requested review of this revision.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D15694">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>With -Wimplicit-fallthrough the compiler warns about unannotated<br />
fallthroughs in switch statements. Since it is supported by both GCC and<br />
Clang, and can easily be fixed by adding Q_FALLTHROUGH() we enable it as<br />
error.</p>

<p>As a consequence, we don't need to add redundant break statements as<br />
safety measure. So we also warn about that, but not as error, especially<br />
since it's only supported on Clang. (As far as I know.)</p>

<p>Some of the fallthroughs are suspicious to me, maybe there is actually<br />
an error.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R32 KDevelop</div></div></div><br /><div><strong>BRANCH</strong><div><div>cleanup-switch-statements</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D15694">https://phabricator.kde.org/D15694</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>CMakeLists.txt<br />
kdevplatform/language/codecompletion/normaldeclarationcompletionitem.cpp<br />
kdevplatform/language/duchain/navigation/abstractnavigationcontext.cpp<br />
kdevplatform/language/duchain/stringhelpers.cpp<br />
kdevplatform/outputview/outputmodel.cpp<br />
kdevplatform/project/projectbuildsetmodel.cpp<br />
kdevplatform/shell/sessionlock.cpp<br />
kdevplatform/vcs/vcsrevision.cpp<br />
plugins/clang/duchain/clangdiagnosticevaluator.cpp<br />
plugins/clang/duchain/clangproblem.cpp<br />
plugins/custom-definesandincludes/kcm_widget/projectpathsmodel.cpp<br />
plugins/ghprovider/ghproviderwidget.cpp<br />
plugins/makebuilder/makejob.cpp<br />
plugins/perforce/perforceplugin.cpp<br />
plugins/qmljs/codecompletion/context.cpp</div></div></div><br /><div><strong>To: </strong>aaronpuchert, KDevelop<br /><strong>Cc: </strong>kdevelop-devel, glebaccon, antismap, iodelay, vbspam, geetamc, Pilzschaf, akshaydeo, surgenight, arrowd<br /></div>