[sr #110400] autoconf 2.70 no longer supports clang with -Wextra-semi-stmt warning enabled

Bruno Haible <[email protected]>
Newsgroups gmane.comp.sysutils.autoconf.bugs
Message-ID <[email protected]>
Follow-up Comment #1, sr #110400 (project autoconf):

The error happens in the expansion of the macro _AC_UNDECLARED_WARNING:


      # For AC_CHECK_DECL to react to warnings, the compiler must be silent
on
    # valid AC_CHECK_DECL input.  No library function is consistently
available
    # on freestanding implementations, so test against a dummy declaration.
    # Include always-available headers on the off chance that they somehow
    # elicit warnings.
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#include <float.h>
#include <limits.h>
#include <stdarg.h>
#include <stddef.h>
extern void ac_decl (int, char *);
int
main (void)
{
#ifdef __cplusplus
  (void) ac_decl ((int) 0, (char *) 0);
  (void) ac_decl;
#else
  (void) ac_decl;
#endif

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
  if test -s conftest.err
then :
  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot detect from compiler exit status or warnings
See \`config.log' for more details" "$LINENO" 5; }


The problem here is the semicolon before 'return 0', which comes from the
AC_LANG_PROGRAM macro. It triggers a clang warning. And since all or most test
programs used by Autoconf are pieced together using AC_LANG_PROGRAM, the
presence of warnings cannot be used to detect anything about the test program.

    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/support/?110400>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.