Remove flexible array member autoconf check

This is configure macro that tries out how to declare a variable array
at the end of struct. This has been standardised in C99, so there is
no more need for non C99 magic. See also this stackoverflow discussion:

https://stackoverflow.com/questions/14643406/whats-the-need-of-array-with-z
ero-elements

Patch V2: Also remove AX_EMPTY_ARRAY from configure.ac

Signed-off-by: Arne Schwabe <arne@rfc2549.org>
Acked-by: Steffan Karger <steffan.karger@foxcrypto.com>
Acked-by: Gert Doering <gert@greenie.muc.de>
Message-Id: <20210328142038.8826-1-arne@rfc2549.org>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg21882.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
This commit is contained in:
Arne Schwabe 2021-03-28 16:20:37 +02:00 committed by Gert Doering
parent ca57070630
commit 7975e33bd9
5 changed files with 1 additions and 45 deletions

View File

@ -119,7 +119,6 @@
#define inline __inline
#endif
#define EMPTY_ARRAY_SIZE 0
#define TARGET_WIN32 1
#define TARGET_ALIAS "Windows-MSVC"

View File

@ -421,7 +421,6 @@ AC_TYPE_SIGNAL
AX_CPP_VARARG_MACRO_ISO
AX_CPP_VARARG_MACRO_GCC
AX_TYPE_SOCKLEN_T
AX_EMPTY_ARRAY
AC_CHECK_SIZEOF([unsigned int])
AC_CHECK_SIZEOF([unsigned long])
AC_CHECK_HEADERS([ \

View File

@ -1,40 +0,0 @@
dnl @synopsis AX_EMPTY_ARRAY
dnl
dnl Define EMPTY_ARRAY_SIZE to be either "0"
dnl or "" depending on which syntax the compiler
dnl prefers for empty arrays in structs.
dnl
dnl @version
dnl @author James Yonan <jim@yonan.net>
AC_DEFUN([AX_EMPTY_ARRAY], [
AS_VAR_PUSHDEF([VAR],[ax_cv_c_empty_array])dnl
AC_CACHE_CHECK(
[for C compiler empty array size],
[VAR],
[AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM(
,
[[
struct { int foo; int bar[0]; } mystruct;
]]
)],
[VAR=0],
[AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM(
,
[[
struct { int foo; int bar[]; } mystruct;
]]
)],
[VAR=],
[AC_MSG_ERROR([C compiler is unable to creaty empty arrays])]
)]
)]
)dnl
AC_DEFINE_UNQUOTED(
[EMPTY_ARRAY_SIZE],
[$VAR],
[Dimension to use for empty array declaration]
)dnl
AS_VAR_POPDEF([VAR])dnl
])

View File

@ -34,7 +34,7 @@
int x_size; \
int x_cap; \
int x_sizeof; \
type x_list[EMPTY_ARRAY_SIZE]; \
type x_list[]; \
}
#define CIRC_LIST_PUSH(obj, item) \

View File

@ -392,8 +392,6 @@ typedef int MIB_TCP_STATE;
#ifdef PEDANTIC
#undef HAVE_CPP_VARARG_MACRO_GCC
#undef HAVE_CPP_VARARG_MACRO_ISO
#undef EMPTY_ARRAY_SIZE
#define EMPTY_ARRAY_SIZE 1
#undef inline
#define inline
#endif