diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/tree-ssa/pr27799.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/pr27799.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr27799.c b/gcc/testsuite/gcc.dg/tree-ssa/pr27799.c new file mode 100644 index 000000000..de09a40e0 --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr27799.c @@ -0,0 +1,26 @@ +/* { dg-do link } */ +/* { dg-options "-O2" } */ + +struct X { double m; int x; }; +struct Y { int y; short d; }; +struct YY { int y; short d; char c; }; + +extern void link_error (void); + +int foo(struct X *x, struct Y *y) +{ + x->x = 0; + y->y = 1; + if (x->x != 0) + link_error (); +} + +int foo_no(struct X *x, struct YY *y) +{ + x->x = 0; + y->y = 1; + if (x->x != 0) + link_error (); +} + +int main() {} |