diff options
author | Joel Teichroeb <joel@teichroeb.net> | 2022-02-04 11:35:08 -0500 |
---|---|---|
committer | David Malcolm <dmalcolm@redhat.com> | 2022-02-08 21:36:21 -0500 |
commit | e52a683170877d140eebc9782731eaf11897db71 (patch) | |
tree | 6125c20ee638da53fade1929745f1bd3b9b72e9a | |
parent | 391512ade5f6cda95456133296c8dcc42d5fbefd (diff) | |
download | gcc-e52a683170877d140eebc9782731eaf11897db71.zip gcc-e52a683170877d140eebc9782731eaf11897db71.tar.gz gcc-e52a683170877d140eebc9782731eaf11897db71.tar.bz2 |
analyzer: Fix tests for glibc 2.35 [PR101081]
In recent versions of glibc fopen has __attribute__((malloc)).
Since we can not detect wether this attribute is present or not,
we avoid including stdio.h and instead forward declare what we
need in each test.
Signed-off-by: Joel Teichroeb <joel@teichroeb.net>
gcc/testsuite/ChangeLog:
PR analyzer/101081
* gcc.dg/analyzer/analyzer-verbosity-2a.c: Replace #include of
stdio.h with declarations needed by the test.
* gcc.dg/analyzer/analyzer-verbosity-3a.c: Likewise.
* gcc.dg/analyzer/edges-1.c: Likewise.
* gcc.dg/analyzer/file-1.c: Likewise.
* gcc.dg/analyzer/file-2.c: Likewise.
* gcc.dg/analyzer/file-paths-1.c: Likewise.
* gcc.dg/analyzer/file-pr58237.c: Likewise.
* gcc.dg/analyzer/pr99716-1.c: Likewise.
Signed-off-by: David Malcolm <dmalcolm@redhat.com>
-rw-r--r-- | gcc/testsuite/gcc.dg/analyzer/analyzer-verbosity-2a.c | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/analyzer/analyzer-verbosity-3a.c | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/analyzer/edges-1.c | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/analyzer/file-1.c | 7 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/analyzer/file-2.c | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/analyzer/file-paths-1.c | 9 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/analyzer/file-pr58237.c | 8 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/analyzer/pr99716-1.c | 9 |
8 files changed, 44 insertions, 9 deletions
diff --git a/gcc/testsuite/gcc.dg/analyzer/analyzer-verbosity-2a.c b/gcc/testsuite/gcc.dg/analyzer/analyzer-verbosity-2a.c index 9faf5da..cf014b0 100644 --- a/gcc/testsuite/gcc.dg/analyzer/analyzer-verbosity-2a.c +++ b/gcc/testsuite/gcc.dg/analyzer/analyzer-verbosity-2a.c @@ -1,6 +1,9 @@ /* { dg-additional-options "-fanalyzer-verbosity=2" } */ -#include <stdio.h> +typedef struct FILE FILE; + +FILE* fopen (const char*, const char*); +int fclose (FILE*); extern int foo (); extern void bar (); diff --git a/gcc/testsuite/gcc.dg/analyzer/analyzer-verbosity-3a.c b/gcc/testsuite/gcc.dg/analyzer/analyzer-verbosity-3a.c index 1b2b798..b0ece20 100644 --- a/gcc/testsuite/gcc.dg/analyzer/analyzer-verbosity-3a.c +++ b/gcc/testsuite/gcc.dg/analyzer/analyzer-verbosity-3a.c @@ -1,6 +1,9 @@ /* { dg-additional-options "-fanalyzer-verbosity=3" } */ -#include <stdio.h> +typedef struct FILE FILE; + +FILE* fopen (const char*, const char*); +int fclose (FILE*); extern int foo (); extern void bar (); diff --git a/gcc/testsuite/gcc.dg/analyzer/edges-1.c b/gcc/testsuite/gcc.dg/analyzer/edges-1.c index 6b53ddd..f08a614 100644 --- a/gcc/testsuite/gcc.dg/analyzer/edges-1.c +++ b/gcc/testsuite/gcc.dg/analyzer/edges-1.c @@ -1,4 +1,7 @@ -#include <stdio.h> +typedef struct FILE FILE; + +FILE* fopen (const char*, const char*); +int fclose (FILE*); extern int foo (); extern void bar (); diff --git a/gcc/testsuite/gcc.dg/analyzer/file-1.c b/gcc/testsuite/gcc.dg/analyzer/file-1.c index 0f4bc5a..e8d9343 100644 --- a/gcc/testsuite/gcc.dg/analyzer/file-1.c +++ b/gcc/testsuite/gcc.dg/analyzer/file-1.c @@ -1,4 +1,9 @@ -#include <stdio.h> +typedef struct FILE FILE; + +FILE* fopen (const char*, const char*); +int fclose (FILE*); +#define SEEK_SET 0 +int fseek (FILE *, long int, int); void test_1 (const char *path) diff --git a/gcc/testsuite/gcc.dg/analyzer/file-2.c b/gcc/testsuite/gcc.dg/analyzer/file-2.c index 8d34c73..9c58108 100644 --- a/gcc/testsuite/gcc.dg/analyzer/file-2.c +++ b/gcc/testsuite/gcc.dg/analyzer/file-2.c @@ -1,4 +1,7 @@ -#include <stdio.h> +typedef struct FILE FILE; + +FILE* fopen (const char*, const char*); +int fclose (FILE*); struct foo { diff --git a/gcc/testsuite/gcc.dg/analyzer/file-paths-1.c b/gcc/testsuite/gcc.dg/analyzer/file-paths-1.c index d346f7a..f350178 100644 --- a/gcc/testsuite/gcc.dg/analyzer/file-paths-1.c +++ b/gcc/testsuite/gcc.dg/analyzer/file-paths-1.c @@ -1,6 +1,13 @@ /* { dg-additional-options "-fanalyzer-verbosity=3" } */ -#include <stdio.h> +typedef struct FILE FILE; + +FILE* fopen (const char*, const char*); +int fclose (FILE*); +char *fgets (char *, int, FILE *); + +#define NULL ((void *)0) + /* Verify that we correctly emit CFG events in the face of buffers being clobbered in these leak reports. */ diff --git a/gcc/testsuite/gcc.dg/analyzer/file-pr58237.c b/gcc/testsuite/gcc.dg/analyzer/file-pr58237.c index 68f49c2..ecc7144 100644 --- a/gcc/testsuite/gcc.dg/analyzer/file-pr58237.c +++ b/gcc/testsuite/gcc.dg/analyzer/file-pr58237.c @@ -1,4 +1,10 @@ -#include <stdio.h> +typedef struct FILE FILE; + +FILE* fopen (const char*, const char*); +int fclose (FILE*); +char *fgets (char *, int, FILE *); + +#define NULL ((void *)0) void f0(const char *str) { diff --git a/gcc/testsuite/gcc.dg/analyzer/pr99716-1.c b/gcc/testsuite/gcc.dg/analyzer/pr99716-1.c index 6720c3c..2ccdcc7 100644 --- a/gcc/testsuite/gcc.dg/analyzer/pr99716-1.c +++ b/gcc/testsuite/gcc.dg/analyzer/pr99716-1.c @@ -1,5 +1,10 @@ -#include <stdio.h> -#include <stdlib.h> +typedef struct FILE FILE; + +FILE* fopen (const char*, const char*); +int fclose (FILE*); +int fprintf (FILE *, const char *, ...); + +#define NULL ((void *)0) void test_1 (void) |