blob: 8fb2f266fd8362b3c1ddc086ee7ca4ad5a0d3a9e [file] [log] [blame]
/* PR middle-end/63477 - Bogus warning with -O3 -Warray-bounds: array
subscript is above array bounds
{ dg-do compile }
{ dg-options "-O3 -Warray-bounds" } */
#define MAX_VAL 16
typedef struct
{
int itemList[MAX_VAL + 1];
unsigned int numItems;
} ItemList;
void FrobList (ItemList *l)
{
unsigned int i;
for (i = 0; i < l->numItems - 1; i++)
{
int minVal = l->itemList[i];
unsigned int minIdx = i;
unsigned int idx;
for (idx = i + 1; idx < l->numItems; ++idx) {
if (l->itemList[idx] < minVal) /* { dg-bogus "\\\[-Warray-bounds]" } */
{
minVal = l->itemList[idx];
minIdx = idx;
}
}
l->itemList[i] = l->itemList[minIdx];
}
}