aboutsummaryrefslogtreecommitdiff
path: root/windows
diff options
context:
space:
mode:
authorLasse Collin <lasse.collin@tukaani.org>2023-09-26 13:14:37 +0300
committerLasse Collin <lasse.collin@tukaani.org>2023-09-26 13:50:19 +0300
commit9f1444a8a5c0e724b2c7ef83424f642f07a95982 (patch)
tree4d5186fafe73df14a419b27f67ae9856dc5ec3ad /windows
parentCMake: Remove accidental extra newline. (diff)
downloadxz-9f1444a8a5c0e724b2c7ef83424f642f07a95982.tar.xz
Build: Silence two Autoconf warnings.
There were two uses of AC_COMPILE_IFELSE that didn't use AC_LANG_SOURCE and Autoconf warned about these. The omission had been intentional but it turned out that this didn't do what I thought it would. Autoconf 2.71 manual gives an impression that AC_LANG_SOURCE inserts all #defines that have been made with AC_DEFINE so far (confdefs.h). The idea was that omitting AC_LANG_SOURCE would mean that only the exact code included in the AC_COMPILE_IFELSE call would be compiled. With C programs this is not true: the #defines get added without AC_LANG_SOURCE too. There seems to be no neat way to avoid this. Thus, with the C language at least, adding AC_LANG_SOURCE makes no other difference than silencing a warning from Autoconf. The generated "configure" remains identical. (Docs of AC_LANG_CONFTEST say that the #defines have been inserted since Autoconf 2.63b and that AC_COMPILE_IFELSE uses AC_LANG_CONFTEST. So the behavior is documented if one also reads the docs of macros that one isn't calling directly.) Any extra code, including #defines, can cause problems for these two tests because these tests must use -Werror. CC=clang CFLAGS=-Weverything is the most extreme example. It enables -Wreserved-macro-identifier which warns about #define __EXTENSIONS__ 1 because it begins with two underscores. It's possible to write a test file that passes -Weverything but it becomes impossible when Autoconf inserts confdefs.h. So this commit adds AC_LANG_SOURCE to silence Autoconf warnings. A different solution is needed for -Werror tests.
Diffstat (limited to 'windows')
0 files changed, 0 insertions, 0 deletions