Date: Sun, 1 Mar 2009 17:18:27 +0100 From: Ed Schouten <ed@80386.nl> To: net@FreeBSD.org Subject: Making Netgraph compile with LLVM Message-ID: <20090301161827.GR19161@hoeg.nl>
next in thread | raw e-mail | index | archive | help
--rfCqmLcWnxF2yz6F
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Hello all,
It turns out Netgraph uses a language construct that is only allowed
with GCC, but not with LLVM. According to the specs, LLVM's behaviour is
correct. It is not allowed to do this:
struct a {
struct {
int i;
char j[];
} b;
char k[20];
};
error: variable sized type 'b' must be at end of struct or class
Diane Bruce and I thought this patch should solve this issue:
http://80386.nl/pub/ng.diff
Yes, I know, the solution isn't really elegant, but I think this is the
only way to do this safely. Diane and I also compared the output of
objdump and they seem to be equivalent, except for some reordering.
Objections before I commit this to SVN?
--=20
Ed Schouten <ed@80386.nl>
WWW: http://80386.nl/
--rfCqmLcWnxF2yz6F
Content-Type: application/pgp-signature
Content-Disposition: inline
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (FreeBSD)
iEUEARECAAYFAkmqtVMACgkQ52SDGA2eCwUXrgCeKX/bFUEP/k9paOHIgvxZzAzf
7PUAmKI4TJo4XEvffV3oqoIDbpQIl5E=
=Tp28
-----END PGP SIGNATURE-----
--rfCqmLcWnxF2yz6F--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090301161827.GR19161>
