/* PR c/29154 */ | |
extern void abort (void); | |
void | |
foo (int **p, int *q) | |
{ | |
*(*p++)++ = *q++; | |
} | |
void | |
bar (int **p, int *q) | |
{ | |
**p = *q++; | |
*(*p++)++; | |
} | |
void | |
baz (int **p, int *q) | |
{ | |
**p = *q++; | |
(*p++)++; | |
} | |
int | |
main (void) | |
{ | |
int i = 42, j = 0; | |
int *p = &i; | |
foo (&p, &j); | |
if (p - 1 != &i || j != 0 || i != 0) | |
abort (); | |
i = 43; | |
p = &i; | |
bar (&p, &j); | |
if (p - 1 != &i || j != 0 || i != 0) | |
abort (); | |
i = 44; | |
p = &i; | |
baz (&p, &j); | |
if (p - 1 != &i || j != 0 || i != 0) | |
abort (); | |
return 0; | |
} |