<table><tr><td style="">rjvbb added a comment.
</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/D15532">View Revision</a></tr></table><br /><div><div><blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">Eventually we have to compile our code anyway, so aren't we all dependent on the compiler?</pre></div></blockquote>

<p>Not what I meant of course. I don't need the compiler to tell me where a break isn't needed; I prefer to remind myself of such things and that I'm putting it there anyway (because the compiler won't be able to tell me I really forgot to use one, not unless you make some kind of "no break here" statement obligatory). In a sense this really isn't that different from wondering why you need to add a closing brace after a return...<br />
Remember the old advice of always adding a default case to a switch, and putting a break in that one too (which isn't required either). I did notice the other day that kdevelop's build system now adds a flag that causes a compiler error when a switch statement is incomplete and/or lacks a default case.</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">I'm not sure why you're bringing Modula-2 into the discussion</pre></div></blockquote>

<p>Because it's a lot stricter than C++ and at the same time a whole lot simpler. Yet even that language (like Pascal) doesn't require to put a closing semicolon in the last position where it would be required; I always put them anyway (and had a colleague who loved removing them).</p>

<p>My attitude towards this sort of thing may depend on the fact that my native language is Dutch (which has a grammar that's basically defined by exceptions) but that's a discussion for another place and time :)</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">With KDevelop's nice integration of compiler warnings it usually doesn't hurt to turn on `-Weverything`. It helps me see a lot of issues that I'd probably overlook otherwise.</pre></div></blockquote>

<p>Honestly, I've seen better and the more warnings you get the less usable the contextual parser becomes because it can no longer display its information (all the more annoying if you need that information to correct an error). That contextual parser ("KIntelliSense" ^^) is among the main reasons that got me hooked on KDevelop btw.</p>

<p>I also still spend a lot of time coding in vi.</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">If you don't want your compiler to tell you what (not) to do, use a language that isn't compiled.</pre></div></blockquote>

<p>Not necessary, just use C O:-)</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R32 KDevelop</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D15532">https://phabricator.kde.org/D15532</a></div></div><br /><div><strong>To: </strong>rjvbb, KDevelop, kossebau, kfunk<br /><strong>Cc: </strong>aaronpuchert, kfunk, pino, kossebau, kdevelop-devel, glebaccon, antismap, iodelay, vbspam, geetamc, Pilzschaf, akshaydeo, surgenight, arrowd<br /></div>