blob: 91eab2192ad9c259c0b80010f96f13d8879bb180 [file] [log] [blame]
typedef __SIZE_TYPE__ size_t;
int idx;
void *fp;
size_t
fread (void *, size_t, size_t, void *);
void
ql (void)
{
int n1[1];
fread (n1, sizeof (n1[0]), 1, fp); /* { dg-message "'n1' gets an unchecked value here" "" { xfail *-*-* } } */
idx = n1[0]; /* { dg-message "'idx' has an unchecked value here \\\(from 'n1'\\\)" "" { xfail *-*-* } } */
}
int arr[10];
int
pl (void)
{
ql ();
return arr[idx]; /* { dg-warning "use of attacker-controlled value 'idx' in array lookup without bounds checking" "" { xfail *-*-* } } */
}