title: Signed/unsigned mismatch
body: <p>I'm having hard time understanding nature of issue I encountered in my code.
  Line </p>
  
  <pre><code>if ((struct.c == 0x02) &amp;&amp; (struct2.c == 0x02) &amp;&amp; (struct.s == !struct2.s))
      {/**/}
  </code></pre>
  
  <p>where <code>c</code> is <code>int</code> and <code>s</code> is <code>uint64_t</code> produces </p>
  
  <blockquote>
    <p>C4388:'==' signed/unsigned mismatch</p>
  </blockquote>
  
  <p>warning. I understand what that warning is, I can't see what is triggering it here. What am I missing?</p>