[PATCH] sparse function pointer arguments now accept void pointers

From: Dave Olien (dmo@osdl.org)
Date: Thu Jul 31 2003 - 00:28:10 EST


This patch eliminates warnings of the form:

        incorrect type in argument 1 (different base types)

from code of the form:

#define VPTR ((void *)1)

void f( int (g)(void))
{
}

int
main(void)
{
        f(VPTR);
        f(0);
}

--- sparse_original/evaluate.c 2003-07-29 14:13:09.000000000 -0700
+++ sparse_patch/evaluate.c 2003-07-30 18:14:25.000000000 -0700
@@ -647,7 +653,7 @@
                 t = t->ctype.base_type;
                 target_as |= t->ctype.as;
         }
- if (t->type == SYM_PTR) {
+ if (t->type == SYM_PTR || t->type == SYM_FN) {
                 struct expression *right = *rp;
                 struct symbol *s = source;
                 int source_as;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Jul 31 2003 - 22:00:48 EST