View Single Post
Old 10th May 2008
TerryP's Avatar
TerryP TerryP is offline
Arp Constable
 
Join Date: May 2008
Location: USofA
Posts: 1,547
Default

lint is at least installed as part of the FreeBSD and OpenBSD (although I always opt into installing development tools/compilers).


The versions in FreeBSD and OpenBSD are slightly different and there is also splint available in ports (formally lclint I think) which I'd guess is what most Linux distros would ship with.


My shells rc file usually adds system specific aliases for the installed gcc and lint. Typically defining lint and gcc with the most switches I always use that are also common to all of my systems. Along with lint_all, lint_ansi, and lint_traditional, gcc_debug, gcc_wall, and gcc_optimize with their obvious meanings but tuned to the local lint/gcc setup.


from my ~/.zshrc on FreeBSD:

Code:
alias   gcc='gcc -Wall -W -Wpointer-arith -Wbad-function-cast -std=c99 '
alias   gcc_wall='gcc -Wall -Wpointer-arith -Wcast-qual -Wcast-align \
        -Wconversion -Waggregate-return -Wstrict-prototypes \
        -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls \
        -Winline -Wnested-externs -std=c99 -march=i686 -pipe'
alias   gcc_optimize=' -fforce-mem -fforce-addr -finline-functions \
                        -fstrength-reduce  -floop-optimize -O3'
alias   gcc_debug='gcc -ggdb3'
alias   lint='lint -cehzs'
alias   lint_all='lint -aaabcehHz'
alias   lint_ansi='lint -aaabcehHzs'
alias   lint_traditional='lint -aaabcehHzt'

I usually look these up when I write makefiles.
__________________
My Journal

Thou shalt check the array bounds of all strings (indeed, all arrays), for surely where thou typest ``foo'' someone someday shall type ``supercalifragilisticexpialidocious''.
Reply With Quote