diff options
author | Nick Clifton <nickc@redhat.com> | 2016-01-07 17:13:50 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2016-01-07 17:13:50 +0000 |
commit | 3fa073631a20c171e21ffdd511cf2f905b34ceb7 (patch) | |
tree | fabe33678da37e319e7174dd805115c0095da38d | |
parent | 59697eed7ca4a74b961695fda97ace94cead1eac (diff) |
Add a test for PR66655
PR target/66655
* g++.dg/pr66655.C: New test.
* g++.dg/pr66655_1.cc: Test support file.
* g++.dg/pr66655.h: Test header file.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@232133 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/pr66655.C | 25 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/pr66655.h | 5 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/pr66655_1.cc | 14 |
4 files changed, 51 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 869d0fb2841..c65c7cb58c4 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2016-01-07 Nick Clifton <nickc@redhat.com> + + PR target/66655 + * g++.dg/pr66655.C: New test. + * g++.dg/pr66655_1.cc: Test support file. + * g++.dg/pr66655.h: Test header file. + 2016-01-07 Dominique d'Humieres <dominiq@lps.ens.fr> PR fortran/66680 diff --git a/gcc/testsuite/g++.dg/pr66655.C b/gcc/testsuite/g++.dg/pr66655.C new file mode 100644 index 00000000000..218a2c63eb3 --- /dev/null +++ b/gcc/testsuite/g++.dg/pr66655.C @@ -0,0 +1,25 @@ +/* { dg-do run } */ +/* { dg-additional-sources "pr66655_1.cc" } */ + +#include "pr66655.h" + +extern "C" void abort (void); + +#define COOKIE 0xabcd0123 + +int +g (void) +{ + return COOKIE; +} + +extern int f (void); + +int +main (void) +{ + S::set(0); + if (f () != COOKIE) + abort (); + return 0; +} diff --git a/gcc/testsuite/g++.dg/pr66655.h b/gcc/testsuite/g++.dg/pr66655.h new file mode 100644 index 00000000000..ff638f43970 --- /dev/null +++ b/gcc/testsuite/g++.dg/pr66655.h @@ -0,0 +1,5 @@ +struct S +{ + static int i; + static void set (int ii) { i = -ii; } +}; diff --git a/gcc/testsuite/g++.dg/pr66655_1.cc b/gcc/testsuite/g++.dg/pr66655_1.cc new file mode 100644 index 00000000000..d42344c4a04 --- /dev/null +++ b/gcc/testsuite/g++.dg/pr66655_1.cc @@ -0,0 +1,14 @@ +#include "pr66655.h" + +extern int g (void); + +int S::i; + +int +f (void) +{ + int ret = g (); + + S::set (ret); + return ret; +} |