1 /* PR rtl-optimization/16536 2 Origin: Jeremy Denise <jeremy.denise@libertysurf.fr> 3 Reduced: Wolfgang Bangerth <bangerth@dealii.org> 4 Volker Reichelt <reichelt@igpm.rwth-aachen.de> */ 5 6 extern void abort (); 7 8 typedef struct 9 { 10 int i, dummy; 11 } A; 12 foo(const A * p,const A * q)13inline A foo (const A* p, const A* q) 14 { 15 return (A){p->i+q->i}; 16 } 17 bar(A * __restrict__ p)18void bar (A* __restrict__ p) 19 { 20 *p=foo(p,p); 21 if (p->i!=2) 22 abort(); 23 } 24 main()25int main () 26 { 27 A a={1}; 28 bar(&a); 29 return 0; 30 } 31