From: Mark Wielaard Date: Sat, 7 Feb 2026 00:48:26 +0000 (+0100) Subject: configure: Add -Wmissing-parameter-name if available X-Git-Tag: elfutils-0.195~64 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1fb2723c504588b60c3f796d91b535b50e0f4fd0;p=thirdparty%2Felfutils.git configure: Add -Wmissing-parameter-name if available Before C23 omitting parameter names in function definitions isn't supported. Add -Wmissing-parameter-name (available since GCC 15) to catch this. * configure.ac: Add HAVE_MISSING_PARAMETER_NAME_WARNING check. * config/eu.am: Set MISSING_PARAMETER_NAME_WARNING based on HAVE_MISSING_PARAMETER_NAME_WARNING. (AM_CFLAGS): Add MISSING_PARAMETER_NAME_WARNING. Signed-off-by: Mark Wielaard Reviewed-by: Sam James --- diff --git a/config/eu.am b/config/eu.am index 0f4aa9f0..756e7058 100644 --- a/config/eu.am +++ b/config/eu.am @@ -111,11 +111,17 @@ else USE_AFTER_FREE3_WARNING= endif +if HAVE_MISSING_PARAMETER_NAME_WARNING +MISSING_PARAMETER_NAME_WARNING=-Wmissing-parameter-name +else +MISSING_PARAMETER_NAME_WARNING= +endif + AM_CFLAGS = -Wall -Wshadow -Wformat=2 \ -Wold-style-definition -Wstrict-prototypes $(TRAMPOLINES_WARNING) \ $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \ - $(USE_AFTER_FREE3_WARNING) \ + $(USE_AFTER_FREE3_WARNING) $(MISSING_PARAMETER_NAME_WARNING) \ $(if $($(*F)_no_Werror),,-Werror) \ $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ diff --git a/configure.ac b/configure.ac index 58e58af2..c9287039 100644 --- a/configure.ac +++ b/configure.ac @@ -665,6 +665,16 @@ CFLAGS="$old_CFLAGS"]) AM_CONDITIONAL(HAVE_USE_AFTER_FREE3_WARNING, [test "x$ac_cv_use_after_free3" != "xno"]) +AC_CACHE_CHECK([whether the compiler accepts -Wmissing-parameter-name], ac_cv_missing_parameter_name, [dnl +old_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS -Wmissing-parameter-name -Werror" +AC_COMPILE_IFELSE([AC_LANG_SOURCE([])], + ac_cv_missing_parameter_name=yes, + ac_cv_missing_parameter_name=no) +CFLAGS="$old_CFLAGS"]) +AM_CONDITIONAL(HAVE_MISSING_PARAMETER_NAME_WARNING, + [test "x$ac_cv_missing_parameter_name" != "xno"]) + AC_CACHE_CHECK([whether the compiler accepts -fno-addrsig], ac_cv_fno_addrsig, [dnl old_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -fno-addrsig -Werror"