From: Arne Schwabe Date: Wed, 10 Jul 2024 16:02:38 +0000 (+0200) Subject: Remove check for anonymous unions from configure and cmake config X-Git-Tag: v2.7_alpha1~203 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b8b2d17f473e80b1a0b66e49cc1f34ce88d9502d;p=thirdparty%2Fopenvpn.git Remove check for anonymous unions from configure and cmake config Anonymous unions/structs are technically a custom GNU C99 feature but was already widely supported by other compilers. With C11 this feature has become a standard feature so all compilers nowadays support it. Change-Id: I1ef5f6f21f0135a628a63553c39515fa4549ce87 Signed-off-by: Arne Schwabe Acked-by: Frank Lichtenheld Message-Id: <20240710160238.190189-1-frank@lichtenheld.com> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg28914.html Signed-off-by: Gert Doering --- diff --git a/config.h.cmake.in b/config.h.cmake.in index 720d679c8..18af5e9f4 100644 --- a/config.h.cmake.in +++ b/config.h.cmake.in @@ -65,9 +65,6 @@ /* Enable --x509-username-field feature */ #cmakedefine ENABLE_X509ALTUSERNAME -/* Compiler supports anonymous unions */ -#define HAVE_ANONYMOUS_UNION_SUPPORT - /* Define to 1 if you have the header file. */ #cmakedefine HAVE_ARPA_INET_H 1 diff --git a/configure.ac b/configure.ac index 9e569bfca..9bc15c854 100644 --- a/configure.ac +++ b/configure.ac @@ -564,28 +564,6 @@ AC_CHECK_DECLS( , [[${SOCKET_INCLUDES}]] ) -AC_MSG_CHECKING([anonymous union support]) -AC_COMPILE_IFELSE( - [AC_LANG_PROGRAM( - [[ - struct mystruct { - union { - int m1; - char m2; - }; - }; - ]], - [[ - struct mystruct s; - s.m1 = 1; s.m2 = 2; - ]] - )], - [ - AC_MSG_RESULT([yes]) - AC_DEFINE([HAVE_ANONYMOUS_UNION_SUPPORT], [], [Compiler supports anonymous unions]) - ], - [AC_MSG_RESULT([no])] -) saved_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -Wl,--wrap=exit" diff --git a/src/openvpn/mroute.h b/src/openvpn/mroute.h index bc5849339..8b457d4e0 100644 --- a/src/openvpn/mroute.h +++ b/src/openvpn/mroute.h @@ -96,17 +96,7 @@ struct mroute_addr { uint8_t prefix[12]; in_addr_t addr; /* _network order_ IPv4 address */ } v4mappedv6; - } -#ifndef HAVE_ANONYMOUS_UNION_SUPPORT -/* Wrappers to support compilers that do not grok anonymous unions */ - mroute_union -#define raw_addr mroute_union.raw_addr -#define ether mroute_union.ether -#define v4 mroute_union.v4 -#define v6 mroute_union.v6 -#define v4mappedv6 mroute_union.v4mappedv6 -#endif - ; + }; }; /* Double-check that struct packing works as expected */