(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
Wstringop-overflow-70.c
       1  /* PR tree-optimization/97027 - missing warning on buffer overflow storing
       2     a larger scalar into a smaller array
       3     Verify overflow by vector stores.
       4     { dg-do compile }
       5     { dg-options "-O3" } */
       6  
       7  void* nowarn_loop (void)
       8  {
       9    char *p = __builtin_malloc (16);
      10    for (int i = 0; i != 16; ++i)
      11      p[i] = i;
      12    return p;
      13  }
      14  
      15  void* warn_loop (void)
      16  {
      17    char *p = __builtin_malloc (15);
      18    for (int i = 0; i != 16; ++i)
      19      /* The size of the write below depends on the target.  When vectorized
      20         the vector size may be 4, 8 or 16, otherwise it may be a series of byte
      21         assignments.  */
      22      p[i] = i;       // { dg-warning "writing (1|2|4|8|16) bytes? into a region of size (0|1|3|7|15)" }
      23    return p;
      24  }