+++ /dev/null
-/* { dg-do compile { target i?86-*-* } } */
-/* { dg-options "-Os -fpic" } */
-
-#include <string.h>
-
-typedef struct
-{
- char *a;
- char *b;
-} *foo;
-
-void
-bar (foo x)
-{
- char *c = x->b;
- char *d = (void *)0;
- unsigned int e = 0, f = 0, g;
- while (*c != ':')
- if (*c == '%')
- {
- ++c;
- switch (*c++)
- {
- case 'N':
- g = strlen (x->a);
- if (e + g >= f) {
- char *h = d;
- f += 256 + g;
- d = (char *) __builtin_alloca (f);
- memcpy (d, h, e);
- };
- memcpy (&d[e], x->a, g);
- e += g;
- break;
- }
- }
-}