Re: [PATCH -mm] sys_semctl gcc 4.1 warning fix
From: Andrew Morton
Date: Wed May 10 2006 - 19:08:41 EST
Al Viro <viro@xxxxxxxxxxxxxxxx> wrote:
>
> On Wed, May 10, 2006 at 03:31:29PM -0700, David S. Miller wrote:
> > From: Al Viro <viro@xxxxxxxxxxxxxxxx>
> > Date: Wed, 10 May 2006 23:10:24 +0100
> >
> > > But that's the argument in favour of using diff, not shutting the
> > > bogus warnings up...
> >
> > IMHO, the tree should build with -Werror without exception.
> > Once you have that basis, new ones will not show up easily
> > and the hard part of the battle has been won.
> >
> > Yes, people will post a lot of bogus versions of warning fixes, but
> > we're already good at flaming those off already :-)
>
> Alternatively, gcc could get saner. Seriously, some very common patterns
> trigger that shit - e.g. function that returns error or 0 and stores
> value to *pointer_argument in case of success. It's a clear regression
> in 4.x and IMO should be treated as gcc bug.
Sure - it's sad and we need some workaround.
The init_self() thingy seemed reasonable to me - it shuts up the warning
and has no runtime cost. What we could perhaps do is to make
#define init_self(x) (x = x)
only if the problematic gcc versions are detected. Later, if/when gcc gets
fixed up, we use
#define init_self(x) x
Or something. Probably a more specific name than "init_self" is needed in
this case - something that indicates that it's a specific workaround for
specific gcc versions.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/