Date: Fri, 19 Jun 2015 12:42:58 +0100 From: David Chisnall <theraven@FreeBSD.org> To: Hans Petter Selasky <hps@selasky.org> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r268137 - head/sys/sys Message-ID: <1EB851FC-CA78-4A7B-BE5D-4F050C61A14C@FreeBSD.org> In-Reply-To: <5583F2C9.1030409@selasky.org> References: <201407020845.s628jRG5031824@svn.freebsd.org> <5BE3492F-86A0-4CE3-A27C-8DB5EB662C64@FreeBSD.org> <5583F2C9.1030409@selasky.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 19 Jun 2015, at 11:45, Hans Petter Selasky <hps@selasky.org> wrote: >=20 > Appearently this will be fixed in GNUSTEP base: >=20 > = http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/sys/cdefs_elf.h?only_with_tag=3D= MAIN >=20 > Is this still an issue? It is impossible to fix it in GNUstep Base, because we can=E2=80=99t = guarantee that user code doesn=E2=80=99t include system headers after = including GNUstep headers (not to mention the fact that GNUstep is not = the only Objective-C standard library implementation out there). If the = user does, for example: #import <Foundation/Foundation.h> #include <something_that_includes_cdefs.h> void example() { __weak id foo =3D bar(); baz(foo); } Then they will get a compile error no matter what GNUstep=E2=80=99s = Foundation.h does. It can=E2=80=99t prevent cdefs.h from redefining = __weak to be something different. I=E2=80=99ve just looked at the GNUstep base changelog since that NetBSD = commit and there are no relevant changes, so I=E2=80=99ve no idea what = the NetBSD people are thinking there. David
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1EB851FC-CA78-4A7B-BE5D-4F050C61A14C>