tree 262e2ccc61e03cbb1bd53759cb060fbbf95a38f0
parent 3b0f3e0a698c08f28b0327aa1f6751be2928719c
author Willy Tarreau <w@1wt.eu> 1626278041 +0200
committer Christopher Faulet <cfaulet@haproxy.com> 1627326262 +0200

BUILD: add detection of missing important CFLAGS

Modern compilers love to break existing code, and some options detected
at build time (such as -fwrapv) are absolutely critical otherwise some
bad code can be generated.

Given that some users rely on packages that force CFLAGS without being
aware of this and can be hit by runtime bugs, we have to help packagers
figure that they need to be careful about their build options.

The test here consists in detecting correct wrapping of signed integers.
Some of the old code relies on it, and modern compilers recently decided
to break it. It's normally addressed using -fwrapv which users will
rarely enforce in their own flags. Thus it is a good indicator of missing
critical CFLAGS, and it happens to be very easy to detect at run time.
Note that the test uses argc in order to have a variable. While gcc
ignores wrapping even for constants, clang only ignores it for variables.
The way the code is constructed doesn't result in code being emitted for
optimized builds thanks to value range propagation.

This should address GitHub issue #1315, and should be backported to all
stable versions. It may result in instantly breaking binaries that seemed
to work fine (typically the ones suddenly showing a busy loop after a few
weeks of uptime), and require packagers to fix their flags. The vast
majority of distro packages are fine and will not be affected though.

(cherry picked from commit 1335da38f4e1d73df4e7d5fb1e98846e34c9367d)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
