diff options
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/20020206-1.c')
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/20020206-1.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/20020206-1.c b/gcc/testsuite/gcc.c-torture/execute/20020206-1.c new file mode 100644 index 000000000..8450800a1 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/20020206-1.c @@ -0,0 +1,26 @@ +struct A { + unsigned int a, b, c; +}; + +extern void abort (void); +extern void exit (int); + +struct A bar (void) +{ + return (struct A) { 176, 52, 31 }; +} + +void baz (struct A *a) +{ + if (a->a != 176 || a->b != 52 || a->c != 31) + abort (); +} + +int main () +{ + struct A d; + + d = ({ ({ bar (); }); }); + baz (&d); + exit (0); +} |