Remove warnings of constant operands of logical operators from template instantiations. Upon instantiation of template, value-dependent parameters are replaced by equivalent literals, so code like:<div><br></div><div><div>
template<unsigned int A, unsigned int B> struct S {</div><div> int foo() {</div><div> int x = A && B;</div></div><div> }</div><div>}</div><div><br></div><div>will not warn on A && B on every instantiation. This will still warn on other cases inside templates, which will be caught on checking the template definition.</div>
<div><br></div><div>Patch attached and available at <a href="http://codereview.appspot.com/4650076/">http://codereview.appspot.com/4650076/</a></div>