On Fri, 17 Nov 2006 10:57:24 +0300 Ruslan Ermilov <ru_at_freebsd.org> wrote: > On Thu, Nov 16, 2006 at 09:56:39PM -0500, Alexander Kabaev wrote: > > On Thu, 16 Nov 2006 15:06:56 -0500 > > Jung-uk Kim <jkim_at_FreeBSD.org> wrote: > > > > > On Thursday 16 November 2006 02:15 pm, Andriy Gapon wrote: > > > > Hmm, I saw errors like this with some other 3rd party kernel > > > > module when its sources had constructs like: > > > > > > > > struct some_struct s = {0}; > > > > > > > > Changing the above initialization to explicit bzero() call > > > > helped in that case, but I think that there should be some > > > > compiler flags or something to handle this. > > > > > > AFAIK, there was no way to handle this GCC bug with compiler > > > flags. '-ffreestanding' should prevent this to happen but it does > > > not. As Max Laier pointed out, it was discussed long time ago. > > > Bruce Evans had good analysis on this issue, too. > > > > > This is not a GCC bug. -ffreestanding is _documented_ as requiring > > memset and friends as resolvable extern symbols. We were just lucky > > to get away without it before. > > > Yes. But to make it clear: it's there in libkern.h, just not > external. > inline definitions do not satisfy the requirement. So memset is NOT there. I implemented simple-minded amd64 and i386 vesrions for GCC4 import. -- Alexander Kabaev
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:02 UTC