>>> Sam Ravnborg <sam@xxxxxxxxxxxx> 05.05.09 08:43 >>> >On Tue, May 05, 2009 at 07:35:02AM +0100, Jan Beulich wrote: >> That is the downside of not folding the 'const' modifier into the __initconst >> annotation. It is *always* an error to annotate something __initconst but >> not also make it const. > >But if we folded const in __initconst would this be correct: > >drivers/net/eql.c:static const char version[] __initconst = No, of course not. __initconst would need to go in the place where const is now. My original patch (from really long ago) did this, but you didn't like that combination. Changing to such a model now (where we already have quite a number of uses of __initconst) is certainly going to be painful, so I'm not sure it's worth it. And if you would think now we should nevertheless convert, we'd have to first check whether declarations of more than one variable with a single declaration works with all supported gcc versions (since there are a number of caveats with how __attribute__() annotations are handled depending on their placement) - it may well be that there would need to be a one-variable-per-declaration constraint on users of __initconst & Co. Jan -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html