summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr78973.c
blob: 6c53f896233c4b82dca7e5bec3e0018f15d46ce8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/* PR c/78973 - warning: ‘memcpy’: specified size exceeds maximum object size

   Test case for what was initially thought to be a false positive but after
   deeper investigation turned out to be a true positive.

   { dg-do compile }
   { dg-options "-O2 -Wall" } */

void f (void *p, int n)
{
  if (n <= 4)
    __builtin_memset (p, 0, n);   /* { dg-warning "exceeds maximum object size" "pr79073" { xfail ilp32 } } */
}

void g (void *d, unsigned n)
{
  if (n < 5)
    n = 5;
  f (d, n);
}