summaryrefslogtreecommitdiffstats
path: root/clang/test
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2009-08-23 00:27:47 +0000
committerEli Friedman <eli.friedman@gmail.com>2009-08-23 00:27:47 +0000
commit16c209610c8b1a271c51c892920ffc4bc2db08ab (patch)
tree6b4c7b9b1f970898c02e0103a0954e8be0155a77 /clang/test
parent79ba8f2edc35a01535dcece188d5d2de65dcb144 (diff)
downloadbcm5719-llvm-16c209610c8b1a271c51c892920ffc4bc2db08ab.tar.gz
bcm5719-llvm-16c209610c8b1a271c51c892920ffc4bc2db08ab.zip
Catch a few more cases of illegal comparisons.
llvm-svn: 79793
Diffstat (limited to 'clang/test')
-rw-r--r--clang/test/Sema/compare.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/clang/test/Sema/compare.c b/clang/test/Sema/compare.c
index 6b64bac37da..395a1a9ef96 100644
--- a/clang/test/Sema/compare.c
+++ b/clang/test/Sema/compare.c
@@ -24,13 +24,15 @@ int pointers(int *a) {
return a > (void *)0; // expected-warning {{comparison of distinct pointer types}}
}
-int function_pointers(int (*a)(int), int (*b)(int)) {
+int function_pointers(int (*a)(int), int (*b)(int), void (*c)(int)) {
return a > b; // expected-warning {{ordered comparison of function pointers}}
return function_pointers > function_pointers; // expected-warning {{ordered comparison of function pointers}}
+ return a > c; // expected-warning {{comparison of distinct pointer types}}
return a == (void *) 0;
- return a == (void *) 1; // expected-warning {{comparison of distinct pointer types}}
+ return a == (void *) 1; // expected-warning {{equality comparison between function pointer and void pointer}}
}
-int void_pointers(void *foo) {
- return foo == NULL;
+int void_pointers(void* foo) {
+ return foo == (void*) 0;
+ return foo == (void*) 1;
}
OpenPOWER on IntegriCloud