diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/ubsan/bounds-3.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/ubsan/bounds-3.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/ubsan/bounds-3.c b/gcc/testsuite/gcc.dg/ubsan/bounds-3.c new file mode 100644 index 00000000000..50ad67389f8 --- /dev/null +++ b/gcc/testsuite/gcc.dg/ubsan/bounds-3.c @@ -0,0 +1,22 @@ +/* PR sanitizer/70875 */ +/* { dg-do run } */ +/* { dg-options "-fsanitize=bounds" } */ + +int +foo (int n, int k) +{ + struct S + { + int i[n]; + int value; + } s[2]; + return s[k].value = 0; +} + +int +main () +{ + return foo (2, 2); +} + +/* { dg-output "index 2 out of bounds for type 'S \\\[2\\\]'" } */ |