Messages in this thread | | | From | Mathieu Malaterre <> | Date | Tue, 27 Feb 2018 08:44:01 +0100 | Subject | Re: [PATCH 01/21] powerpc: Remove warning on array size when empty |
| |
On Tue, Feb 27, 2018 at 8:33 AM, Christophe LEROY <christophe.leroy@c-s.fr> wrote: > > > Le 27/02/2018 à 08:25, Mathieu Malaterre a écrit : >> >> On Mon, Feb 26, 2018 at 3:45 PM, Andy Shevchenko >> <andy.shevchenko@gmail.com> wrote: >>> >>> On Mon, Feb 26, 2018 at 4:44 PM, Andy Shevchenko >>> <andy.shevchenko@gmail.com> wrote: >>>> >>>> On Sun, Feb 25, 2018 at 7:22 PM, Mathieu Malaterre <malat@debian.org> >>>> wrote: >>> >>> >>>>> static void __init check_cpu_feature_properties(unsigned long node) >>>>> { >>>>> - unsigned long i; >>>>> struct feature_property *fp = feature_properties; >>>>> const __be32 *prop; >>>>> >>>> >>>> Much simpler is just add >>>> >>>> if (ARRAY_SIZE() == 0) >>>> return; >>>> >>>>> - for (i = 0; i < ARRAY_SIZE(feature_properties); ++i, ++fp) { >>>>> + for (; fp != feature_properties + >>>>> ARRAY_SIZE(feature_properties); ++fp) { >>> >>> >>> ...or convert to while(), which will be more readable. >> >> >> So you'd prefer something like: >> >> while (fp < feature_properties + ARRAY_SIZE(feature_properties)) { >> ... >> ++fp; >> } >> >> right ? >> > > > Why not do as suggested by Segher, ie just replace < by != in the original > form ?
I can do that.
> Or add in front: > if (!ARRAY_SIZE(feature_properties)) > return;
(not tested) I believe the compiler still go over the for() loop and will complain about the original unsigned comparison.
> Christophe
| |