Splint test?

Hi,

The lint test run by 'make longtest' fails for me, at least on Debian
unstable and FreeBSD 10. I tried both Unbound 1.4.21 and svn r3070 with
splint 3.1.2.

On Debian,

    $ cat testdata/result.00-lint
    minitpkg exe 00-lint
    Description: Put source into lint.
    DateRunStart: 1391623584
    minitpkg exe 00-lint.test
    make[1]: Entering directory `/tmp/unbound-1.4.21'
    splint +quiet -weak -warnposix -unrecog -Din_addr_t=uint32_t -Du_int=unsigned -Du_char=uint8_t -preproc -Drlimit=rlimit64 -D__gnuc_va_list=va_list "-DBN_ULONG=unsigned long" -Dkrb5_int32=int "-Dkrb5_ui_4=unsigned int" -DPQ_64BIT=uint64_t -DRC4_INT=unsigned -fixedformalarray -D"ENGINE=unsigned" -D"RSA=unsigned" -D"DSA=unsigned" -D"EVP_PKEY=unsigned" -D"EVP_MD=unsigned" -D"SSL=unsigned" -D"SSL_CTX=unsigned" -D"X509=unsigned" -D"RC4_KEY=unsigned" -D"EVP_MD_CTX=unsigned" -D"ECDSA_SIG=DSA_SIG" "-Dsigset_t=long" "-D__uint16_t=uint16_t" -I. -I. -I/include services/cache/dns.c
    /usr/include/unistd.h:220:8: Parse Error: Non-function declaration:
        __BEGIN_DECLS : int. (For help on parse errors, see splint -help
        parseerrors.)
    *** Cannot continue.
    make[1]: *** [services/cache/dns.lint] Error 1
    make[1]: Leaving directory `/tmp/unbound-1.4.21'
    00-lint: FAILED
    DateRunEnd: 1391623584
    $

On FreeBSD,

    # cat testdata/result.00-lint
    minitpkg exe 00-lint
    Description: Put source into lint.
    DateRunStart: 1391623696
    minitpkg exe 00-lint.test
    gmake[1]: Entering directory `/root/src/unbound-1.4.21'
    splint +quiet -weak -warnposix -unrecog -Din_addr_t=uint32_t -Du_int=unsigned -Du_char=uint8_t -preproc -Drlimit=rlimit64 -D__gnuc_va_list=va_list "-DBN_ULONG=unsigned long" -Dkrb5_int32=int "-Dkrb5_ui_4=unsigned int" -DPQ_64BIT=uint64_t -DRC4_INT=unsigned -fixedformalarray -D"ENGINE=unsigned" -D"RSA=unsigned" -D"DSA=unsigned" -D"EVP_PKEY=unsigned" -D"EVP_MD=unsigned" -D"SSL=unsigned" -D"SSL_CTX=unsigned" -D"X509=unsigned" -D"RC4_KEY=unsigned" -D"EVP_MD_CTX=unsigned" -D"ECDSA_SIG=DSA_SIG" "-Dsigset_t=long" "-D__uint16_t=uint16_t" -I. -I. -I/include services/cache/dns.c
    touch services/cache/dns.lint
    splint +quiet -weak -warnposix -unrecog -Din_addr_t=uint32_t -Du_int=unsigned -Du_char=uint8_t -preproc -Drlimit=rlimit64 -D__gnuc_va_list=va_list "-DBN_ULONG=unsigned long" -Dkrb5_int32=int "-Dkrb5_ui_4=unsigned int" -DPQ_64BIT=uint64_t -DRC4_INT=unsigned -fixedformalarray -D"ENGINE=unsigned" -D"RSA=unsigned" -D"DSA=unsigned" -D"EVP_PKEY=unsigned" -D"EVP_MD=unsigned" -D"SSL=unsigned" -D"SSL_CTX=unsigned" -D"X509=unsigned" -D"RC4_KEY=unsigned" -D"EVP_MD_CTX=unsigned" -D"ECDSA_SIG=DSA_SIG" "-Dsigset_t=long" "-D__uint16_t=uint16_t" -I. -I. -I/include services/cache/infra.c
    touch services/cache/infra.lint
    splint +quiet -weak -warnposix -unrecog -Din_addr_t=uint32_t -Du_int=unsigned -Du_char=uint8_t -preproc -Drlimit=rlimit64 -D__gnuc_va_list=va_list "-DBN_ULONG=unsigned long" -Dkrb5_int32=int "-Dkrb5_ui_4=unsigned int" -DPQ_64BIT=uint64_t -DRC4_INT=unsigned -fixedformalarray -D"ENGINE=unsigned" -D"RSA=unsigned" -D"DSA=unsigned" -D"EVP_PKEY=unsigned" -D"EVP_MD=unsigned" -D"SSL=unsigned" -D"SSL_CTX=unsigned" -D"X509=unsigned" -D"RC4_KEY=unsigned" -D"EVP_MD_CTX=unsigned" -D"ECDSA_SIG=DSA_SIG" "-Dsigset_t=long" "-D__uint16_t=uint16_t" -I. -I. -I/include services/cache/rrset.c
    touch services/cache/rrset.lint
    splint +quiet -weak -warnposix -unrecog -Din_addr_t=uint32_t -Du_int=unsigned -Du_char=uint8_t -preproc -Drlimit=rlimit64 -D__gnuc_va_list=va_list "-DBN_ULONG=unsigned long" -Dkrb5_int32=int "-Dkrb5_ui_4=unsigned int" -DPQ_64BIT=uint64_t -DRC4_INT=unsigned -fixedformalarray -D"ENGINE=unsigned" -D"RSA=unsigned" -D"DSA=unsigned" -D"EVP_PKEY=unsigned" -D"EVP_MD=unsigned" -D"SSL=unsigned" -D"SSL_CTX=unsigned" -D"X509=unsigned" -D"RC4_KEY=unsigned" -D"EVP_MD_CTX=unsigned" -D"ECDSA_SIG=DSA_SIG" "-Dsigset_t=long" "-D__uint16_t=uint16_t" -I. -I. -I/include util/data/dname.c
    /usr/include/xlocale/_ctype.h:52:14: Parse Error: Non-function declaration:
        _RuneLocale : int. (For help on parse errors, see splint -help
        parseerrors.)
    *** Cannot continue.
    gmake[1]: *** [util/data/dname.lint] Error 1
    gmake[1]: Leaving directory `/root/src/unbound-1.4.21'
    00-lint: FAILED
    DateRunEnd: 1391623696

Hi Robert,

Hi,

The lint test run by 'make longtest' fails for me, at least on
Debian unstable and FreeBSD 10. I tried both Unbound 1.4.21 and
svn r3070 with splint 3.1.2.

Splint gives many false positives. On (some of) our systems it is all
clean, but on other systems we just get parse failures. Probably due
to system headers or library headers. "__BEGIN_DECLS" sounds like a
parse error.

There is little we can do but turn off splint tests. Thank you for
the reports, in any case.

Best regards,
   Wouter