pushed В Thu, 12 Feb 2015 11:02:09 +0100 Jiri Slaby <jsl...@suse.cz> пишет:
> gcc5 reports: > ../util/mkimage.c: In function 'grub_install_get_image_target': > ../util/mkimage.c:954:5: error: loop exit may only be reached after undefined > behavior [-Werror=aggressive-loop-optimizations] > && j < ARRAY_SIZE (image_targets[i].names); j++) > ^ > ../util/mkimage.c:953:39: note: possible undefined statement is here > for (j = 0; image_targets[i].names[j] > ^ > > Well, let's move the index 'j' test before accesing the array to: > 1) make the loop obvious > 2) make gcc happy > > Signed-off-by: Jiri Slaby <jsl...@suse.cz> > --- > util/mkimage.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/util/mkimage.c b/util/mkimage.c > index bccd70388afa..7821dc5eaf11 100644 > --- a/util/mkimage.c > +++ b/util/mkimage.c > @@ -937,8 +937,8 @@ grub_install_get_image_target (const char *arg) > { > unsigned i, j; > for (i = 0; i < ARRAY_SIZE (image_targets); i++) > - for (j = 0; image_targets[i].names[j] > - && j < ARRAY_SIZE (image_targets[i].names); j++) > + for (j = 0; j < ARRAY_SIZE (image_targets[i].names) && > + image_targets[i].names[j]; j++) > if (strcmp (arg, image_targets[i].names[j]) == 0) > return &image_targets[i]; > return NULL; _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel