Messages in this thread | | | Date | Mon, 14 Jan 2008 09:25:54 +0000 | From | "Jan Beulich" <> | Subject | Re: [PATCH 0/4] __cpuinitconst and __devinitconst |
| |
>> The one thing that I'm not sure is really consistent yet wrt. the >> constification is that now you need to write e.g. >> >> static const char __cpuinitcdata example[]; >> >> and (accidentally) omitting the 'const' (as it's really an apparently >> redundant thing now) as in >> >> static char __cpuinitcdata example[]; >> >> will cause section type conflicts (at the compiler or linker level). I >> therefore think that the 'const' should really be part of the >> __{cpu,mem,dev}cdata definitions (requiring the attribute to be >> placed properly, namely placement at the end of a declaration as >> is possible with __{cpu,mem,dev}initdata is then not an option here). > >I need to play a little with this before I make up my mind. >I do not like the concpet of hiding the const too much - it will >be non-obvious why the compiler complains if the only thing that >distingush const from non-const is a small capital 'c' within >__cpucinitdata (versus __cpuinitdata).
That's the main reason I preferred __{cpu,mem,dev}initconst, as it makes it more obvious that the declared thing is 'const'.
Jan
| |