lkml.org 
[lkml]   [2016]   [Feb]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH] ARM: ks8695: fix __initdata annotation
Date
On Tuesday 09 February 2016 12:36:24 Uwe Kleine-König wrote:
> Having the attribute list after the declarator isn't recommended as
> explicit as I remember having read it somewhere in the gcc docs.
>
> info gcc "Attribute Syntax"
>
> has:
>
> An attribute specifier list may appear immediately before a declarator
> (other than the first) in a comma-separated list of declarators in a
> declaration of more than one identifier using a single list of
> specifiers and qualifiers. Such attribute specifiers apply only to the
> identifier before whose declarator they appear. For example, in
>
> __attribute__((noreturn)) void d0 (void),
> __attribute__((format(printf, 1, 2))) d1 (const char *, ...),
> d2 (void)
>
> the 'noreturn' attribute applies to all the functions declared; the
> 'format' attribute only applies to 'd1'.
>
> (Funny enough, in the example the attribute specifier list doesn't
> appear *immediately* before the declarator d0.)
>
> This might be interpreted as "usually the attribute specifier list appears
> after the declarator". Other than that I cannot find an explict
> recommended placement in the docs. The examples in
>
> info gcc "Variable Attributes"
>
> always have the attribute list after the declarator.

Ok, thanks for the detailed answer, I've fixed it up locally now.
I guess I'm applying the patch in arm-soc directly at some point
and will use the line you suggested after some more testing:

static struct map_desc og_io_desc[] __initdata = {


Arnd

\
 
 \ /
  Last update: 2016-02-09 16:21    [W:0.052 / U:5.288 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site