https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107696
--- Comment #2 from Li Shaohua <shaohua.li at inf dot ethz.ch> ---
(In reply to Martin Liška from comment #1)
> > int i;
> > int a[1];
> > for (; i < 1;){
>
> This depends on the uninitialized value of 'i', which is:
>
> (gdb) p i
> $1 = 32767
>
> if I run it with -O0 on my local machine. You can try
> -ftrivial-auto-var-init=zero.
Sorry, I over-reduced the test, for the following new test, I can still observe
the inconsistent results across optimization levels:
Compiler explorer: https://godbolt.org/z/b7x9zx5Ej
% cat a.c
int main() {
int b[2];
int a[1];
int i;
for (i=0; i < 1; i++)
i = i + 3;
a[i] = 1;
}
%