Prep for new warning.

llvm-svn: 76709
This commit is contained in:
Mike Stump 2009-07-22 00:43:08 +00:00
parent 891436d54c
commit 753d120975
54 changed files with 101 additions and 84 deletions

View File

@ -1,6 +1,6 @@
// RUN: clang-cc -fsyntax-only -verify %s
int foo() {
void foo() {
{
typedef float X;
}

View File

@ -11,7 +11,7 @@ void * __ptr64 PtrToPtr64(const void *p)
{
return((void * __ptr64) (unsigned __int64) (ULONG_PTR)p );
}
__forceinline InterlockedBitTestAndSet (long *Base, long Bit) // expected-warning {{type specifier missing, defaults to 'int'}}
void __forceinline InterlockedBitTestAndSet (long *Base, long Bit)
{
__asm {
mov eax, Bit

View File

@ -1,6 +1,6 @@
/* RUN: clang-cc -fsyntax-only -verify %s
*/
int foo(int A) { /* expected-note {{previous definition is here}} */
void foo(int A) { /* expected-note {{previous definition is here}} */
int A; /* expected-error {{redefinition of 'A'}} */
}

View File

@ -1,9 +1,9 @@
/* RUN: clang-cc -fsyntax-only -verify %s
*/
int foo() {
void foo() {
break; /* expected-error {{'break' statement not in loop or switch statement}} */
}
int foo2() {
void foo2() {
continue; /* expected-error {{'continue' statement not in loop statement}} */
}

View File

@ -18,7 +18,7 @@ int *A;
struct str;
int test2(int *P, int A) {
void test2(int *P, int A) {
struct str;
// Hard case for array decl, not Array[*].
@ -26,11 +26,11 @@ int test2(int *P, int A) {
}
typedef int atype;
int test3(x,
atype /* expected-error {{unexpected type name 'atype': expected identifier}} */
) int x, atype; {}
void test3(x,
atype /* expected-error {{unexpected type name 'atype': expected identifier}} */
) int x, atype; {}
int test4(x, x) int x; {} /* expected-error {{redefinition of parameter 'x'}} */
void test4(x, x) int x; {} /* expected-error {{redefinition of parameter 'x'}} */
// PR3031

View File

@ -15,6 +15,7 @@ void test2() {
int test3() {
int a[2];
a[0] = test3; // expected-warning{{incompatible pointer to integer conversion assigning 'int ()', expected 'int'}}
return 0;
}
short x; void test4(char c) { x += c; }
int y; void test5(char c) { y += c; }

View File

@ -1,7 +1,6 @@
// RUN: clang-cc -fsyntax-only -verify %s
int main()
{
id a;
[a bla:0 6:7]; // expected-error {{expected ']'}}
}
int main() {
id a;
[a bla:0 6:7]; // expected-error {{expected ']'}}
}

View File

@ -8,10 +8,10 @@ float test2241[2] = {
// Testcase derived from PR2692
static char *f (char * (*g) (char **, int), char **p, ...) {
char *s;
va_list v; // expected-error {{identifier}}
s = g (p, __builtin_va_arg(v, int)); // expected-error {{identifier}}
static void f (char * (*g) (char **, int), char **p, ...) {
char *s;
va_list v; // expected-error {{identifier}}
s = g (p, __builtin_va_arg(v, int)); // expected-error {{identifier}}
}
@ -20,7 +20,7 @@ static char *f (char * (*g) (char **, int), char **p, ...) {
// rdar://6094870
int test(int a) {
void test(int a) {
struct { int i; } x;
if (x.hello) // expected-error {{no member named 'hello'}}
@ -61,7 +61,7 @@ struct S A = {
};
// rdar://6248081
int test6248081() {
void test6248081() {
[10] // expected-error {{expected expression}}
}

View File

@ -1,10 +1,10 @@
// RUN: clang-cc -fsyntax-only -verify %s
int test1() {
void test1() {
{ ; { ;;}} ;;
}
int test2() {
void test2() {
if (0) { if (1) {} } else { }
do { } while (0);
@ -18,7 +18,7 @@ int test2() {
for (int X = 0; 0; 0);
}
int test3() {
void test3() {
switch (0) {
case 4:
@ -30,7 +30,7 @@ int test3() {
}
}
int test4() {
void test4() {
if (0); // expected-warning {{if statement has empty body}}
int X; // declaration in a block.

View File

@ -10,5 +10,5 @@
@implementation INTF
- (id<P>)IMeth { return [(id<P>)self Meth: (id<P>)0]; }
- (id<P>) Meth : (id<P>) Arg {}
- (id<P>) Meth : (id<P>) Arg { return 0; }
@end

View File

@ -11,8 +11,8 @@
@end
@implementation Intf
- (char *) MyMeth : (double) arg1 : (char *[12]) arg2{}
- (char *) MyMeth : (double) arg1 : (char *[12]) arg2{ return 0; }
- (void) MyProtoMeth : (int **) arg1 : (void*) arg2 {}
+ (void) MyProtoMeth : (int **) arg1 : (void*) arg2 {}
- (id) address:(void *)location with:(unsigned **)arg2{}
- (id) address:(void *)location with:(unsigned **)arg2{ return 0; }
@end

View File

@ -9,7 +9,7 @@
{
return 0;
}
- (id) allKeys {}
- (id) allKeys { return 0; }
@end
@interface MyList (BasicTest)

View File

@ -9,7 +9,7 @@
{
return 0;
}
- (id) allKeys {}
- (id) allKeys { return 0; }
@end
@interface MyList (BasicTest)

View File

@ -1,2 +1,2 @@
// RUN: clang-cc -fsyntax-only -std=c99 -verify %s
int bb(int sz, int ar[sz][sz]) { }
void bb(int sz, int ar[sz][sz]) { }

View File

@ -1,5 +1,5 @@
// RUN: clang-cc -fsyntax-only -verify %s
int aa(int b, int x[sizeof b]) {}
void aa(int b, int x[sizeof b]) {}
void foo(int i, int A[i]) {}

View File

@ -45,7 +45,7 @@ typedef int TA[I]; // expected-error {{variable length array declaration not all
void strFunc(char *);
const char staticAry[] = "test";
int checkStaticAry() {
void checkStaticAry() {
strFunc(staticAry); // expected-warning{{passing 'char const [5]' discards qualifiers, expected 'char *'}}
}

View File

@ -219,10 +219,10 @@ void varArray() {
}
// PR2151
int emptyInit() {struct {} x[] = {6};} //expected-warning{{empty struct extension}} expected-error{{initializer for aggregate with no elements}}
void emptyInit() {struct {} x[] = {6};} //expected-warning{{empty struct extension}} expected-error{{initializer for aggregate with no elements}}
int noNamedInit() {
struct {int:5;} x[] = {6}; //expected-error{{initializer for aggregate with no elements}}
void noNamedInit() {
struct {int:5;} x[] = {6}; //expected-error{{initializer for aggregate with no elements}}
}
struct {int a; int:5;} noNamedImplicit[] = {1,2,3};
int noNamedImplicitCheck[sizeof(noNamedImplicit) == 3 * sizeof(*noNamedImplicit) ? 1 : -1];

View File

@ -5,7 +5,7 @@ extern int g1 __attribute__((weak_import));
int g2 __attribute__((weak));
int g3 __attribute__((weak_import)); // expected-warning {{'weak_import' attribute cannot be specified on a definition}}
int __attribute__((weak_import)) g4(void);
int __attribute__((weak_import)) g5(void) {
void __attribute__((weak_import)) g5(void) {
}
struct __attribute__((weak)) s0 {}; // expected-warning {{'weak' attribute only applies to variable and function types}}

View File

@ -44,7 +44,7 @@ int test2(double (^S)()) {
int^ x; // expected-error {{block pointer to non-function type is invalid}}
int^^ x1; // expected-error {{block pointer to non-function type is invalid}} expected-error {{block pointer to non-function type is invalid}}
int test3() {
void test3() {
char *^ y; // expected-error {{block pointer to non-function type is invalid}}
}

View File

@ -1,6 +1,6 @@
// RUN: clang-cc -fsyntax-only -verify %s
int foo() {
void foo() {
int a;
__builtin_prefetch(&a);
__builtin_prefetch(&a, 1);

View File

@ -34,7 +34,7 @@ void test7() {
// atomics.
unsigned char test9(short v) {
void test9(short v) {
unsigned i, old;
old = __sync_fetch_and_add(); // expected-error {{too few arguments to function call}}

View File

@ -36,7 +36,7 @@ int *__restrict; /* expected-error {{expected identifier}} */
/* Implicit int, always ok */
test6() {}
test6() { return 0; }
/* PR2012 */
test7; /* expected-warning {{declaration specifier missing, defaulting to 'int'}} */

View File

@ -19,5 +19,6 @@ ssize_t sendFileDescriptor(int fd, void *data, size_t nbytes, int sendfd) {
union {
char control[(((__darwin_size_t)((char *)(sizeof(struct cmsghdr)) + (sizeof(__darwin_size_t) - 1)) &~ (sizeof(__darwin_size_t) - 1)) + ((__darwin_size_t)((char *)(sizeof(int)) + (sizeof(__darwin_size_t) - 1)) &~ (sizeof(__darwin_size_t) - 1)))];
} control_un;
return 0;
}

View File

@ -6,11 +6,11 @@ int testx[(sizeof(x) == sizeof(int) * 10) ? 1 : -1];
int (*a)(int (*x)[10], int (*y)[]);
int (*a)(int (*x)[], int (*y)[5]);
int b() {
int x[10], y[5];
a(&x, &y);
a(&y, &y); // expected-warning {{incompatible pointer}}
a(&x, &x); // expected-warning {{incompatible pointer}}
void b() {
int x[10], y[5];
a(&x, &y);
a(&y, &y); // expected-warning {{incompatible pointer}}
a(&x, &x); // expected-warning {{incompatible pointer}}
}

View File

@ -1,10 +1,9 @@
// RUN: clang-cc %s -verify -fheinous-gnu-extensions
int foo() {
int a;
// PR3788
asm("nop" : : "m"((int)(a))); // expected-warning {{cast in a inline asm context requiring an l-value}}
// PR3794
asm("nop" : "=r"((unsigned)a)); // expected-warning {{cast in a inline asm context requiring an l-value}}
void foo() {
int a;
// PR3788
asm("nop" : : "m"((int)(a))); // expected-warning {{cast in a inline asm context requiring an l-value}}
// PR3794
asm("nop" : "=r"((unsigned)a)); // expected-warning {{cast in a inline asm context requiring an l-value}}
}

View File

@ -1,6 +1,7 @@
// RUN: clang-cc -fsyntax-only %s -verify -pedantic
foo() { // expected-warning {{type specifier missing, defaults to 'int'}}
return 0;
}
y; // expected-warning {{type specifier missing, defaults to 'int'}}

View File

@ -1,7 +1,7 @@
// RUN: clang-cc %s -fsyntax-only -verify
int f(int a) { } // expected-note {{previous definition is here}}
int f(int a) { return 0; } // expected-note {{previous definition is here}}
int f(int);
int f(int a) { } // expected-error {{redefinition of 'f'}}
int f(int a) { return 0; } // expected-error {{redefinition of 'f'}}
// <rdar://problem/6097326>
int foo(x) {

View File

@ -57,7 +57,7 @@ struct bar_baz {
} mode;
int nowrap;
};
int
void
wizbiz_quxPoof(z)
z_foop z;
{

View File

@ -8,9 +8,8 @@ char* foo(char *fmt, __builtin_va_list ap)
// PR2692
typedef __builtin_va_list va_list;
static char *f (char * (*g) (char **, int), char **p, ...) {
char *s;
va_list v;
s = g (p, __builtin_va_arg(v, int));
static void f (char * (*g) (char **, int), char **p, ...) {
char *s;
va_list v;
s = g (p, __builtin_va_arg(v, int));
}

View File

@ -54,7 +54,7 @@ typedef void (*Func)(C); // expected-error {{parameter type 'C' is an abstract c
void t6(Func);
class F {
F a() { } // expected-error {{return type 'F' is an abstract class}}
F a() { while (1) {} } // expected-error {{return type 'F' is an abstract class}}
class D {
void f(F c); // expected-error {{parameter type 'F' is an abstract class}}

View File

@ -8,6 +8,7 @@ int foo() {
return X;
} else {
do_something(X); // expected-warning{{'X' is always zero in this context}}
return 0;
}
}

View File

@ -31,5 +31,6 @@
- (id)harvestPredictivelyProcessedOutputFiles
{
_outputStream.release;
return 0;
}
@end

View File

@ -17,6 +17,7 @@ typedef struct objc_class *Class;
- instanceMethod {
[[self class] classMethod];
return 0;
}
@end

View File

@ -70,6 +70,7 @@ extern NSString * const XCActiveSelectionLevel;
- (NSTextStorage *)contents {
[_contents setDelegate:self]; // expected-warning {{incompatible type sending 'SKTText *', expected 'id<NSTextStorageDelegate>'}}
return 0;
}
@end

View File

@ -13,6 +13,7 @@ extern NSInteger codeAssistantCaseCompareItems(id a, id b, void *context);
NSInteger codeAssistantCaseCompareItems(id<PBXCompletionItem> a, id<PBXCompletionItem> b, void *context)
{
return 0;
}
@interface TedWantsToVerifyObjCDoesTheRightThing

View File

@ -83,6 +83,7 @@ typedef struct __LoreStuffNode {} LoreStuffNode;
- init {
LoreStuffNode *node;
node = &(_historyStuff[1]);
return 0;
}
@end
@ -108,6 +109,7 @@ _nfttFlags;
if (self != ((void *)0)) {
(void)memset(&_nfttFlags, 0, sizeof(struct _OingoBoingoContraptionPeonFlags));
}
return 0;
}
@end

View File

@ -87,6 +87,7 @@ extern NSMutableArray *XCFindPossibleKeyModules(PBXModule *module, BOOL useExpos
PBXModule *obj = [XCFindPossibleKeyModules(pModule, (BOOL)0) objectOfType:type matchingFunction:comparator usingData:data];
}
}
return 0;
}
- (BOOL)buffer:(char *)buf containsAnyPrompts:(char *[])prompts
{

View File

@ -47,7 +47,9 @@ typedef NSUInteger XDSourceLanguage;
+ appendVisibility: (id <XDUMLNamedElement>) element withSpecification: (XDSCDisplaySpecification *) displaySpec to: (NSMutableAttributedString *) attributedString
{
return 0;
}
+ (NSUInteger) compartmentsForClassifier: (id <XDSCClassifier>) classifier withSpecification: (XDSCDisplaySpecification *) displaySpec {
return 0;
}
@end

View File

@ -7,6 +7,6 @@
@end
@implementation Intf
- (in out bycopy id) address:(byref inout void *)location with:(out oneway unsigned **)arg2{}
- (id) another:(void *)location with:(unsigned **)arg2 {}
- (in out bycopy id) address:(byref inout void *)location with:(out oneway unsigned **)arg2{ return 0; }
- (id) another:(void *)location with:(unsigned **)arg2 { return 0; }
@end

View File

@ -35,8 +35,8 @@ extern NSString *const NSWillBecomeMultiThreadedNotification;
@implementation SenTestTool
+ (void) initialize {}
+(SenTestTool *) sharedInstance {}
-(int) run {}
+(SenTestTool *) sharedInstance { return 0; }
-(int) run { return 0; }
+(int) run {
return[[self sharedInstance] run];
}
@ -57,6 +57,7 @@ extern NSString *const NSWillBecomeMultiThreadedNotification;
- whatever {
id obj = [[XX alloc] init];
[[obj class] classMethod];
return 0;
}
@end

View File

@ -29,6 +29,7 @@ static NSMutableArray * recentCompletions = ((void *)0);
[(id)item setPriority:[item priority] / [PBXCodeAssistant factorForRecentCompletion:[item name]]];
}
}
return 0;
}
@end

View File

@ -8,8 +8,8 @@
@implementation A
-(void) setMoo: (float) x {} // expected-warning {{conflicting parameter types in implementation of 'setMoo:': 'int' vs 'float'}}
- (char) setMoo1: (int) x {} // expected-warning {{conflicting return type in implementation of 'setMoo1:': 'int' vs 'char'}}
- (int) setOk : (int) x : (double) d {}
- (char) setMoo1: (int) x { return 0; } // expected-warning {{conflicting return type in implementation of 'setMoo1:': 'int' vs 'char'}}
- (int) setOk : (int) x : (double) d { return 0; }
@end
@ -20,7 +20,7 @@
@implementation C
+(float) cMoo: // expected-warning {{conflicting return type in implementation of 'cMoo:': 'void' vs 'float'}}
(float) x {} // expected-warning {{conflicting parameter types in implementation of 'cMoo:': 'int' vs 'float'}}
(float) x { return 0; } // expected-warning {{conflicting parameter types in implementation of 'cMoo:': 'int' vs 'float'}}
@end
@ -31,7 +31,6 @@
@implementation A(CAT)
-(float) setCat: // expected-warning {{conflicting return type in implementation of 'setCat:': 'void' vs 'float'}}
(float) x {} // expected-warning {{conflicting parameter types in implementation of 'setCat:': 'int' vs 'float'}}
+ (int) cCat: (int) x {} // expected-warning {{conflicting return type in implementation of 'cCat:': 'void' vs 'int'}}
(float) x { return 0; } // expected-warning {{conflicting parameter types in implementation of 'setCat:': 'int' vs 'float'}}
+ (int) cCat: (int) x { return 0; } // expected-warning {{conflicting return type in implementation of 'cCat:': 'void' vs 'int'}}
@end

View File

@ -38,5 +38,5 @@
- (void)forwardInvocation:(NSInvocation *)anInvocation
{
}
- (id) init {}
- (id) init { return 0; }
@end

View File

@ -29,6 +29,7 @@
o = x.foo;
[x setFoo:o];
x.foo = o;
return 0;
}
@end

View File

@ -55,10 +55,11 @@ NSSize minimumSize;
@implementation OrganizerTabView
@dynamic tabHeaderView, headerRect, minimumSize;
-(CGFloat) tabAreaThickness {}
-(CGFloat) tabAreaThickness { return 0; }
-(NSRectEdge) rectEdgeForTabs {
NSRect dummy, result = {};
NSDivideRect(self.bounds, &result, &dummy, self.tabAreaThickness, self.rectEdgeForTabs);
return 0;
}
@end

View File

@ -8,9 +8,7 @@
@implementation SSyncCEList
- (id) list
{
}
- (id) list { return 0; }
@end
@interface SSyncConflictList : SSyncCEList

View File

@ -26,7 +26,7 @@
@end
@implementation B1
-foo {};
-foo { return 0; };
@end
// Interface conforms to a protocol whose methods are provided by an

View File

@ -44,6 +44,7 @@
[_foo release];
[_bar release];
[super dealloc];
return 0;
}
@end

View File

@ -35,14 +35,16 @@ typedef struct _IBInset {} IBInset;
@interface NSView (NSView_IBViewProtocol) <IBViewProtocol> - (NSRect)layoutRect; @end
typedef enum { NSProTextFieldSquareBezel = 0, NSProTextFieldRoundedBezel = 1, NSProTextFieldDisplayBezel = 2 } MKModuleReusePolicy;
@implementation NSProBox(IBAdditions)
-(NSString *)inspectorClassName {}
-(NSString *)inspectorClassName { return 0; }
-(IBInset)ibShadowInset {
if ([self boxType] == NSBoxSeparator) {
return [super ibShadowInset];
}
while (1) {}
}
-(NSSize)minimumFrameSizeFromKnobPosition:(IBKnobPosition)knobPosition {
if ([self boxType] != NSBoxSeparator)
return [super minimumFrameSizeFromKnobPosition:knobPosition];
while (1) {}
}
@end

View File

@ -21,6 +21,7 @@
+ classMethod {
[super cMethod]; // expected-warning{{method '+cMethod' not found (return type defaults to 'id')}}
return 0;
}
@end

View File

@ -3,7 +3,7 @@
@interface PBXTrackableTaskManager @end
@implementation PBXTrackableTaskManager
- (id) init {}
- (id) init { return 0; }
- (void) unregisterTask:(id) task {
@synchronized (self) {
id taskID = [task taskIdentifier]; // expected-warning {{method '-taskIdentifier' not found (return type defaults to 'id')}}

View File

@ -45,8 +45,7 @@ typedef enum { Foo_HUH_NONE } FooHUHCode;
}
@property(copy) NSString *author;
- (BOOL) isInteresting;
@end NSString *FooHUHCodeToString(FooHUHCode HUH) {
}
@end NSString *FooHUHCodeToString(FooHUHCode HUH) { return 0; }
@interface FooHUHCodeToStringTransformer: NSValueTransformer {
}
@end @implementation FooPlaypenEntry @synthesize author = _author;
@ -62,12 +61,14 @@ typedef enum { Foo_HUH_NONE } FooHUHCode;
}
}
}
return 0;
}
- (FooHUHCode) HUH {
if (_HUH == Foo_HUH_NONE) {
if (_mostInterestingChild)
return [_mostInterestingChild HUH];
}
return 0;
}
@end

View File

@ -44,6 +44,7 @@
[_foo release];
[_bar release];
[super dealloc];
return 0;
}
@end

View File

@ -4,7 +4,7 @@ struct make1 {
typedef T __attribute__((ext_vector_type(Length))) type;
};
int test_make1() {
void test_make1() {
make1<int, 5>::type x;
x.x = 4;
}