> On 01 Nov 2017, at 02:20, Willy Tarreau <w...@1wt.eu> wrote:
> 
> Hi all!
> 


Hello,

several new warnings from clang, some look meaningful:

cc -Iinclude -Iebtree -Wall  -O2 -pipe  -fstack-protector -fno-strict-aliasing  
-fno-strict-aliasing -Wdeclaration-after-statement -fwrapv  
-Wno-address-of-packed-member -Wno-null-dereference -Wno-unused-label   
-DFREEBSD_PORTS    -DTPROXY -DCONFIG_HAP_CRYPT -DUSE_GETADDRINFO -DUSE_ZLIB  
-DENABLE_POLL -DENABLE_KQUEUE -DUSE_CPU_AFFINITY -DUSE_ACCEPT4 
-DCONFIG_REGPARM=3 -DUSE_THREAD -DUSE_OPENSSL  -DUSE_PCRE -I/usr/local/include 
-DUSE_PCRE_JIT  -DCONFIG_HAPROXY_VERSION=\"1.8-rc1-901f75c\" 
-DCONFIG_HAPROXY_DATE=\"2017/10/31\" -c -o src/standard.o src/standard.c
src/server.c:875:14: warning: address of array 'check->desc' will always
      evaluate to 'true' [-Wpointer-bool-conversion]
                if (check->desc)
                ~~  ~~~~~~~^~~~
src/server.c:914:14: warning: address of array 'check->desc' will always
      evaluate to 'true' [-Wpointer-bool-conversion]
                if (check->desc)
                ~~  ~~~~~~~^~~~
src/server.c:958:14: warning: address of array 'check->desc' will always
      evaluate to 'true' [-Wpointer-bool-conversion]
                if (check->desc)
                ~~  ~~~~~~~^~~~
src/cfgparse.c:5044:34: warning: implicit conversion from 'int' to 'char'
      changes value from 130 to -126 [-Wconstant-conversion]
  ...curproxy->check_req[5] = 130;
                            ~ ^~~
src/cfgparse.c:5070:33: warning: implicit conversion from 'int' to 'char'
      changes value from 128 to -128 [-Wconstant-conversion]
  ...curproxy->check_req[5] = 128;
                            ~ ^~~



cc -Iinclude -Iebtree -Wall  -O2 -pipe  -fstack-protector -fno-strict-aliasing  
-fno-strict-aliasing -Wdeclaration-after-statement -fwrapv  
-Wno-address-of-packed-member -Wno-null-dereference -Wno-unused-label   
-DFREEBSD_PORTS    -DTPROXY -DCONFIG_HAP_CRYPT -DUSE_GETADDRINFO -DUSE_ZLIB  
-DENABLE_POLL -DENABLE_KQUEUE -DUSE_CPU_AFFINITY -DUSE_ACCEPT4 
-DCONFIG_REGPARM=3 -DUSE_THREAD -DUSE_OPENSSL  -DUSE_PCRE -I/usr/local/include 
-DUSE_PCRE_JIT  -DCONFIG_HAPROXY_VERSION=\"1.8-rc1-901f75c\" 
-DCONFIG_HAPROXY_DATE=\"2017/10/31\" -c -o src/sample.o src/sample.c
src/peers.c:255:16: warning: implicit conversion from 'int' to 'char' changes
      value from 133 to -123 [-Wconstant-conversion]
                        *msg_type = PEER_MSG_STKT_UPDATE_TIMED;
                                  ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~
src/peers.c:257:16: warning: implicit conversion from 'int' to 'char' changes
      value from 134 to -122 [-Wconstant-conversion]
                        *msg_type = PEER_MSG_STKT_INCUPDATE_TIMED;
                                  ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/peers.c:261:16: warning: implicit conversion from 'int' to 'char' changes
      value from 128 to -128 [-Wconstant-conversion]
                        *msg_type = PEER_MSG_STKT_UPDATE;
                                  ~ ^~~~~~~~~~~~~~~~~~~~
src/peers.c:263:16: warning: implicit conversion from 'int' to 'char' changes
      value from 129 to -127 [-Wconstant-conversion]
                        *msg_type = PEER_MSG_STKT_INCUPDATE;
                                  ~ ^~~~~~~~~~~~~~~~~~~~~~~
src/peers.c:450:11: warning: implicit conversion from 'int' to 'char' changes
      value from 130 to -126 [-Wconstant-conversion]
        msg[1] = PEER_MSG_STKT_DEFINE;
               ~ ^~~~~~~~~~~~~~~~~~~~
