From 790ff87f675f28bce5e7e35918ae09c3ece4ec4d Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Tue, 6 Dec 2022 08:22:01 +0100 Subject: [PATCH] tree-optimization/104165 - bougs -Warray-bounds, add testcase The following adds the testcase from the description which was fixed by r13-2894-gbe4a6551ed37c1. PR tree-optimization/104165 * g++.dg/warn/Warray-bounds-pr104165-1.C: New testcase. --- .../g++.dg/warn/Warray-bounds-pr104165-1.C | 27 ++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 gcc/testsuite/g++.dg/warn/Warray-bounds-pr104165-1.C diff --git a/gcc/testsuite/g++.dg/warn/Warray-bounds-pr104165-1.C b/gcc/testsuite/g++.dg/warn/Warray-bounds-pr104165-1.C new file mode 100644 index 0000000..bc46285 --- /dev/null +++ b/gcc/testsuite/g++.dg/warn/Warray-bounds-pr104165-1.C @@ -0,0 +1,27 @@ +// { dg-do compile } +// { dg-require-effective-target c++11 } +// { dg-options "-O2 -Warray-bounds" } + +#include + +static int bar(int n, int l) +{ + int f[l]; + int x = 0; + int r = n; + + for (; x < l;) + if (r) + x = l; + else + r = 1; + + if (r == 1) + std::sort(f, f + x, [](int a, int b) { return a > b; }); + return 1; +} + +int foo(int n) +{ + return bar(n, 4); +} -- 2.7.4