FSF GCC merge 02/23/03
[official-gcc.git] / gcc / testsuite / gcc.c-torture / execute / 20020213-1.c
blobf9fefee26f76fd03477e79124799917bbbcb3886
1 /* PR c/5681
2 This testcase failed on IA-32 at -O0, because safe_from_p
3 incorrectly assumed it is safe to first write into a.a2 b-1
4 and then read the original value from it. */
6 int bar (float);
8 struct A {
9 float a1;
10 int a2;
11 } a;
13 int b;
15 void foo (void)
17 a.a2 = bar (a.a1);
18 a.a2 = a.a2 < b - 1 ? a.a2 : b - 1;
19 if (a.a2 >= b - 1)
20 abort ();
23 int bar (float x)
25 return 2241;
28 int main()
30 a.a1 = 1.0f;
31 b = 3384;
32 foo ();
33 return 0;