Logical AND operator in diab 5.7 compiler returns non-bool type
<p>When the following bit of code is compiled with the diab c++ compiler (dplusplus), it generates a conversion warning on the third line. It can be resolved by casting the result of the (&amp;&amp;) operator to anything other than bool.</p>

<p>Code:</p>

<pre><code>bool first = 1;
bool second = 1;
bool ret = (first &amp;&amp; second); //generates compile warning
</code></pre>

<p>Error:</p>

<blockquote>
  <p>warning: (etoa:1643): narrowing or signed-to-unsigned type conversion
  found: int to unsigned char</p>
</blockquote>

<p>I verified that nothing is defining bool to another type. Does this look like a compiler issue, or is there something else I might be missing that could cause this?</p>
