<div dir="ltr">Yeah, assert() should be marked noreturn (directly or indirectly) in general or bad things happen. Those assert()s really want to be assert()s or calls to abort() or something: there is nothing good that can happen after returning from those places.</div><br><div class="gmail_quote"><div dir="ltr">On Sun, Oct 16, 2016 at 11:19 PM Alan Coopersmith <<a href="mailto:alan.coopersmith@oracle.com">alan.coopersmith@oracle.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 10/ 8/16 12:58 PM, Pablo Cholaky wrote:<br class="gmail_msg">
> I think this patch is currently harmless and makes support to clang to properly<br class="gmail_msg">
> compile it.<br class="gmail_msg">
<br class="gmail_msg">
clang doesn't complain on the current code for me (probably because my libc<br class="gmail_msg">
headers define the function called on a failed assert with the noreturn<br class="gmail_msg">
attribute), but adding this:<br class="gmail_msg">
<br class="gmail_msg">
>   assert(0);<br class="gmail_msg">
> +  return -1;<br class="gmail_msg">
<br class="gmail_msg">
causes clang to report two new warnings for me:<br class="gmail_msg">
<br class="gmail_msg">
./xcb_bitops.h:210:10: warning: integer constant not in range of<br class="gmail_msg">
       enumerated type 'xcb_image_order_t' (aka 'enum xcb_image_order_t')<br class="gmail_msg">
       [-Wassign-enum]<br class="gmail_msg">
   return -1;<br class="gmail_msg">
          ^<br class="gmail_msg">
./xcb_bitops.h:210:10: warning: implicit conversion changes signedness:<br class="gmail_msg">
       'int' to 'xcb_image_order_t' (aka 'enum xcb_image_order_t')<br class="gmail_msg">
       [-Wsign-conversion]<br class="gmail_msg">
   return -1;<br class="gmail_msg">
   ~~~~~~ ^~<br class="gmail_msg">
<br class="gmail_msg">
Admittedly I run clang with more warnings enabled than the default build, to<br class="gmail_msg">
help find issues during development.<br class="gmail_msg">
<br class="gmail_msg">
--<br class="gmail_msg">
        -Alan Coopersmith-              <a href="mailto:alan.coopersmith@oracle.com" class="gmail_msg" target="_blank">alan.coopersmith@oracle.com</a><br class="gmail_msg">
         Oracle Solaris Engineering - <a href="http://blogs.oracle.com/alanc" rel="noreferrer" class="gmail_msg" target="_blank">http://blogs.oracle.com/alanc</a><br class="gmail_msg">
_______________________________________________<br class="gmail_msg">
Xcb mailing list<br class="gmail_msg">
<a href="mailto:Xcb@lists.freedesktop.org" class="gmail_msg" target="_blank">Xcb@lists.freedesktop.org</a><br class="gmail_msg">
<a href="https://lists.freedesktop.org/mailman/listinfo/xcb" rel="noreferrer" class="gmail_msg" target="_blank">https://lists.freedesktop.org/mailman/listinfo/xcb</a></blockquote></div>