]> granicus.if.org Git - clang/commitdiff
[analyzer] Tests: move system functions into system header simulator files.
authorJordan Rose <jordan_rose@apple.com>
Mon, 15 Apr 2013 20:39:37 +0000 (20:39 +0000)
committerJordan Rose <jordan_rose@apple.com>
Mon, 15 Apr 2013 20:39:37 +0000 (20:39 +0000)
Some checkers ascribe different behavior to functions declared in system
headers, so when working with standard library functions it's probably best
to always have them in a standard location.

Test change only (no functionality change), but necessary for the next commit.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179552 91177308-0d34-0410-b5e6-96231b3b80d8

test/Analysis/Inputs/system-header-simulator.h
test/Analysis/Malloc+MismatchedDeallocator+NewDelete.cpp
test/Analysis/taint-tester.c

index 04688c782a04d08566eb6065f47a28506408be1c..e5efeb81f7d278e66c877b977ad2b7ae7e17d087 100644 (file)
@@ -14,8 +14,11 @@ extern FILE *__stdinp;
 extern FILE *__stdoutp;
 extern FILE *__stderrp;
 
-
+int scanf(const char *restrict format, ...);
 int fscanf(FILE *restrict, const char *restrict, ...);
+int printf(const char *restrict format, ...);
+int fprintf(FILE *restrict, const char *restrict, ...);
+int getchar(void);
 
 // Note, on some platforms errno macro gets replaced with a function call.
 extern int errno;
@@ -37,6 +40,8 @@ typedef __darwin_off_t fpos_t;
 void setbuf(FILE * restrict, char * restrict);
 int setvbuf(FILE * restrict, char * restrict, int, size_t);
 
+FILE *fopen(const char * restrict, const char * restrict);
+int fclose(FILE *);
 FILE *funopen(const void *,
                  int (*)(void *, char *, int),
                  int (*)(void *, const char *, int),
index b1ee4c85cf5da8999bc1530da2e9461752361f74..5a596d47eca80e562e384f8625b65c17430b8773 100644 (file)
@@ -1,9 +1,7 @@
 // RUN: %clang_cc1 -analyze -analyzer-checker=core,unix.Malloc,unix.MismatchedDeallocator,cplusplus.NewDelete -std=c++11 -verify %s
 // RUN: %clang_cc1 -analyze -analyzer-checker=core,unix.Malloc,unix.MismatchedDeallocator,cplusplus.NewDelete,alpha.cplusplus.NewDeleteLeaks -DLEAKS -std=c++11 -verify %s
 
-typedef __typeof(sizeof(int)) size_t;
-void *malloc(size_t);
-void free(void *);
+#include "Inputs/system-header-simulator-for-malloc.h"
 
 //--------------------------------------------------
 // Check that unix.Malloc catches all types of bugs.
index 7b0ab2a5fd34b28730c57e1b4c3c237c7985e51f..6287198eda4594e19790fb6c2132755591226d4b 100644 (file)
@@ -1,10 +1,6 @@
 // RUN: %clang_cc1 -Wno-int-to-pointer-cast -analyze -analyzer-checker=alpha.security.taint,debug.TaintTest %s -verify
 
-#include <stdarg.h>
-
-int scanf(const char *restrict format, ...);
-int getchar(void);
-typedef __typeof(sizeof(int)) size_t;
+#include "Inputs/system-header-simulator.h"
 
 #define BUFSIZE 10
 int Buffer[BUFSIZE];
@@ -87,15 +83,6 @@ void getenvTest(char *home) {
     }
 }
 
-typedef struct _FILE FILE;
-extern FILE *stdin;
-extern FILE *stdout;
-extern FILE *stderr;
-int fscanf(FILE *restrict stream, const char *restrict format, ...);
-int fprintf(FILE *stream, const char *format, ...);
-int fclose(FILE *stream);
-FILE *fopen(const char *path, const char *mode);
-
 int fscanfTest(void) {
   FILE *fp;
   char s[80];