34 lines
		
	
	
	
		
			1,020 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
	
		
			1,020 B
		
	
	
	
		
			Text
		
	
	
	
	
	
.NH 1
 | 
						|
Introduction
 | 
						|
.PP
 | 
						|
C [1][2] is a dangerous programming language.
 | 
						|
The programmer is allowed to do almost anything, as long as
 | 
						|
the syntax of the program is correct.
 | 
						|
This has a reason. In this way it is possible to make a fast
 | 
						|
compiler which produces fast code.
 | 
						|
The compiler will be fast because it doesn't do much checking
 | 
						|
at compile time.
 | 
						|
The code is fast because the compiler doesn't generate run time
 | 
						|
checks.
 | 
						|
The programmer should protect himself against producing error
 | 
						|
prone code.
 | 
						|
One way to do that is to obey the
 | 
						|
.I
 | 
						|
Ten Commandments for C programmers
 | 
						|
.R
 | 
						|
[appendix B].
 | 
						|
This document describes an implementation of the
 | 
						|
.I lint
 | 
						|
program, as referred to in Commandment 1.
 | 
						|
It is a common error to run
 | 
						|
.I lint
 | 
						|
only after a few hours of debugging and some
 | 
						|
bug can't be found.
 | 
						|
.I Lint
 | 
						|
should be run when large pieces of new code are accepted by the
 | 
						|
compiler and as soon as bugs arise.
 | 
						|
Even for working programs it is useful to run
 | 
						|
.I lint,
 | 
						|
because it can find constructions that may lead to problems in 
 | 
						|
the future.
 | 
						|
.bp
 |