rt_gccstream/gcc/testsuite/gcc.c-torture/compile/pr42025-2.c

33 lines
337 B
C

typedef struct
{
void *p;
} Ptr;
struct A
{
int i;
union
{
Ptr p;
char *q;
} u;
};
extern Ptr get_stuff (void);
extern void use_stuff (char *);
static void foo(struct A p, char *q)
{
if (p.i)
p.u.p = get_stuff ();
else
p.u.q = q;
use_stuff (p.u.q);
}
void bar(struct A *p, char *q)
{
foo(*p, q);
}