Hi Guys,

I have a real time kernel which I ran lclint on. It's pointed out some
potential bugs, but there one type of error it complains about that I
don't understand.

filefns.c:1247:4: Function types are inconsistent. Parameter 1 is implicitly
                     temp, but unqualified in assigned function: cat_cmnd
  Types are incompatible. (-type will suppress message)
filefns.c:1247:4: Function types are inconsistent. Parameter 2 is implicitly
                     temp, but unqualified in assigned function: cat_cmnd
filefns.c:1248:4: Function types are inconsistent. Parameter 1 is implicitly
                     temp, but unqualified in assigned function: less_cmnd
filefns.c:1248:4: Function types are inconsistent. Parameter 2 is implicitly
                     temp, but unqualified in assigned function: less_cmnd
filefns.c:1249:4: Function types are inconsistent. Parameter 1 is implicitly
                     temp, but unqualified in assigned function: less_cmnd
filefns.c:1249:4: Function types are inconsistent. Parameter 2 is implicitly
                     temp, but unqualified in assigned function: less_cmnd
...

These errors come from a lookup table for commands ie 

typedef struct
{
        char    *(*fn)(int, char **);
        char    *name;
        int     type;
} HScfunc_t;
#define HST_CMND        1
...

static char *
cat_cmnd(argc, argv)
int     argc
char    ** argv
{
        ...
}

static char *
less_cmnd(argc, argv)
int     argc
char    ** argv
{
        ...
}

const HScfunc_t HSfilefns[] =
{
        { cat_cmnd,     "cat",  HST_CMND },
        { less_cmnd,    "less", HST_CMND }, 
        { less_cmnd,    "more", HST_CMND }, 
...
        {0, 0, 0}
};

I've looked up the lclint-guide but can't see an obvious reference to
understanding the problem in my code.

Can someone suggest what I'm doing 'wrong'?

Thanks

Burn Alting
[EMAIL PROTECTED]

Reply via email to