mirror of
https://github.com/systemd/systemd
synced 2024-09-06 00:41:36 +00:00
![]() gcc versions 4.6 and earlier used to complain when a local variable shadows a global function, 4.7 and above only complain if a local variable shadows a global variable. Fix this by checking whether gcc 4.7+ behavior is in place before deciding to use -Werror=shadow in $(CFLAGS), by using a custom test program source that shadows a global function with a local variable and confirming that -Werror=shadow does not make the compile to break. Tested: - On gcc 4.7 and 4.8, confirmed nothing changed (other than the order of the -Werror=shadow argument, going to the end of CFLAGS.) - On gcc 4.6, confirmed by looking at the config.log output that the check for -Werror=shadow failed and it was not included in CFLAGS. - Ran `make V=1` to confirm -Werror=shadow was still in use, introduced a bogus shadowing issue and confirmed it was caught when building with a recent gcc. |
||
---|---|---|
.. | ||
.gitignore | ||
arch.m4 | ||
attributes.m4 | ||
ax_compiler_vendor.m4 | ||
ax_normalize_path.m4 |