<div dir="ltr"><span style="color:rgb(20,20,20);font-family:verdana,sans-serif;font-size:14.666666984558105px">I am trying to compile a simple code (see below) with gcc and clang. the gcc generates a warning indicating an incomparable casting (great!). However, clang didn't generate any warnings! I have passed the same arguments for both:</span><br style="margin-top:0px;color:rgb(20,20,20);font-family:verdana,sans-serif;font-size:14.666666984558105px"><br style="color:rgb(20,20,20);font-family:verdana,sans-serif;font-size:14.666666984558105px"><code style="margin:0.1em;padding:0.2px;line-height:14.666667938232422px;color:rgb(20,20,20);font-size:14.666666984558105px;background-color:rgb(222,227,231);display:inline-block"><kbd style="line-height:14.666667938232422px">cc -Wall -Wextra tmp3.c<br>gcc -Wall -Wextra tmp3.c</kbd></code><br style="color:rgb(20,20,20);font-family:verdana,sans-serif;font-size:14.666666984558105px"><br style="color:rgb(20,20,20);font-family:verdana,sans-serif;font-size:14.666666984558105px"><font color="#141414" face="verdana, sans-serif"><span style="font-size:14.666666984558105px">Should I expect clang to generate error or not? If yes, is there an additional option needs to be passed to clang compiler to generate a warning for something that is obviously wrong? </span></font><br style="color:rgb(20,20,20);font-family:verdana,sans-serif;font-size:14.666666984558105px"><br style="color:rgb(20,20,20);font-family:verdana,sans-serif;font-size:14.666666984558105px"><div class="gmail-bbCodeBlock gmail-bbCodeCode" style="margin:1em 140px 1em 0px;padding:0px;border:1px solid rgb(209,209,209);border-top-left-radius:5px;border-top-right-radius:5px;border-bottom-right-radius:5px;border-bottom-left-radius:5px;overflow:auto;color:rgb(20,20,20);font-family:verdana,sans-serif;font-size:14.666666984558105px"><div class="gmail-type" style="margin:0px;padding:3px 8px;font-size:11px;color:rgb(191,30,21);background-image:url(https://forums.freebsd.org/styles/freebsd/xenforo/gradients/form-button-white-25px.png);background-color:rgb(209,209,209);border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:rgb(255,246,246);border-top-left-radius:4px;border-top-right-radius:4px;background-position:50% 0%">Code:</div><pre style="margin-top:0px;margin-bottom:0px;padding:10px;font-family:Consolas,'Courier New',Courier,monospace;line-height:1.24;word-wrap:normal;font-size:10pt;background-image:url(https://forums.freebsd.org/styles/freebsd/xenforo/gradients/category-23px-light.png);background-color:rgb(252,241,240);border-top-left-radius:5px;border-top-right-radius:5px;border-bottom-right-radius:5px;border-bottom-left-radius:5px;overflow:auto;min-height:30px;max-height:500px;direction:ltr;background-position:50% 0%">int main(void)
{
   void *b = (void *)0x12345678;
   int   a = (int)(unsigned long)b;
   int   c = (int)b;
   return a + c;
}</pre></div><br style="color:rgb(20,20,20);font-family:verdana,sans-serif;font-size:14.666666984558105px"><span style="color:rgb(20,20,20);font-family:verdana,sans-serif;font-size:14.666666984558105px">Clang version 3.8</span><br><div><span style="color:rgb(20,20,20);font-family:verdana,sans-serif;font-size:14.666666984558105px"><br></span></div><div><span style="color:rgb(20,20,20);font-family:verdana,sans-serif;font-size:14.666666984558105px"><br></span></div></div>