URL
https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk
Subversion Repositories openrisc_2011-10-31
[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc2/] [gcc/] [testsuite/] [g++.old-deja/] [g++.other/] [union2.C] - Rev 384
Compare with Previous | Blame | View Log
// { dg-do run }
// Bug: g++ crashed on empty initializers for unions.
// Bug: gcc and g++ didn't zero unions with empty initializers.
// Submitted by J"orn Rennecke <amylaar@cygnus.co.uk>
extern "C" void exit (int);
typedef union u
{
union u *up;
void *vp;
} u;
static u v = {};
void bar (u);
void baz (u);
void foo()
{
u w = {};
u x = { &v };
baz (x);
bar (w);
}
void baz (u w) { }
void bar (u w)
{
if (w.up)
exit (1);
}
int main ()
{
foo ();
return 0;
}