aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/analyzer
diff options
context:
space:
mode:
authorFrancois-Xavier Coudert <fxcoudert@gcc.gnu.org>2023-08-19 23:22:06 +0200
committerFrancois-Xavier Coudert <fxcoudert@gcc.gnu.org>2023-08-20 10:21:19 +0200
commitce33bbfcbc7dd3afc6c96fb48a19ed00f0c598ce (patch)
treea99d0e79f38737c6f9c5b61dc8ac4768d86b4338 /gcc/testsuite/gcc.dg/analyzer
parent70c50c87273d940918225d5c6b03f1ccfb6f978e (diff)
downloadgcc-ce33bbfcbc7dd3afc6c96fb48a19ed00f0c598ce.zip
gcc-ce33bbfcbc7dd3afc6c96fb48a19ed00f0c598ce.tar.gz
gcc-ce33bbfcbc7dd3afc6c96fb48a19ed00f0c598ce.tar.bz2
Testsuite: fix analyzer tests on Darwin
On macOS, system headers redefine by default some macros (memcpy, memmove, etc) to checked versions, which defeats the analyzer. We want to turn this off. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104042 gcc/testsuite/ChangeLog: PR analyzer/104042 * gcc.dg/analyzer/analyzer.exp: Pass -D_FORTIFY_SOURCE=0 on Darwin. * gcc.dg/analyzer/fd-bind.c: Add missing <string.h> header. * gcc.dg/analyzer/fd-datagram-socket.c: Likewise. * gcc.dg/analyzer/fd-listen.c: Likewise. * gcc.dg/analyzer/fd-socket-misuse.c: Likewise. * gcc.dg/analyzer/fd-stream-socket-active-open.c: Likewise. * gcc.dg/analyzer/fd-stream-socket-passive-open.c: Likewise. * gcc.dg/analyzer/fd-stream-socket.c: Likewise. * gcc.dg/analyzer/fd-symbolic-socket.c: Likewise.
Diffstat (limited to 'gcc/testsuite/gcc.dg/analyzer')
-rw-r--r--gcc/testsuite/gcc.dg/analyzer/analyzer.exp8
-rw-r--r--gcc/testsuite/gcc.dg/analyzer/fd-bind.c1
-rw-r--r--gcc/testsuite/gcc.dg/analyzer/fd-datagram-socket.c1
-rw-r--r--gcc/testsuite/gcc.dg/analyzer/fd-listen.c1
-rw-r--r--gcc/testsuite/gcc.dg/analyzer/fd-socket-misuse.c1
-rw-r--r--gcc/testsuite/gcc.dg/analyzer/fd-stream-socket-active-open.c1
-rw-r--r--gcc/testsuite/gcc.dg/analyzer/fd-stream-socket-passive-open.c1
-rw-r--r--gcc/testsuite/gcc.dg/analyzer/fd-stream-socket.c1
-rw-r--r--gcc/testsuite/gcc.dg/analyzer/fd-symbolic-socket.c1
9 files changed, 16 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/analyzer/analyzer.exp b/gcc/testsuite/gcc.dg/analyzer/analyzer.exp
index 7656926..af05c98f 100644
--- a/gcc/testsuite/gcc.dg/analyzer/analyzer.exp
+++ b/gcc/testsuite/gcc.dg/analyzer/analyzer.exp
@@ -32,6 +32,14 @@ if [info exists DEFAULT_CFLAGS] then {
# If a testcase doesn't have special options, use these.
set DEFAULT_CFLAGS "-fanalyzer -Wanalyzer-too-complex -fanalyzer-call-summaries"
+if { [istarget "*-*-darwin*" ] } {
+ # On macOS, system headers redefine by default some macros (memcpy,
+ # memmove, etc) to checked versions, which defeats the analyzer. We
+ # want to turn this off.
+ # See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104042
+ set DEFAULT_CFLAGS "$DEFAULT_CFLAGS -D_FORTIFY_SOURCE=0"
+}
+
# Initialize `dg'.
dg-init
diff --git a/gcc/testsuite/gcc.dg/analyzer/fd-bind.c b/gcc/testsuite/gcc.dg/analyzer/fd-bind.c
index 184a471..2a5cee5 100644
--- a/gcc/testsuite/gcc.dg/analyzer/fd-bind.c
+++ b/gcc/testsuite/gcc.dg/analyzer/fd-bind.c
@@ -1,6 +1,7 @@
/* { dg-require-effective-target sockets } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
+#include <string.h>
#include <sys/socket.h>
#include <sys/un.h>
#include <unistd.h>
diff --git a/gcc/testsuite/gcc.dg/analyzer/fd-datagram-socket.c b/gcc/testsuite/gcc.dg/analyzer/fd-datagram-socket.c
index 6546df1..59e80c8 100644
--- a/gcc/testsuite/gcc.dg/analyzer/fd-datagram-socket.c
+++ b/gcc/testsuite/gcc.dg/analyzer/fd-datagram-socket.c
@@ -1,6 +1,7 @@
/* { dg-require-effective-target sockets } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
+#include <string.h>
#include <sys/socket.h>
#include <sys/un.h>
#include <unistd.h>
diff --git a/gcc/testsuite/gcc.dg/analyzer/fd-listen.c b/gcc/testsuite/gcc.dg/analyzer/fd-listen.c
index e47c3f6..3ac7a99 100644
--- a/gcc/testsuite/gcc.dg/analyzer/fd-listen.c
+++ b/gcc/testsuite/gcc.dg/analyzer/fd-listen.c
@@ -1,6 +1,7 @@
/* { dg-require-effective-target sockets } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
+#include <string.h>
#include <sys/socket.h>
#include <sys/un.h>
#include <unistd.h>
diff --git a/gcc/testsuite/gcc.dg/analyzer/fd-socket-misuse.c b/gcc/testsuite/gcc.dg/analyzer/fd-socket-misuse.c
index 4b427d6..87e8967 100644
--- a/gcc/testsuite/gcc.dg/analyzer/fd-socket-misuse.c
+++ b/gcc/testsuite/gcc.dg/analyzer/fd-socket-misuse.c
@@ -3,6 +3,7 @@
/* { dg-require-effective-target sockets } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
+#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
diff --git a/gcc/testsuite/gcc.dg/analyzer/fd-stream-socket-active-open.c b/gcc/testsuite/gcc.dg/analyzer/fd-stream-socket-active-open.c
index 4ec5821..b39dbf8 100644
--- a/gcc/testsuite/gcc.dg/analyzer/fd-stream-socket-active-open.c
+++ b/gcc/testsuite/gcc.dg/analyzer/fd-stream-socket-active-open.c
@@ -1,6 +1,7 @@
/* { dg-require-effective-target sockets } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
+#include <string.h>
#include <sys/socket.h>
#include <sys/un.h>
#include <unistd.h>
diff --git a/gcc/testsuite/gcc.dg/analyzer/fd-stream-socket-passive-open.c b/gcc/testsuite/gcc.dg/analyzer/fd-stream-socket-passive-open.c
index 102e435..e161098 100644
--- a/gcc/testsuite/gcc.dg/analyzer/fd-stream-socket-passive-open.c
+++ b/gcc/testsuite/gcc.dg/analyzer/fd-stream-socket-passive-open.c
@@ -5,6 +5,7 @@
/* { dg-require-effective-target sockets } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
+#include <string.h>
#include <sys/socket.h>
#include <sys/un.h>
#include <unistd.h>
diff --git a/gcc/testsuite/gcc.dg/analyzer/fd-stream-socket.c b/gcc/testsuite/gcc.dg/analyzer/fd-stream-socket.c
index d458708..7e0e26a 100644
--- a/gcc/testsuite/gcc.dg/analyzer/fd-stream-socket.c
+++ b/gcc/testsuite/gcc.dg/analyzer/fd-stream-socket.c
@@ -1,6 +1,7 @@
/* { dg-require-effective-target sockets } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
+#include <string.h>
#include <sys/socket.h>
#include <sys/un.h>
#include <unistd.h>
diff --git a/gcc/testsuite/gcc.dg/analyzer/fd-symbolic-socket.c b/gcc/testsuite/gcc.dg/analyzer/fd-symbolic-socket.c
index 4479cc9..d7dc46a 100644
--- a/gcc/testsuite/gcc.dg/analyzer/fd-symbolic-socket.c
+++ b/gcc/testsuite/gcc.dg/analyzer/fd-symbolic-socket.c
@@ -1,6 +1,7 @@
/* { dg-require-effective-target sockets } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
+#include <string.h>
#include <sys/socket.h>
#include <sys/un.h>
#include <unistd.h>