Splint
A historical C static-checking tool that augments lint-style analysis with source annotations describing program contracts and assumptions.
Technical Context
Splint extends traditional lint checks with source annotations. Beyond checks such as use-before-definition, unreachable code, ignored return values and fall-through, annotations can express assumptions about pointers, global state and function interfaces.
The approach makes part of programmer intent machine-checkable, but annotation correctness and maintenance become part of the analysis process.
Boundaries
Splint is now most valuable as a historical and conceptual reference; it should not be assumed to represent the behavior of current C toolchains.