Andrew Lister wrote:

> access.c:73: Unrecognized identifier: strdup
>   Identifier used in code has not been declared. (-unrecog will suppress
>   message)

As you are running lclint with the strict POSIX lib it does
not recognize `strdup'. Not sure whether this is correct,
however it is defined in the Unix library. So you'll either
have to use the Unix library or put a prototype for lclint only
in one of your headers read by the source files using `strdup':

  #ifdef __LCLINT__
  extern char *strdup (char *s) /*@*/ ;
  #endif /* __LCLINT__ */

[declaration from /path/to/lclint/lib/unix.h]

> The second one is:
> 
> /usr/include/arpa/inet.h:52:27: Parse Error: Inconsistent function declaration:

This *should* be the same, the header is of course a system 
header and should thus not be read by lclint. Unfortunately, 
the socket headers are not in the skip list for lclint versions
< 3.0 (alpha), so that lclint will normally not skip these
although it has most definitions needed to check your program
in the unixlib.

So as long as you're not adventurous enough to use the alpha
version you may help yourself again with a preprocessor
conditional:

  #ifndef __LCLINT__
  #include <arpa/inet.h>
  #endif

The code should (but need not necessarily) pass lclint fine.

Cheers,

Herbert

-- 
Dipl.Ing. Martin "Herbert" Dietze -- / -- [EMAIL PROTECTED]
The University of Buckingham ------ / - [EMAIL PROTECTED]
=+=
Katz' Law: Man and nations will act rationally when all other 
           possibilities have been exhausted. 

Reply via email to