summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/Wstringop-overflow-17.c
blob: fb81420c933f9732600511cb4e0bbb0bb554332b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/* Test to verify that -Wstringop-overflow mentions the referenced object
   { dg-do compile }
   { dg-options "-O2 -Wall" } */

static void copy_n (char *d, const char *s, int n)
{
  while (n--)
    *d++ = *s++;
  *d = 0;           // { dg-warning "writing 1 byte into a region of size 0" }
}

void sink (void*);

void call_copy_n (const char *s)
{
  char a[7];        // { dg-message "declared here" }
  copy_n (a, "1234567", 7);
  sink (a);
}