BUILD: stick-table: shut up invalid "uninitialized" warning in gcc 8.3
authorWilly Tarreau <w@1wt.eu>
Tue, 6 Jul 2021 16:51:12 +0000 (18:51 +0200)
committerWilly Tarreau <w@1wt.eu>
Tue, 6 Jul 2021 16:54:07 +0000 (18:54 +0200)
commit5b654ad42c7feea2f53eacb02b31d1f5dc9d5c14
tree9612a28b5f262b50d91caf5679de23b1d54bb2f0
parent07954fb069828e311cef9b2bc54a5b4deed96508
BUILD: stick-table: shut up invalid "uninitialized" warning in gcc 8.3

gcc 8.3.0 spews a bunch of:

  src/stick_table.c: In function 'action_inc_gpc0':
  include/haproxy/freq_ctr.h:66:12: warning: 'period' may be used uninitialized in this function [-Wmaybe-uninitialized]
    curr_tick += period;
            ^~
  src/stick_table.c:2241:15: note: 'period' was declared here
    unsigned int period;
               ^~~~~~
but they're incorrect because all accesses are guarded by the exact same
condition (ptr1 not being null), it's just the compiler being overzealous
about the uninitialized detection that seems to be stronger than its
ability to follow its own optimizations. This code path is not critical,
let's just pre-initialize the period to zero.

No backport is needed.
src/stick_table.c