8sa1-gcc/gcc/testsuite/gcc.dg/20010912-1.c
Jakub Jelinek c1d4e7e179 * gcc.dg/20010912-1.c: New test.
From-SVN: r45571
2001-09-12 22:58:29 +02:00

49 lines
580 B
C

/* { dg-do run } */
/* { dg-options "-O2 -fpic" } */
extern void abort (void);
extern void exit (int);
int bar (int x, char **y)
{
if (x != 56)
abort ();
if (**y != 'a')
abort ();
*y = "def";
return 1;
}
int baz (int x, char **y)
{
if (x != 56)
abort ();
if (**y != 'a')
abort ();
return 26;
}
int foo (int x, char *y)
{
int a;
char *b = y;
a = bar (x, &y);
if (a)
{
y = b;
a = baz (x, &y);
}
if (a)
return a;
baz (x, &y);
return 0;
}
int main ()
{
if (foo (56, "abc") != 26)
abort ();
exit (0);
}