Lint (software): Difference between revisions
No edit summary |
No edit summary |
||
Line 5: | Line 5: | ||
The term was derived from the name of the undesirable bits of fiber and fluff found in [[sheep]]'s [[wool]]. |
The term was derived from the name of the undesirable bits of fiber and fluff found in [[sheep]]'s [[wool]]. |
||
Many of the forms of analysis performed by Lint-like tools are also performed by [[ |
Many of the forms of analysis performed by Lint-like tools are also performed by [[optimizing compiler]]s (whose prime motivation is to generate higher efficiency assembly code), and such [[compiler]]s are also starting to support the detection of many of the constructs traditionally warned about by Lint. |
||
Writers of Lint-like tools have continued to improve the range of suspicious constructs that are detected. Modern tools (see [[List of tools for static code analysis]]) perform forms of analysis that many optimizing compilers typically don't do, such as cross-module consistency checking, checking that the code will be portable to other compilers, and support for annotations to specify the intended behavior or properties of code. |
Writers of Lint-like tools have continued to improve the range of suspicious constructs that are detected. Modern tools (see [[List of tools for static code analysis]]) perform forms of analysis that many optimizing compilers typically don't do, such as cross-module consistency checking, checking that the code will be portable to other compilers, and support for annotations to specify the intended behavior or properties of code. |
Revision as of 06:15, 13 November 2006
Lint was the original name given to a particular tool that flagged suspicious and non-portable constructs (ie, likely to be bugs) in C language source code. The term is now applied generically to tools that flag suspicious usage in software written in any computer language. The term lint-like behavior is sometimes applied to the process of flagging suspicious language usage. Lint-like tools generally perform static analysis of source code.
Suspicious usage includes things like variables being used before being set, conditions that are always true/false and calculations whose result is likely to be outside the range of values representable in the type used.
The term was derived from the name of the undesirable bits of fiber and fluff found in sheep's wool.
Many of the forms of analysis performed by Lint-like tools are also performed by optimizing compilers (whose prime motivation is to generate higher efficiency assembly code), and such compilers are also starting to support the detection of many of the constructs traditionally warned about by Lint.
Writers of Lint-like tools have continued to improve the range of suspicious constructs that are detected. Modern tools (see List of tools for static code analysis) perform forms of analysis that many optimizing compilers typically don't do, such as cross-module consistency checking, checking that the code will be portable to other compilers, and support for annotations to specify the intended behavior or properties of code.
Lint first appeared (outside of Bell Labs) in the seventh version (V7) of the UNIX operating system in 1979. It was a part of PCC, the Portable C Compiler, which was a second compiler included with that system (aside from the principal PDP-11 compiler).
See also
Reference
- Stephen Johnson. Lint, a C program checker. Computer Science Technical Report 65, Bell Laboratories, December 1977.