(root)/
gcc-13.2.0/
gcc/
testsuite/
c-c++-common/
asan/
halt_on_error-2.c
       1  /* Test recovery mode.  */
       2  /* { dg-do run } */
       3  /* { dg-options "-fsanitize-recover=address" } */
       4  /* { dg-set-target-env-var ASAN_OPTIONS "halt_on_error=true" } */
       5  /* { dg-shouldfail "asan" } */
       6  
       7  #include <string.h>
       8  
       9  volatile int ten = 10;
      10  
      11  int main() {
      12    char x[10];
      13    __builtin_memset(x, 0, ten + 1);
      14    asm volatile ("" : : : "memory");
      15    volatile int res = x[ten];
      16    x[ten] = res + 3;
      17    res = x[ten];
      18    return 0;
      19  }
      20  
      21  /* { dg-output "WRITE of size 11 at 0x\[0-9a-f\]+ thread T0\[^\n\r]*(\n|\r\n|\r).*" } */
      22  /* { dg-prune-output "\[^\n\r]*READ of size 1 at 0x\[0-9a-f\]+ thread T0\[^\n\r]*(\n|\r\n|\r).*" } */
      23  /* { dg-prune-output "\[^\n\r]*WRITE of size 1 at 0x\[0-9a-f\]+ thread T0\[^\n\r]*(\n|\r\n|\r).*" } */
      24  /* { dg-prune-output "\[^\n\r]*READ of size 1 at 0x\[0-9a-f\]+ thread T0\[^\n\r]*(\n|\r\n|\r).*" } */