On Tue, Jul 19, 2022 at 2:48 PM Derrick Stolee via GitGitGadget <gitgitgadget@xxxxxxxxx> wrote: > The 'win build' job of our CI build is failing with the following error: > > compat/win32/syslog.c: In function 'syslog': > compat/win32/syslog.c:53:17: error: pointer 'pos' may be used after \ > 'realloc' [-Werror=use-after-free] > 53 | memmove(pos + 2, pos + 1, strlen(pos)); > CC compat/poll/poll.o > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > compat/win32/syslog.c:47:23: note: call to 'realloc' here > 47 | str = realloc(str, st_add(++str_len, 1)); > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Removing the unrelated "CC compat/poll/poll.o" line would help make this output less confusing. > However, between this realloc() and the use we have a line that resets > the value of 'pos'. Thus, this error is incorrect. It is likely due to a > new version of the compiler on the CI machines. > > Instead of waiting for a new compiler, create a new variable to avoid > this error. If possible, it is a good idea to mention the actual compiler version in the commit message as an aid to future readers who might want to know if this sort of workaround is still needed. > Signed-off-by: Derrick Stolee <derrickstolee@xxxxxxxxxx>