<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, May 11, 2015 at 2:23 AM, Dennis Luehring <span dir="ltr"><<a href="mailto:dl.soluz@gmx.net" target="_blank">dl.soluz@gmx.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">#define TEST0 0xFFFA0000<br>
#define TEST1 0xFFFA0001<br>
<br>
const int test0 = 0xFFFA0000;<br>
const int test1 = 0xFFFA0001;<br>
<br>
int main(int argc, char** arcv)<br>
{<br>
  if(argc == TEST0) // OK<br>
  {<br>
    return 1;<br>
  }<br>
<br>
  if(argc == test0) // OK<br>
  {<br>
    return 1;<br>
  }<br>
<br>
  switch(argc)<br>
  {<br>
    case TEST1: return 2; // ERROR: case value evaluates to 4294574081, which cannot be narrowed to type 'int' [-Wc++11-narrowing]<br></blockquote><div><br></div><div>The value here is unsigned, and doesn't fit in an int.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  }<br>
<br>
  switch(argc)<br>
  {<br>
    case test1: return 2; // OK<br></blockquote><div><br></div><div>The value here is signed; the conversion to int happened in the variable declaration.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  }<br>
}<br>
_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@cs.uiuc.edu" target="_blank">cfe-dev@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev</a><br>
</blockquote></div><br></div></div>