]> granicus.if.org Git - clang/commitdiff
add a bunch of missing prototypes to tests
authorChris Lattner <sabre@nondot.org>
Sat, 9 Jan 2010 20:43:19 +0000 (20:43 +0000)
committerChris Lattner <sabre@nondot.org>
Sat, 9 Jan 2010 20:43:19 +0000 (20:43 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93072 91177308-0d34-0410-b5e6-96231b3b80d8

24 files changed:
test/Analysis/CFDateGC.m
test/Analysis/PR2599.m
test/Analysis/casts.c
test/Analysis/dead-stores.c
test/Analysis/misc-ps-region-store.m
test/Analysis/misc-ps.m
test/Analysis/rdar-6442306-1.m
test/Analysis/retain-release-basic-store.m
test/Analysis/retain-release-region-store.m
test/Analysis/retain-release.m
test/Analysis/uninit-vals-ps-region.c
test/Lexer/numeric-literal-trash.c
test/Sema/attr-noreturn.c
test/Sema/block-labels.c
test/Sema/block-misc.c
test/Sema/block-return.c
test/Sema/conditional.c
test/Sema/format-strings.c
test/Sema/implicit-builtin-decl.c
test/Sema/implicit-decl.c
test/SemaObjC/bad-receiver-1.m
test/SemaObjC/ivar-access-package.m
test/SemaObjC/nonnull.m
test/SemaObjC/protocol-archane.m

index 01cb4a4613321d42619c0b619e1bd47f91a35ded..34bc3c0f199b094b6071a1daf236b7444182ddef 100644 (file)
@@ -1,8 +1,8 @@
-// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -checker-cfref -analyzer-store=basic -verify -fobjc-gc -analyzer-constraints=basic %s
-// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -checker-cfref -analyzer-store=basic -verify -fobjc-gc -analyzer-constraints=range %s
-// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -checker-cfref -analyzer-store=basic -verify -fobjc-gc -disable-free %s
-// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify -fobjc-gc %s
-// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify -fobjc-gc %s
+// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -checker-cfref -analyzer-store=basic -verify -fobjc-gc -analyzer-constraints=basic %s  -Wno-implicit-function-declaration
+// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -checker-cfref -analyzer-store=basic -verify -fobjc-gc -analyzer-constraints=range %s  -Wno-implicit-function-declaration
+// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -checker-cfref -analyzer-store=basic -verify -fobjc-gc -disable-free %s  -Wno-implicit-function-declaration
+// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify -fobjc-gc %s  -Wno-implicit-function-declaration
+// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify -fobjc-gc %s  -Wno-implicit-function-declaration
 
 //===----------------------------------------------------------------------===//
 // The following code is reduced using delta-debugging from
@@ -36,6 +36,8 @@ static __inline__ __attribute__((always_inline)) id NSMakeCollectable(CFTypeRef
 // Test cases.
 //===----------------------------------------------------------------------===//
 
+CFAbsoluteTime CFAbsoluteTimeGetCurrent();
+
 CFAbsoluteTime f1_use_after_release() {
   CFAbsoluteTime t = CFAbsoluteTimeGetCurrent();
   CFDateRef date = CFDateCreate(0, t);
index e866ee6cb27085e4b0d48a7a5756b648cf54a8c9..d26096129e33b34c422f9b5546f42b541db32721 100644 (file)
@@ -53,6 +53,8 @@ extern NSString * const NSXMLParserErrorDomain ;
 
 static char *lorem = "fooBarBaz";
 
+void NSLog(NSString *, ...);
+
 int main (int argc, const char * argv[]) {
   NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
   NSString *tmp1 = NSSTRINGWRAPPER(lorem, 6); // no-warning
index 96c0226a0053c5f8e50bff244d83b1ba40b3d746..4b7291617189fc96908ca1312c7a4b4a298d06c3 100644 (file)
@@ -11,6 +11,8 @@ typedef __darwin_socklen_t socklen_t;
 struct sockaddr { sa_family_t sa_family; };
 struct sockaddr_storage {};
 
+void getsockname();
+
 void f(int sock) {
   struct sockaddr_storage storage;
   struct sockaddr* sockaddr = (struct sockaddr*)&storage;
index 63c9d0d97a448b660de845d00cd78fe733543c82..91f2b2afebd29db268e2c1677a2a90ffbf1e6110 100644 (file)
@@ -17,6 +17,8 @@ void f2(void *b) {
  // expected-note{{please include the header <stdio.h> or explicitly provide a declaration for 'printf'}}
 }
 
+int f();
+
 void f3() {
   int r;
   if ((r = f()) != 0) { // no-warning
index 7f29c99a44d766ac0105684e55bbb936f49a2f2f..06114c2ab021001c70c59b67f04c3158950b75df 100644 (file)
@@ -55,7 +55,7 @@ void checkaccess_union() {
 
 // Check our handling of fields being invalidated by function calls.
 struct test2_struct { int x; int y; char* s; };
-void test2_helper(struct test2_struct* p);
+void test2_help(struct test2_struct* p);
 
 char test2() {
   struct test2_struct s;
@@ -387,7 +387,7 @@ void rdar_7332673_test1() {
     char value[1];
     if ( *(value) != 1 ) {} // expected-warning{{The left operand of '!=' is a garbage value}}
 }
-void rdar_rdar_7332673_test2_aux(char *x);
+int rdar_7332673_test2_aux(char *x);
 void rdar_7332673_test2() {
     char *value;
     if ( rdar_7332673_test2_aux(value) != 1 ) {} // expected-warning{{Pass-by-value argument in function call is undefined}}
@@ -631,7 +631,7 @@ typedef void (^RDar_7462324_Callback)(id obj);
 //===----------------------------------------------------------------------===//
 
 int rdar7468209_aux();
-void rdar7468209_aux2();
+void rdar7468209_aux_2();
 
 void rdar7468209() {
   __block int x = 0;
index 53b9b6f4fa67ad24091bc4a681a5a906c31fba71..29a27ed623544f4f482288e125ceb647270be928 100644 (file)
@@ -460,6 +460,8 @@ void test_block_cast() {
   (void (^)(void *))test_block_cast_aux(); // expected-warning{{expression result unused}}
 }
 
+int OSAtomicCompareAndSwap32Barrier();
+
 // Test comparison of 'id' instance variable to a null void* constant after
 // performing an OSAtomicCompareAndSwap32Barrier.
 // This previously was a crash in RegionStoreManager.
@@ -493,6 +495,8 @@ void test_invalidate_cast_int() {
     return;
 }
 
+int ivar_getOffset();
+
 // Reduced from a crash involving the cast of an Objective-C symbolic region to
 // 'char *'
 static NSNumber *test_ivar_offset(id self, SEL _cmd, Ivar inIvar) {
index 1eae5d779dd680e35f8f228da9c5d29d71ca8d1e..b3558a63214724deb661e2d31f8ea46b1f5b6f84 100644 (file)
@@ -13,6 +13,8 @@ typedef struct {
   QuxSize size;
 } __Request__SetPortalSize_t;
 
+double __Foo_READSWAP__double(double*);
+
 static __inline__ bar_return_t
 __Beeble_check__Request__SetPortalSize_t(__attribute__((__unused__)) __Request__SetPortalSize_t *In0P) {
   if (In0P->Foo.int_rep != Foo_record.int_rep) {
index 58321bb388dc3a3e6b3b775e055b5125990ca801..2ef061a9988538bef6d5f6b946d34c9e72b22135 100644 (file)
@@ -86,6 +86,8 @@ struct foo {
   NSDate* f;
 };
 
+CFAbsoluteTime CFAbsoluteTimeGetCurrent(void);
+
 CFAbsoluteTime f4() {
   struct foo x;
   
index 35dc6e7110814d18203b1dab3c41630d9223206f..3a0142b2955023701f8189a016db5c97190c1491 100644 (file)
@@ -93,6 +93,8 @@ typedef unsigned long NSUInteger;
 // Test to see if we *issue* an error when we store the pointer
 // to a struct.  This differs from basic store.
 
+CFAbsoluteTime CFAbsoluteTimeGetCurrent(void);
+
 struct foo {
   NSDate* f;
 };
index f5d985ebd4489bdb758882337ee95c1bea4f46ba..691e2a2f58a5f7d1ce25e0fdbd13ffcb2c073f35 100644 (file)
@@ -881,6 +881,8 @@ void IOServiceAddMatchingNotification_wrapper(IONotificationPortRef notifyPort,
 // Test of handling objects whose references "escape" to containers.
 //===----------------------------------------------------------------------===//
 
+void CFDictionaryAddValue();
+
 // <rdar://problem/6539791>
 void rdar_6539791(CFMutableDictionaryRef y, void* key, void* val_key) {
   CFMutableDictionaryRef x = CFDictionaryCreateMutable(kCFAllocatorDefault, 1, &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks);
index ce86ad05320a846bd8ca8d56fa3bf8a144401769..216856e549c7f56bf8c7027d99f21032bddbd76e 100644 (file)
@@ -20,6 +20,7 @@ void f4() {
 // Test uninitialized value due to part of the structure being uninitialized.
 struct TestUninit { int x; int y; };
 struct TestUninit test_uninit_aux();
+void test_unit_aux2(int);
 void test_uninit_pos() {
   struct TestUninit v1 = { 0, 0 };
   struct TestUninit v2 = test_uninit_aux();
index 1d7c87bfbf067e449a572016330c80486a3d1ca6..5407ba9824f721dcc794397bd1130103b4e82f75 100644 (file)
@@ -4,7 +4,7 @@
 
 
 
-
+int ec(int, int);
 
 
  void x() {
index 0966989bf9a3c7a442c6edd0b247421857437dce..3f064a01c867b6f10be771059056ef1bb2a04753 100644 (file)
@@ -2,6 +2,8 @@
 
 static void (*fp0)(void) __attribute__((noreturn));
 
+void fatal();
+
 static void __attribute__((noreturn)) f0(void) {
   fatal();
 } // expected-warning {{function declared 'noreturn' should not return}}
index af364b4f863a9b1f9cd2bd4a319ca31e2d17cc0a..353a5702eafab63181cee89c3e015714bf78773c 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: %clang_cc1 %s -verify -fblocks -fsyntax-only
 
+void xx();
+
 int a() { 
   A:if (1) xx();
   return ^{A:return 1;}();
index c1a2f08ff76f50ff0d3417ef803c47ff861ba4c3..52cebfe8922f730025273dfda7713d530696230b 100644 (file)
@@ -64,6 +64,7 @@ int test4(int argc) {  // rdar://6251437
 }
 
 
+void bar(void*);
 // rdar://6257721 - reference to static/global is byref by default.
 static int test5g;
 void test5() {
@@ -157,6 +158,8 @@ void test16(__block int i) { // expected-error {{__block attribute not allowed,
   __block int (*ap)[size]; // expected-error {{__block attribute not allowed on declaration with a variably modified type}}
 }
 
+void f();
+
 void test17() {
   void (^bp)(int);
   void (*rp)(int);
index 4240b0985625a5ac6cd997b33b43ff4931faaecf..6416545cb7ea387161256e97450c63e321b34777 100644 (file)
@@ -76,6 +76,7 @@ static int funk(char *s) {
   else 
     return 0;
 }
+void next();
 void foo4() {
   int (^xx)(const char *s) = ^(char *s) { return 1; }; // expected-error {{incompatible block pointer types initializing 'int (^)(char *)', expected 'int (^)(char const *)'}}
   int (*yy)(const char *s) = funk; // expected-warning {{incompatible pointer types initializing 'int (char *)', expected 'int (*)(char const *)'}}
index e67580ace6006fe7aa8e1bba545123d634651db1..c3dbe1321b6b2fa884343e4606a2df42c45e706e 100644 (file)
@@ -3,6 +3,7 @@
 const char* test1 = 1 ? "i" : 1 == 1 ? "v" : "r";
 
 void _efree(void *ptr);
+void free(void *ptr);
 
 int _php_stream_free1() {
   return (1 ? free(0) : _efree(0)); // expected-error {{incompatible type returning 'void', expected 'int'}}
index 67081b5e260357fc6fb77bc8e5469bd763733363..20e4dcd97fabfc5bf8940bf39b24333364e69ce5 100644 (file)
@@ -8,6 +8,7 @@ int printf(const char *restrict, ...);
 int snprintf(char *restrict, size_t, const char *restrict, ...);
 int sprintf(char *restrict, const char *restrict, ...);
 int vasprintf(char **, const char *, va_list);
+int asprintf(char **, const char *, ...);
 int vfprintf(FILE *, const char *restrict, va_list);
 int vprintf(const char *restrict, va_list);
 int vsnprintf(char *, size_t, const char *, va_list);
index 09ecd23ca1bab8138052a4aad174d370951bb773..3d920389a228fdfe6ce0cd1ecd0fab1063eb7207 100644 (file)
@@ -22,7 +22,8 @@ void h() {
 }
 
 void f2() {
-  fprintf(0, "foo"); // expected-error{{implicit declaration of 'fprintf' requires inclusion of the header <stdio.h>}}
+  fprintf(0, "foo"); // expected-error{{implicit declaration of 'fprintf' requires inclusion of the header <stdio.h>}} \
+   expected-warning {{implicit declaration of function 'fprintf' is invalid in C99}}
 }
 
 // PR2892
index fc48895f4eb1feb09c073d8c7cee5b33c35bfa1c..830cde9b9f90d939b790c866473e45eb19c4abec 100644 (file)
@@ -7,7 +7,8 @@ void func() {
    int32_t *vector[16];
    const char compDesc[16 + 1];
    int32_t compCount = 0;
-   if (_CFCalendarDecomposeAbsoluteTimeV(compDesc, vector, compCount)) { // expected-note {{previous implicit declaration is here}}
+   if (_CFCalendarDecomposeAbsoluteTimeV(compDesc, vector, compCount)) { // expected-note {{previous implicit declaration is here}} \
+         expected-warning {{implicit declaration of function '_CFCalendarDecomposeAbsoluteTimeV' is invalid in C99}}
    }
    return ((void *)0); // expected-warning {{void function 'func' should not return a value}}
 }
index 094c12f7d81b9511d0a9fdab59ce00ccf004835b..33e1630864751be80dbe99cbbe72fe16d934807f 100644 (file)
@@ -4,6 +4,8 @@
 - (id) retain;
 @end
 
+int objc_lookUpClass(const char*);
+
 void __raiseExc1() {
  [objc_lookUpClass("NSString") retain]; // expected-warning {{receiver type 'int' is not 'id'}} \
     expected-warning {{method '-retain' not found}}
index 956ae5bdb6cc701f627ac78916942dd658a091ae..abc3420f1bd2c7b40398f39a3c52a383117a64bd 100644 (file)
@@ -34,6 +34,8 @@ typedef unsigned char BOOL;
 }
 @end
 
+void NSLog(id, ...);
+
 int main (int argc, const char * argv[]) {
     NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
     A *a = [[A new] autorelease];
index c96a91a7f815fc6b380ef0057d765fbff1b20c9e..642f50f9e4d6782ba7d84f8322e9117a19ff40d5 100644 (file)
@@ -19,6 +19,9 @@ __attribute__((nonnull(1,3)));
 extern void func4 (void (^block1)(), void (^block2)()) __attribute__((nonnull(1)))
 __attribute__((nonnull(2)));
 
+void func6();
+void func7();
+
 void
 foo (int i1, int i2, int i3, void (^cp1)(), void (^cp2)(), void (^cp3)())
 {
index 108a72988e21fd597b976a071d27cf247a7aa58e..138c43d1a83a894b748dda8be187c839c50206b1 100644 (file)
@@ -5,6 +5,7 @@
 - (void) bar;
 @end
 
+void bar();
 void foo(id x) {
   bar((short<SomeProtocol>)x); // expected-error {{expected ')'}} expected-note {{to match this '('}}
   bar((<SomeProtocol>)x);      // expected-warning {{protocol qualifiers without 'id' is archaic}}