Re: [PATCH] kernel: use the gnu89 standard explicitly

From: Kirill A. Shutemov
Date: Sun Oct 19 2014 - 19:10:48 EST


On Sun, Oct 19, 2014 at 04:05:25PM -0700, Linus Torvalds wrote:
> On Sun, Oct 19, 2014 at 2:03 PM, Aaro Koskinen <aaro.koskinen@xxxxxx> wrote:
> >
> > Here's one example how it fails: http://marc.info/?l=gcc&m=141349914632010&w=2
>
> Ok, that just looks like a gnu11 bug, then. Not being able to
> initialize structures because some sub-structure has a volatile member
> is just pure BS.
>
> Has anybody reported this as a gcc bug? That email may be on the gcc
> list, but I'm not seeing anybody acknowledge it as a bug..
>
> I cannot imagine that anybody sane claims that this is *wanted*
> behavior from "gnu11".

IIUC, it's nothing to do with volatile. C11 and above reads

(rwlock_t) { .raw_lock = { 0 }, }

as compound literal (which is not constant) rather than constant
initalizer plus a cast.

--
Kirill A. Shutemov
--
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/