From: Zack Weinberg Date: Mon, 9 Nov 2020 18:08:13 +0000 (-0500) Subject: Fix more bugs in specific tests under AC_LANG(C++). X-Git-Tag: v2.69e~26 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a8b69e68aa2c96ad8b93822e462719d59d69025a;p=thirdparty%2Fautoconf.git Fix more bugs in specific tests under AC_LANG(C++). Found by exhaustive testing for differences between probe results under AC_LANG(C) and AC_LANG(C++). * lib/autoconf/c.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER): Cast result of malloc for C++ compatibility. * lib/autoconf/programs.m4 (_AC_PROG_LEX_YYTEXT_DECL): Declare yywrap as extern "C" when compiling as C++. --- diff --git a/lib/autoconf/c.m4 b/lib/autoconf/c.m4 index ca63dc58..a31d2d33 100644 --- a/lib/autoconf/c.m4 +++ b/lib/autoconf/c.m4 @@ -1993,8 +1993,8 @@ AC_DEFUN([AC_C_FLEXIBLE_ARRAY_MEMBER], #include struct s { int n; double d[]; };]], [[int m = getchar (); - struct s *p = malloc (offsetof (struct s, d) - + m * sizeof (double)); + struct s *p = (struct s *) malloc (offsetof (struct s, d) + + m * sizeof (double)); p->d[0] = 0.0; return p->d != (double *) NULL;]])], [ac_cv_c_flexmember=yes], diff --git a/lib/autoconf/programs.m4 b/lib/autoconf/programs.m4 index b352ce24..63e07043 100644 --- a/lib/autoconf/programs.m4 +++ b/lib/autoconf/programs.m4 @@ -747,6 +747,9 @@ fi])]) AC_DEFUN([_AC_PROG_LEX_YYTEXT_DECL], [cat >conftest.l <<_ACEOF[ %{ +#ifdef __cplusplus +extern "C" +#endif int yywrap(void); %} %%