libcpp, c, middle-end: Optimize initializers using #embed in C
[official-gcc.git] / gcc / testsuite / gcc.dg / torture / pr93381.c
blobcec4b5d8daa4f9924e5bba03ac116dc3e7cfd65d
1 /* { dg-do run } */
3 static struct S { int *p1; int *p2; } s;
4 typedef __UINTPTR_TYPE__ uintptr_t;
5 int foo()
7 int i = 1, j = 2;
8 struct S s;
9 int **p;
10 s.p1 = &i;
11 s.p2 = &j;
12 p = &s.p1;
13 uintptr_t pi = (uintptr_t)p;
14 pi = pi + sizeof (int *);
15 p = (int **)pi;
16 **p = 3;
17 return j;
20 int main()
22 if (foo () != 3)
23 __builtin_abort ();
24 return 0;