src/peers.c:486:11: warning: implicit conversion from 'int' to 'char' changes
      value from 132 to -124 [-Wconstant-conversion]
        msg[1] = PEER_MSG_STKT_ACK;
               ~ ^~~~~~~~~~~~~~~~~



cc -Iinclude -Iebtree -Wall  -O2 -pipe  -fstack-protector -fno-strict-aliasing  
-fno-strict-aliasing -Wdeclaration-after-statement -fwrapv  
-Wno-address-of-packed-member -Wno-null-dereference -Wno-unused-label   
-DFREEBSD_PORTS    -DTPROXY -DCONFIG_HAP_CRYPT -DUSE_GETADDRINFO -DUSE_ZLIB  
-DENABLE_POLL -DENABLE_KQUEUE -DUSE_CPU_AFFINITY -DUSE_ACCEPT4 
-DCONFIG_REGPARM=3 -DUSE_THREAD -DUSE_OPENSSL  -DUSE_PCRE -I/usr/local/include 
-DUSE_PCRE_JIT  -DCONFIG_HAPROXY_VERSION=\"1.8-rc1-901f75c\" 
-DCONFIG_HAPROXY_DATE=\"2017/10/31\" -c -o src/freq_ctr.o src/freq_ctr.c
src/mux_h2.c:1734:15: warning: implicit conversion from enumeration type
      'enum h2_ss' to different enumeration type 'enum h2_cs'
      [-Wenum-conversion]
                        h2c->st0 = H2_SS_ERROR;
                                 ~ ^~~~~~~~~~~
src/mux_h2.c:2321:15: warning: implicit conversion from enumeration type
      'enum h2_ss' to different enumeration type 'enum h2_cs'
      [-Wenum-conversion]
                        h2c->st0 = H2_SS_ERROR;
                                 ~ ^~~~~~~~~~~
src/mux_h2.c:2435:15: warning: implicit conversion from enumeration type
      'enum h2_ss' to different enumeration type 'enum h2_cs'
      [-Wenum-conversion]
                        h2c->st0 = H2_SS_ERROR;
                                 ~ ^~~~~~~~~~~
src/mux_h2.c:526:24: warning: unused function 'h2_get_n64' [-Wunused-function]



src/cache.c:176:7: warning: variable 'ret' is used uninitialized whenever 'if'
      condition is false [-Wsometimes-uninitialized]
                if (len) {
                    ^~~
src/cache.c:202:7: note: uninitialized use occurs here
        if ((ret != len) ||
             ^~~
src/cache.c:176:3: note: remove the 'if' if its condition is always true
                if (len) {
                ^~~~~~~~~
src/cache.c:151:9: note: initialize the variable 'ret' to silence this warning
        int ret;
               ^
                = 0
src/cache.c:566:9: warning: implicit conversion from enumeration type
      'enum act_return' to different enumeration type 'enum act_parse_ret'
      [-Wenum-conversion]
        return ACT_RET_ERR;
        ~~~~~~ ^~~~~~~~~~~
src/cache.c:589:11: warning: implicit conversion from enumeration type
      'enum act_parse_ret' to different enumeration type 'enum act_return'
      [-Wenum-conversion]
                        return ACT_RET_PRS_OK;
                        ~~~~~~ ^~~~~~~~~~~~~~
src/cache.c:591:11: warning: implicit conversion from enumeration type
      'enum act_parse_ret' to different enumeration type 'enum act_return'
      [-Wenum-conversion]
                        return ACT_RET_PRS_ERR;
                        ~~~~~~ ^~~~~~~~~~~~~~~
src/cache.c:594:9: warning: implicit conversion from enumeration type
      'enum act_parse_ret' to different enumeration type 'enum act_return'
      [-Wenum-conversion]
        return ACT_RET_PRS_OK;
        ~~~~~~ ^~~~~~~~~~~~~~
src/cache.c:622:9: warning: implicit conversion from enumeration type
      'enum act_return' to different enumeration type 'enum act_parse_ret'
      [-Wenum-conversion]
        return ACT_RET_ERR;
        ~~~~~~ ^~~~~~~~~~~


In file included from ../../ebtree/ebtree.c:21:
../../ebtree/ebtree.h:469:35: warning: taking address of packed member
      'branches' of class or structure 'eb_node' may result in an unaligned
      pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_left = eb_dotag(&new->branches, EB_LEFT);
                                         ^~~~~~~~~~~~~
(a lot of similar)



Reply via email to