PR inline-asm/84742
[official-gcc.git] / gcc / testsuite / gcc.c-torture / execute / 20020107-1.c
blob23d8aebf45eeaa6669aef448921fd97446fbc579
1 /* This testcase failed because - 1 - buf was simplified into ~buf and when
2 later expanding it back into - buf + -1, -1 got lost. */
3 /* { dg-options "-fgnu89-inline" } */
5 extern void abort (void);
6 extern void exit (int);
8 static void
9 bar (int x)
11 if (!x)
12 abort ();
15 char buf[10];
17 inline char *
18 foo (char *tmp)
20 asm ("" : "=r" (tmp) : "0" (tmp));
21 return tmp + 2;
24 int
25 main (void)
27 bar ((foo (buf) - 1 - buf) == 1);
28 exit (0);