On Sun, 11 Sep 2016, Sergei Shtylyov wrote: > On 09/11/2016 04:06 PM, Julia Lawall wrote: > > For structure types defined in the same file or local header files, find > > top-level static structure declarations that have the following > > properties: > > 1. Never reassigned. > > Really? > > > 2. Address never taken > > Really? OK, I see the problem. The code has, eg: { "sh7724-ether", (kernel_ulong_t)&sh7724_data } Coccinelle doesn't know anything about kernel_ulong_t, so it assumes that it is an identifier, and that the whole expression is a bit and, rather than an address computation. And at the same time, the cast causes the compiler to discard the const annotation, so it doesn't complain either. I can update the rule to avoid this case, since taking a bit and on the address of a top-level structure is not likely to be useful, and I will check whether any of the other patches are affected by this issue. Thanks for the report. julia > > > 3. Not passed to a top-level macro call > > 4. No pointer or array-typed field passed to a function or stored in a > > variable. > > Declare structures having all of these properties as const. > > > > Done using Coccinelle. > > Based on a suggestion by Joe Perches <joe@xxxxxxxxxxx>. > > > > Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx> > > NAK, see sh_eth_set_default_cpu_data(). > > MBR, Sergei > > -- > To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html >