mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-15 18:01:16 +08:00
6de9cd9a88
From-SVN: r81764
32 lines
509 B
C
32 lines
509 B
C
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <string.h>
|
|
|
|
extern void h (const char *p, const char *f);
|
|
int
|
|
main (void)
|
|
{
|
|
h (0, "foo");
|
|
return 0;
|
|
}
|
|
|
|
void
|
|
h (const char *p, const char *f)
|
|
{
|
|
size_t pl = p == NULL ? 0 : strlen (p);
|
|
size_t fl = strlen (f) + 1;
|
|
char a[pl + 1 + fl];
|
|
char *cp = a;
|
|
char b[pl + 5 + fl * 2];
|
|
char *cccp = b;
|
|
if (p != NULL)
|
|
{
|
|
cp = memcpy (cp, p, pl);
|
|
*cp++ = ':';
|
|
}
|
|
memcpy (cp, f, fl);
|
|
strcpy (b, a);
|
|
puts (a);
|
|
}
|
|
/* { dg-output "foo" } */
|