c++: mutable temps in rodata [PR116369]
[official-gcc.git] / gcc / testsuite / gcc.dg / lto / 20090312_0.c
blob8aaad754cc3512191091d4e136285889971c6e1c
1 /* { dg-lto-do link } */
2 extern int **foo (void);
3 extern void mumble (char*, char*, char*);
5 static int *
6 bar (char **sp)
8 char *s = *sp, *rs = s;
9 int c;
10 while (*foo ()[c])
11 rs++;
12 while (c = *rs)
14 if (c || ((c == '"') || (c == '\'')))
16 if (c)
17 *rs++ = c;
18 else
19 mumble (0, "", "");
21 else if (c || (*foo ()[c] & 1))
22 *rs++ = c;
24 if (c)
25 mumble (0, "", "");
28 static void
29 baz (char *s)
31 char *args[100];
32 while (bar (&s))
34 mumble (args[0], "", "");
38 int
39 main (void)
41 baz ("");
42 return 0;