diff options
author | Richard Guenther <rguenther@suse.de> | 2011-04-26 13:00:53 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2011-04-26 13:00:53 +0000 |
commit | e6e26e59a357e5e6d5a6d19e2c8142bbe8af86cd (patch) | |
tree | fc21ea0f56d65dccd0fa4e875fc6cea6c8ccd8c9 /gcc | |
parent | 0e2a6c2b23463c9ce5f43a0102dc1cb65a3b90a5 (diff) | |
download | gcc-e6e26e59a357e5e6d5a6d19e2c8142bbe8af86cd.zip gcc-e6e26e59a357e5e6d5a6d19e2c8142bbe8af86cd.tar.gz gcc-e6e26e59a357e5e6d5a6d19e2c8142bbe8af86cd.tar.bz2 |
re PR c/48731 (regression: __attribute__((flatten)) produces error with function calling variadic functions)
2011-04-26 Richard Guenther <rguenther@suse.de>
PR tree-optimization/48731
* gcc.dg/torture/pr48731.c: New testcase.
From-SVN: r172964
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/torture/pr48731.c | 24 |
2 files changed, 29 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8b44671..03af544 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2011-04-26 Richard Guenther <rguenther@suse.de> + PR tree-optimization/48731 + * gcc.dg/torture/pr48731.c: New testcase. + +2011-04-26 Richard Guenther <rguenther@suse.de> + PR testsuite/48753 * gcc.dg/tree-prof/val-prof-2.c: Adjust. diff --git a/gcc/testsuite/gcc.dg/torture/pr48731.c b/gcc/testsuite/gcc.dg/torture/pr48731.c new file mode 100644 index 0000000..74b77f6 --- /dev/null +++ b/gcc/testsuite/gcc.dg/torture/pr48731.c @@ -0,0 +1,24 @@ +/* { dg-do compile } */ + +#include <stdarg.h> + +int blah(int a, ...) +{ + va_list va; + va_start(va,a); + if (a == 0) + return -1; + else + { + int i; + for (i = 0; i < a; i++) + va_arg(va,int); + return va_arg(va,int); + } +} + +__attribute((flatten)) +int blah2(int b, int c) +{ + return blah(2, b, c); +} |