* gcc.c-torture/execute/builtins/chk.h: Don't check !__PIE__.
* gcc.dg/assign-warn-3.c: Use "static inline" instead of "inline".
Backport:
2007-04-14 Kazu Hirata <kazu@codesourcery.com>
* gcc.c-torture/compile/pr27528.c: Require nonpic.
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-07-26 Nathan Froyd <froydnj@codesourcery.com>
PR/19232
* gcc.dg/assign-warn-3.c (f0): Declare as inline.
(f1): Likewise.
2007-01-15 Dale Johannesen <dalej@apple.com>
* gcc.dg/tree-ssa/loop-3.c: Disable with -fpic or -fPIC.
2007-08-27 Uros Bizjak <ubizjak@gmail.com>
* gcc.target/i386/stack-prot-kernel.c: Require nonpic effective
target.
2007-03-21 Richard Sandiford <richard@codesourcery.com>
* lib/target-supports.exp (check_effective_target_nonpic): New
procedure.
From-SVN: r131412
+2008-01-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gcc.c-torture/execute/builtins/chk.h: Don't check !__PIE__.
+ * gcc.dg/assign-warn-3.c: Use "static inline" instead of "inline".
+
+ Backport:
+
+ 2007-04-14 Kazu Hirata <kazu@codesourcery.com>
+ * gcc.c-torture/compile/pr27528.c: Require nonpic.
+
+ 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-07-26 Nathan Froyd <froydnj@codesourcery.com>
+ PR/19232
+ * gcc.dg/assign-warn-3.c (f0): Declare as inline.
+ (f1): Likewise.
+
+ 2007-01-15 Dale Johannesen <dalej@apple.com>
+ * gcc.dg/tree-ssa/loop-3.c: Disable with -fpic or -fPIC.
+
+ 2007-08-27 Uros Bizjak <ubizjak@gmail.com>
+ * gcc.target/i386/stack-prot-kernel.c: Require nonpic effective
+ target.
+
+ 2007-03-21 Richard Sandiford <richard@codesourcery.com>
+ * lib/target-supports.exp (check_effective_target_nonpic): New
+ procedure.
+
2008-01-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
PR testsuite/30459
/* Check that constant constraints like "i", "n" and "s" can be used in
cases where the operand is an initializer constant. */
-/* { dg-options "-fno-pic" } */
+/* { dg-require-effective-target nonpic } */
int x[2] = { 1, 2 };
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__
+#define LOCAL static
+#else
+#define LOCAL
+#endif
#include "chk.h"
-const char s1[] = "123";
+LOCAL const char s1[] = "123";
char p[32] = "";
char *s2 = "defg";
char *s3 = "FGH";
#include "chk.h"
-const char s1[] = "123";
+LOCAL const char s1[] = "123";
char p[32] = "";
char *s2 = "defg";
char *s3 = "FGH";
#include "chk.h"
-const char s1[] = "123";
+LOCAL const char s1[] = "123";
char p[32] = "";
char *s2 = "defg";
char *s3 = "FGH";
/* { dg-options "-O3 -std=c99 -pedantic-errors" } */
/* This is valid to execute, so maybe shouldn't warn at all. */
-void f0(x) signed char *x; { }
+static inline void f0(x) signed char *x; { }
void g0(unsigned char *x) { f0(x); } /* { dg-warning "warning: pointer targets in passing argument 1 of 'f0' differ in signedness" } */
/* This is undefined on execution but still must compile. */
-void f1(x) int *x; { }
+static inline void f1(x) int *x; { }
void g1(unsigned int *x) { f1(x); } /* { dg-warning "warning: pointer targets in passing argument 1 of 'f1' differ in signedness" } */
assume something about memory addressing modes. */
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
-/* { dg-options "-O1 -fdump-tree-optimized" } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-fpic" "-fPIC" } { "" } } */
+/* { dg-options "-O1 -fno-pic -fno-PIC -fdump-tree-optimized" } */
int arr_base[100];
/* { dg-do compile { target lp64 } } */
-/* { dg-skip-if "darwin x86_64 is pic" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target nonpic } */
/* { dg-options "-O2 -fstack-protector-all -mcmodel=kernel" } */
void test1 (int x)
} "-mpaired-single"]
}
+# Return 1 if the current multilib does not generate PIC by default.
+
+proc check_effective_target_nonpic { } {
+ return [check_no_compiler_messages nonpic assembly {
+ #if __PIC__
+ #error FOO
+ #endif
+ }]
+}
+
# Return true if iconv is supported on the target. In particular IBM1047.
proc check_iconv_available { test_what } {