mirror of
https://github.com/OpenVPN/openvpn.git
synced 2025-05-08 21:25:53 +08:00
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:
parent
ca57070630
commit
7975e33bd9
@ -119,7 +119,6 @@
|
||||
#define inline __inline
|
||||
#endif
|
||||
|
||||
#define EMPTY_ARRAY_SIZE 0
|
||||
#define TARGET_WIN32 1
|
||||
#define TARGET_ALIAS "Windows-MSVC"
|
||||
|
||||
|
@ -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([ \
|
||||
|
@ -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
|
||||
])
|
@ -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) \
|
||||
|
@ -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
|
||||
|
Loading…
x
Reference in New Issue
Block a user