1/* PR c/29154 */ 2 3extern void abort (void); 4 5void 6foo (int **p, int *q) 7{ 8 *(*p++)++ = *q++; 9} 10 11void 12bar (int **p, int *q) 13{ 14 **p = *q++; 15 *(*p++)++; 16} 17 18void 19baz (int **p, int *q) 20{ 21 **p = *q++; 22 (*p++)++; 23} 24 25int 26main (void) 27{ 28 int i = 42, j = 0; 29 int *p = &i; 30 foo (&p, &j); 31 if (p - 1 != &i || j != 0 || i != 0) 32 abort (); 33 i = 43; 34 p = &i; 35 bar (&p, &j); 36 if (p - 1 != &i || j != 0 || i != 0) 37 abort (); 38 i = 44; 39 p = &i; 40 baz (&p, &j); 41 if (p - 1 != &i || j != 0 || i != 0) 42 abort (); 43 return 0; 44} 45