[Openvpn-devel,v3] Remove check for anonymous unions from configure and cmake config
Commit Message
From: Arne Schwabe <arne@rfc2549.org>
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 <arne@rfc2549.org>
Acked-by: Frank Lichtenheld <frank@lichtenheld.com>
---
This change was reviewed on Gerrit and approved by at least one
developer. I request to merge it to master.
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/588
This mail reflects revision 3 of this Change.
Acked-by according to Gerrit (reflected above):
Frank Lichtenheld <frank@lichtenheld.com>
Comments
I have no idea what that stuff does, but less #ifdef is good :-) - and
supposedly no currently supported system needs this.
Your patch has been applied to the master branch.
commit b8b2d17f473e80b1a0b66e49cc1f34ce88d9502d
Author: Arne Schwabe
Date: Wed Jul 10 18:02:38 2024 +0200
Remove check for anonymous unions from configure and cmake config
Signed-off-by: Arne Schwabe <arne@rfc2549.org>
Acked-by: Frank Lichtenheld <frank@lichtenheld.com>
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 <gert@greenie.muc.de>
--
kind regards,
Gert Doering
@@ -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 <arpa/inet.h> header file. */
#cmakedefine HAVE_ARPA_INET_H 1
@@ -564,28 +564,6 @@
,
[[${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"
@@ -96,17 +96,7 @@
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 */