<div dir="ltr">LLVM has a separate flag for making warnings errors, and I'm not proposing to change this settings default.<div><br></div><div>I'm satisfied with the fact that when submitted, a patch is expected to be free of warnings.</div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Jul 20, 2015 at 4:52 PM David Blaikie <<a href="mailto:dblaikie@gmail.com">dblaikie@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Jul 20, 2015 at 4:18 PM, Philip Reames <span dir="ltr"><<a href="mailto:listmail@philipreames.com" target="_blank">listmail@philipreames.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    I'd be very happy to see this turned on as a warning; I'd be very
    reluctant to see it turned on as a error.  During a lot of code
    cleanups, the intermediate state of "deleted, but dead args still
    passed in" is a very useful intermediate step.  It greatly
    simplifies review to be able to separate the meat of the semantic
    change from the "just deleting a bunch of dead args" patch.  I'd be
    very very reluctant to create a situation where the patch with the
    semantic change but without the argument cleanup won't pass all the
    build bots.  <br></div></blockquote></div></div></div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><br>Yep - I recall Chandler expressing similar consternation when he & I have discussed -Wunreachable-code so I was a bit surprised to see the suggestion.<br><br>But that said, in this case it doesn't seem too costly to comment out the name of the parameter in the first patch - it is an extra change, but doesn't require touching all the callers, etc. Then do the removal in a follow up patch still.<br> </div></div></div></div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div bgcolor="#FFFFFF" text="#000000">
    <br>
    Philip<br>
    <br>
    (1 inline comment below as well)<span><br>
    <br>
    <div>On 07/18/2015 02:48 AM, Chandler
      Carruth wrote:<br>
    </div>
    <blockquote type="cite">
      <div dir="ltr">LLVM and Clang both have lots of objects that are
        passed through many different API boundaries. Things like
        AliasAnalysis in LLVM or Sema in Clang get threaded all over the
        place.
        <div><br>
        </div>
        <div>Over times, refactoring can often cause the parameters (or
          local variables, or member variables, etc) to become dead. If
          we notice this, we can often un-thread the interface through
          our APIs, sometimes even reducing coupling, etc.</div>
        <div><br>
        </div>
        <div>But currently -Wunused-parameter is hard disabled. I've not
          checked to see if there are any other disabling of -Wunused-*
          variants, but I'd like to move the project toward firmly
          enabling them and being clean with them.</div>
        <div><br>
        </div>
        <div>The technique I'd like to use is leaving out names of
          unused parameters, using a /*CommentedName*/ if there is a
          useful name, otherwise just omitting the name.</div>
      </div>
    </blockquote></span>
    Sorry, could you rephrase?  Not sure what you're getting at here.<br>
    <blockquote type="cite"><span>
      <div dir="ltr">
        <div><br>
        </div>
        <div>All of this will require a reasonable amount of cleanup
          across the projects which I'm happy to do prior to flipping
          defaults around. Thoughts? Any concerns or objections?</div>
        <div><br>
        </div>
        <div>(I'll ask the same question and ofter to either enact the
          cleanups or toggle the warning(s) back off for each of the
          less intertwined subprojects like LLD, LLDB, Polly, etc.)</div>
        <div><br>
        </div>
        <div>-Chandler</div>
      </div>
      <br>
      <fieldset></fieldset>
      <br>
      </span><pre><span>_______________________________________________
LLVM Developers mailing list
</span><a href="mailto:LLVMdev@cs.uiuc.edu" target="_blank">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a>
</pre>
    </blockquote>
    <br>
  </div>

<br>_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu" target="_blank">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" rel="noreferrer" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" rel="noreferrer" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
<br></blockquote></div></div></div>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu" target="_blank">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" rel="noreferrer" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" rel="noreferrer" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
</blockquote></div>