<div style="font-family: arial, helvetica, sans-serif"><font size="2"><div class="gmail_quote">On Tue, Jun 19, 2012 at 12:31 PM, Jay Foad <span dir="ltr"><<a href="mailto:jay.foad@gmail.com" target="_blank">jay.foad@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 19 June 2012 18:56, Chandler Carruth <<a href="mailto:chandlerc@google.com">chandlerc@google.com</a>> wrote:<br>

> When we're designing warnings that try to catch bugs, we need to focus on<br>
> getting the warning into a state that is easier to explain and cope with for<br>
> our users. For example:<br>
><br>
> 1) A warning that is *always* a bug in the code is easy: the user can't<br>
> really complain, their code is simply wrong.<br>
> 2) A warning that directs innocent users to some alternate syntax which hase<br>
> equivalent semantics but is more explicit / clear / less bug-prone.<br>
<br>
</div>Fair point. I agree with the general principle that the compiler<br>
shouldn't warn when there's no better way to express what you really<br>
want; and if I really want<br>
<br>
  static int a[1000000] = { 1, 2, /* all the rest 0 */ };<br>
<br>
then there's no better way of writing it.<br>
<div class="im"><br>
> Also, this seems really like a coding convention or style you would like to enforce, and so I suspect a separate tool would be better suited to it.<br>
<br>
</div>Yup. I'd love a general purpose scriptable tool for doing this kind of<br>
thing. Maybe it's time I looked at Coccinelle...</blockquote><div><br></div><div>Have you looked at the Tooling stuff Manuel and others are building up? It is specifically targeting these use cases.</div><div><br></div>
<div><a href="http://clang.llvm.org/docs/LibTooling.html">http://clang.llvm.org/docs/LibTooling.html</a> </div></div></font></div>