summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-03-21 09:08:04 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-03-21 09:08:04 +0000
commit18201739542830855d4e2f0e546ec1ea458b37dc (patch)
tree84e26e6b520aac4c88313b596a4b93716f0ea581
parent7a0eea86b979247ba93b739beec6c2e6fd26dbd2 (diff)
downloadppe42-gcc-18201739542830855d4e2f0e546ec1ea458b37dc.tar.gz
ppe42-gcc-18201739542830855d4e2f0e546ec1ea458b37dc.zip
gcc/testsuite/
* gcc.c-torture/execute/builtins/chk.h (LOCAL): Define. * gcc.c-torture/execute/builtins/sprintf-chk.c (s1): Make LOCAL. * gcc.c-torture/execute/builtins/stpcpy-chk.c (s1): Likewise. * gcc.c-torture/execute/builtins/strcpy-chk.c (s1): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@123105 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/testsuite/ChangeLog7
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/builtins/chk.h8
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/builtins/sprintf-chk.c2
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/builtins/stpcpy-chk.c2
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/builtins/strcpy-chk.c2
5 files changed, 18 insertions, 3 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 147dd302106..8be2829883a 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,10 @@
+2007-03-21 Richard Sandiford <richard@codesourcery.com>
+
+ * gcc.c-torture/execute/builtins/chk.h (LOCAL): Define.
+ * gcc.c-torture/execute/builtins/sprintf-chk.c (s1): Make LOCAL.
+ * gcc.c-torture/execute/builtins/stpcpy-chk.c (s1): Likewise.
+ * gcc.c-torture/execute/builtins/strcpy-chk.c (s1): Likewise.
+
2007-03-19 Seongbae Park <seongbae.park@gmail.com>
PR tree-optimization/30590
diff --git a/gcc/testsuite/gcc.c-torture/execute/builtins/chk.h b/gcc/testsuite/gcc.c-torture/execute/builtins/chk.h
index dfef410c61b..625fdef09b5 100644
--- a/gcc/testsuite/gcc.c-torture/execute/builtins/chk.h
+++ b/gcc/testsuite/gcc.c-torture/execute/builtins/chk.h
@@ -79,3 +79,11 @@ extern volatile int memset_disallowed, strcpy_disallowed, stpcpy_disallowed;
extern volatile int strncpy_disallowed, strcat_disallowed, strncat_disallowed;
extern volatile int sprintf_disallowed, vsprintf_disallowed;
extern volatile int snprintf_disallowed, vsnprintf_disallowed;
+
+/* A storage class that ensures that declarations bind locally. We want
+ to test non-static declarations where we know it is safe to do so. */
+#if __PIC__ && !__PIE__
+#define LOCAL static
+#else
+#define LOCAL
+#endif
diff --git a/gcc/testsuite/gcc.c-torture/execute/builtins/sprintf-chk.c b/gcc/testsuite/gcc.c-torture/execute/builtins/sprintf-chk.c
index 95d2a9d2826..2862ab6dc91 100644
--- a/gcc/testsuite/gcc.c-torture/execute/builtins/sprintf-chk.c
+++ b/gcc/testsuite/gcc.c-torture/execute/builtins/sprintf-chk.c
@@ -13,7 +13,7 @@ extern int sprintf (char *, const char *, ...);
#include "chk.h"
-const char s1[] = "123";
+LOCAL const char s1[] = "123";
char p[32] = "";
char *s2 = "defg";
char *s3 = "FGH";
diff --git a/gcc/testsuite/gcc.c-torture/execute/builtins/stpcpy-chk.c b/gcc/testsuite/gcc.c-torture/execute/builtins/stpcpy-chk.c
index b292c0aec87..6091f129359 100644
--- a/gcc/testsuite/gcc.c-torture/execute/builtins/stpcpy-chk.c
+++ b/gcc/testsuite/gcc.c-torture/execute/builtins/stpcpy-chk.c
@@ -11,7 +11,7 @@ extern int memcmp (const void *, const void *, size_t);
#include "chk.h"
-const char s1[] = "123";
+LOCAL const char s1[] = "123";
char p[32] = "";
char *s2 = "defg";
char *s3 = "FGH";
diff --git a/gcc/testsuite/gcc.c-torture/execute/builtins/strcpy-chk.c b/gcc/testsuite/gcc.c-torture/execute/builtins/strcpy-chk.c
index 002dd19500e..b3c1a3899d9 100644
--- a/gcc/testsuite/gcc.c-torture/execute/builtins/strcpy-chk.c
+++ b/gcc/testsuite/gcc.c-torture/execute/builtins/strcpy-chk.c
@@ -11,7 +11,7 @@ extern int memcmp (const void *, const void *, size_t);
#include "chk.h"
-const char s1[] = "123";
+LOCAL const char s1[] = "123";
char p[32] = "";
char *s2 = "defg";
char *s3 = "FGH";
OpenPOWER on IntegriCloud