480 2000 P 24 12 F (LINT) S 60 J ( - C source code checker.) S
480 2480 P LU (Syntax:) S LE
1920 2720 P 0 12 F 0 12 F (tlint) S 144 J ( [file] [option]*) S
480 3200 P ( \(+|-\)ControlComments \(-\) \(+|-\)Declarations \(-\)) S
480 3440 P ( \(+|-\)Keep \(-\) \(+|-\)StandardLibrary \(+\)) S
480 3680 P ( \(+|-\)Verbose \(-\) \(+|-\)Wide \(-\)) S
480 3920 P ( Configuration=file CrossReference=keyword) S
480 4160 P ( Define=name=value Include=directory) S
480 4400 P ( INSTallation=file Library=lib) S
480 4640 P ( libraryName=string Output=file) S
480 4880 P ( Output+=file StandardInclude=directory) S
480 5120 P ( StandardLibrary=name Summary=file) S
480 5360 P ( Target=keyword indeX=file) S
480 5840 P 0 12 F 24 12 F LU (Examples:) S LE
1920 6080 P 0 12 F 0 12 F (tlint) S 144 J ( myfile) S
1920 6320 P (tlint x=files o=incls ln=proj def=PROJECT=1) S
480 6800 P 0 12 F 24 12 F LU (Options:) S LE
480 7040 P 0 12 F 0 12 F (file) S
1200 7280 P 0 12 F 24 12 F (is) S 84 J ( a) S 85 J ( source) S 84 J ( file) S 85 J ( containing) S 84 J ( C) S 85 J ( code.) S 84 J ( ) S 85 J ( The) S 84 J ( other) S 85 J ( options) S 84 J ( on) S 85 J ( the command) S
1200 7520 P (line) S 89 J ( determine) S 90 J ( whether) S 89 J ( LINT) S 90 J ( scans) S 89 J ( this file for problem spots, or uses) S
1200 7760 P (the) S 60 J ( file to create a summary or an entry in a LINT library.) S
480 8240 P 0 12 F 0 12 F (indeX=file) S
1200 8480 P 0 12 F 24 12 F (gives) S 61 J ( the) S 62 J ( name) S 61 J ( of) S 62 J ( a) S 61 J ( text) S 62 J ( file. Each line in this text file should contain the) S
1200 8720 P (name) S 111 J ( of) S 112 J ( one) S 111 J ( C) S 112 J ( source) S 111 J ( file.) S 112 J ( ) S 111 J ( LINT) S 112 J ( checks) S 111 J ( each of these source files) S
1200 8960 P (individually.) S 92 J ( ) S 93 J ( In) S 92 J ( addition) S 93 J ( to) S 92 J ( a source file name, a line in an index file) S
1200 9200 P (may) S 209 J ( specify ) S 0 12 F 0 10 F (ControlComments) S 0 12 F 24 12 F (,) S 209 J ( ) S 0 12 F 0 10 F (Configuration=) S 0 12 F 24 12 F (,) S 209 J ( ) S 0 12 F 0 10 F (Include=) S 0 12 F 24 12 F () S 209 J ( and) S
1200 9440 P 0 12 F 0 10 F (Define=) S 0 12 F 24 12 F () S 75 J ( options.) S 76 J ( ) S 75 J ( These options only apply to the source file named on) S
1200 9680 P (the) S 60 J ( same line. For example, if the line) S
1632 10160 P 0 12 F 0 12 F (myfile) S 144 J ( define=VERSION=1) S
1200 10640 P 0 12 F 24 12 F (appeared) S 130 J ( in) S 131 J ( an) S 130 J ( index) S 131 J ( file,) S 130 J ( LINT) S 131 J ( would) S 130 J ( use) S 131 J ( the) S 130 J ( given option when) S
1200 10880 P (examining) S 70 J ( ) S 0 12 F 0 10 F (myfile) S 0 12 F 24 12 F () S 71 J ( but) S 70 J ( not) S 71 J ( for) S 70 J ( other files named in the index file. When) S
1200 11120 P (processing) S 83 J ( an) S 84 J ( index) S 83 J ( line,) S 84 J ( LINT) S 83 J ( normally) S 84 J ( uses) S 83 J ( all the options appearing) S
1200 11360 P (on) S 107 J ( the) S 108 J ( main) S 107 J ( command) S 108 J ( line,) S 107 J ( followed by the options specified on the) S
1200 11600 P (index) S 65 J ( line.) S 66 J ( ) S 65 J ( As) S 66 J ( a) S 65 J ( special) S 66 J ( case,) S 65 J ( however,) S 66 J ( ) S 0 12 F 0 10 F (Include=) S 0 12 F 24 12 F () S 65 J ( options on a line in an) S
1200 11840 P (index) S 74 J ( file are used before any ) S 0 12 F 0 10 F (Include=) S 0 12 F 24 12 F () S 74 J ( options on the LINT command) S
1200 12080 P (line.) S 60 J ( Only one ) S 0 12 F 0 10 F (indeX=) S 0 12 F 24 12 F () S 60 J ( option may appear on the command line.) S
480 12560 P 0 12 F 0 12 F (Configuration=file) S
1200 12800 P 0 12 F 24 12 F (specifies) S 140 J ( a) S 141 J ( configuration) S 140 J ( file) S 141 J ( for) S 140 J ( LINT.) S 141 J ( For more information on) S
1200 13040 P (configuration) S 60 J ( files, see below.) S
480 13520 P 0 12 F 0 12 F (+ControlComments) S
1200 13760 P 0 12 F 24 12 F (indicates) S 60 J ( that control comments of the type) S 0 12 F
PE
1632 2000 P (/*VARARGS*/) S
1200 2480 P 24 12 F (should) S 81 J ( be) S 82 J ( processed.) S 81 J ( ) S 82 J ( The) S 81 J ( default) S 82 J ( is) S 81 J ( ) S 0 12 F 0 10 F (-ControlComments) S 0 12 F 24 12 F (,) S 82 J ( in which case) S
1200 2720 P (such) S 69 J ( comments) S 70 J ( are) S 69 J ( ignored.) S 70 J ( ) S 69 J ( A) S 70 J ( ) S 0 12 F 0 10 F (ControlComments) S 0 12 F 24 12 F () S 69 J ( option) S 70 J ( on) S 69 J ( a) S 70 J ( line in an) S
1200 2960 P (index) S 109 J ( file) S 110 J ( overrides) S 109 J ( any) S 110 J ( ) S 0 12 F 0 10 F (ControlComments) S 0 12 F 24 12 F () S 110 J ( option on the main LINT) S
1200 3200 P (command) S 60 J ( line.) S
480 3680 P 0 12 F 0 12 F (CrossReference=keyword) S
1200 3920 P 0 12 F 24 12 F (indicates) S 103 J ( that) S 104 J ( LINT) S 103 J ( output) S 104 J ( should) S 103 J ( include) S 104 J ( a) S 103 J ( cross-reference) S 104 J ( table) S 103 J ( that) S
1200 4160 P (shows) S 66 J ( where) S 67 J ( symbols) S 66 J ( are) S 67 J ( defined,) S 66 J ( referenced, set, and used. \(By default,) S
1200 4400 P (cross-references) S 60 J ( are not provided.\) Possible values for the ) S 0 12 F 0 10 F (keyword) S 0 12 F 24 12 F () S 60 J ( are:) S
1200 4880 P 0 12 F 0 10 F (All) S 0 12 F 24 12 F () S 60 J ( - cross-references all symbols;) S
1200 5360 P 0 12 F 0 10 F (External) S 0 12 F 24 12 F () S 60 J ( - only cross-references external symbols.) S
480 5840 P 0 12 F 0 12 F (+Declarations) S
1200 6080 P 0 12 F 24 12 F (may) S 83 J ( be) S 84 J ( used) S 83 J ( when) S 84 J ( creating) S 83 J ( a) S 84 J ( LINT) S 83 J ( library) S 84 J ( or) S 83 J ( summary) S 84 J ( file.) S 83 J ( ) S 84 J ( With this) S
1200 6320 P (option,) S 71 J ( LINT) S 72 J ( treats) S 71 J ( every) S 72 J ( file) S 71 J ( scope) S 72 J ( declaration) S 71 J ( as) S 72 J ( if) S 71 J ( it) S 72 J ( were) S 71 J ( a definition) S
1200 6560 P (for) S 60 J ( the variable, instead of a simple reference.) S
480 7040 P 0 12 F 0 12 F (Define=name=value) S
1200 7280 P 0 12 F 24 12 F (has) S 60 J ( the same effect as) S
1632 7760 P 0 12 F 0 12 F (#define) S 144 J ( name value) S
1200 8240 P 0 12 F 24 12 F (in) S 123 J ( the) S 124 J ( C source code. The option indicates that ) S 0 12 F 0 10 F ("name") S 0 12 F 24 12 F () S 124 J ( should be) S
1200 8480 P (replaced) S 84 J ( with) S 85 J ( ) S 0 12 F 0 10 F ("value") S 0 12 F 24 12 F () S 84 J ( \(as) S 85 J ( text\) wherever it appears in the source code) S
1200 8720 P (being) S 72 J ( examined.) S 73 J ( ) S 72 J ( If) S 73 J ( ) S 0 12 F 0 10 F ("value") S 0 12 F 24 12 F () S 72 J ( contains) S 73 J ( blanks or tab characters, it should) S
1200 8960 P (be) S 60 J ( enclosed in double or single quotes.) S
480 9440 P 0 12 F 0 12 F (Include=directory) S
1200 9680 P 0 12 F 24 12 F (is) S 61 J ( the) S 62 J ( same) S 61 J ( as) S 62 J ( the) S 61 J ( ) S 0 12 F 0 10 F (Include=) S 0 12 F 24 12 F () S 62 J ( option) S 61 J ( for) S 62 J ( the) S 61 J ( C) S 62 J ( compiler.) S 61 J ( ) S 62 J ( When) S 61 J ( LINT tries) S
1200 9920 P (to) S 60 J ( find quoted include files, as in) S
1632 10400 P 0 12 F 0 12 F (#include) S 144 J ( "file") S
1200 10880 P 0 12 F 24 12 F (it) S 83 J ( begins by searching the given directory for the file. If the file is not) S
1200 11120 P (found) S 79 J ( there,) S 80 J ( LINT) S 79 J ( searches) S 80 J ( any) S 79 J ( directory) S 80 J ( named) S 79 J ( in ) S 0 12 F 0 10 F (StandardInclude=) S
1200 11360 P 0 12 F 24 12 F (options,) S 93 J ( and) S 94 J ( finally) S 93 J ( searches) S 94 J ( the directory that contains the source file) S
1200 11600 P (being examined.) S 95 J ( ) S 94 J ( Any) S 95 J ( number of ) S 0 12 F 0 10 F (Include=) S 0 12 F 24 12 F () S 95 J ( options may be specified.) S
1200 11840 P (Directories) S 60 J ( are searched in the order given on the command line.) S
480 12320 P 0 12 F 0 12 F (INSTallation=file) S
1200 12560 P 0 12 F 24 12 F (tells) S 86 J ( LINT) S 87 J ( where) S 86 J ( to) S 87 J ( find the installation file. The installation file tells) S
1200 12800 P (where) S 129 J ( various) S 130 J ( software) S 129 J ( components) S 130 J ( have been installed. For more) S
1200 13040 P (information,) S 60 J ( see the section on ) S 0 12 F 24 12 F I (Installation) S 60 J ( Files) S E 0 12 F 24 12 F () S 60 J ( below.) S
1200 13520 P (If) S 90 J ( you) S 91 J ( do) S 90 J ( not) S 91 J ( specify) S 90 J ( an) S 91 J ( ) S 0 12 F 0 10 F (INSTallation=) S 0 12 F 24 12 F () S 90 J ( option) S 91 J ( on) S 90 J ( the) S 91 J ( command) S 90 J ( line,) S
1200 13760 P (LINT) S 65 J ( checks) S 66 J ( for) S 65 J ( an) S 66 J ( environment) S 65 J ( variable) S 66 J ( named) S 65 J ( ) S 0 12 F 0 10 F (LINT_INST) S 0 12 F 24 12 F () S 66 J ( and) S 65 J ( uses its) S 0 12 F
PE
1200 2000 P 24 12 F (value) S 90 J ( as) S 91 J ( the) S 90 J ( name) S 91 J ( of) S 90 J ( the) S 91 J ( installation) S 90 J ( file. If this environment variable) S
1200 2240 P (does) S 60 J ( not exist, LINT uses the default installation file.) S
480 2720 P 0 12 F 0 12 F (+Keep) S
1200 2960 P 0 12 F 24 12 F (does) S 77 J ( not) S 78 J ( delete) S 77 J ( intermediate) S 78 J ( files) S 77 J ( left) S 78 J ( by) S 77 J ( the) S 78 J ( preprocessor) S 77 J ( and the LINT) S
1200 3200 P (steps.) S
480 3680 P 0 12 F 0 12 F (Library=lib) S
1200 3920 P 0 12 F 24 12 F (names) S 86 J ( a) S 87 J ( LINT) S 86 J ( library) S 87 J ( that) S 86 J ( should) S 87 J ( be used when checking source code.) S
1200 4160 P (Any) S 67 J ( number) S 68 J ( of) S 67 J ( ) S 0 12 F 0 10 F (Library=) S 0 12 F 24 12 F () S 68 J ( options) S 67 J ( may) S 68 J ( appear) S 67 J ( on) S 68 J ( the) S 67 J ( command line. By) S
1200 4400 P (default,) S 145 J ( LINT) S 146 J ( automatically) S 145 J ( includes) S 146 J ( LINT) S 145 J ( libraries) S 146 J ( of standard C) S
1200 4640 P (functions) S 60 J ( \(e.g. ) S 0 12 F 0 10 F (printf) S 0 12 F 24 12 F (\)) S 60 J ( so that such functions are always recognized.) S
480 5120 P 0 12 F 0 12 F (libraryName=string) S
1200 5360 P 0 12 F 24 12 F (is) S 60 J ( used when creating a LINT library. See below for more details.) S
480 5840 P 0 12 F 0 12 F (Output=file) S
1200 6080 P 0 12 F 24 12 F (is) S 74 J ( used) S 75 J ( when) S 74 J ( creating) S 75 J ( a) S 74 J ( LINT) S 75 J ( library) S 74 J ( or) S 75 J ( summary) S 74 J ( file) S 75 J ( \(see) S 74 J ( below\). The) S
1200 6320 P (output) S 60 J ( overwrites the file's current contents.) S
480 6800 P 0 12 F 0 12 F (Output+=file) S
1200 7040 P 0 12 F 24 12 F (is) S 81 J ( the) S 82 J ( same) S 81 J ( as) S 82 J ( ) S 0 12 F 0 10 F (Output=file) S 0 12 F 24 12 F (,) S 81 J ( except) S 82 J ( that) S 81 J ( output) S 82 J ( is) S 81 J ( written) S 82 J ( to) S 81 J ( the) S 82 J ( end of) S
1200 7280 P (the) S 62 J ( current) S 63 J ( contents) S 62 J ( of) S 63 J ( the) S 62 J ( specified file, rather than overwriting what the) S
1200 7520 P (file) S 60 J ( already holds.) S
480 8000 P 0 12 F 0 12 F (StandardInclude=directory) S
1200 8240 P 0 12 F 24 12 F (is) S 71 J ( the) S 72 J ( same) S 71 J ( as) S 72 J ( the) S 71 J ( ) S 0 12 F 0 10 F (StandardInclude=) S 0 12 F 24 12 F () S 72 J ( option for the C compiler. When) S
1200 8480 P (LINT) S 121 J ( tries) S 122 J ( to) S 121 J ( find) S 122 J ( include) S 121 J ( files whose names are enclosed in angle) S
1200 8720 P (brackets,) S 60 J ( as in) S
1632 9200 P 0 12 F 0 12 F (#include) S 144 J ( <file>) S
1200 9680 P 0 12 F 24 12 F (it) S 83 J ( begins by searching the given directory for the file. If the file is not) S
1200 9920 P (found) S 75 J ( there,) S 76 J ( LINT) S 75 J ( searches) S 76 J ( directories) S 75 J ( named) S 76 J ( in ) S 0 12 F 0 10 F (Include=) S 0 12 F 24 12 F () S 76 J ( options, and) S
1200 10160 P (finally) S 168 J ( searches) S 169 J ( the) S 168 J ( directory) S 169 J ( that) S 168 J ( contains) S 169 J ( the source file being) S
1200 10400 P (examined.) S 181 J ( ) S 182 J ( Any) S 181 J ( number) S 182 J ( of) S 181 J ( ) S 0 12 F 0 10 F (StandardInclude=) S 0 12 F 24 12 F () S 181 J ( options may be) S
1200 10640 P (specified.) S 84 J ( ) S 85 J ( Directories) S 84 J ( are searched in the order given on the command) S
1200 10880 P (line.) S
480 11360 P 0 12 F 0 12 F (StandardLibrary=name) S
1200 11600 P 0 12 F 24 12 F (asks) S 118 J ( LINT) S 119 J ( to) S 118 J ( include) S 119 J ( the) S 118 J ( standard) S 119 J ( library) S 118 J ( indicated by "name". The) S
1200 11840 P (following) S 60 J ( names are recognized:) S
1200 12320 P 0 12 F 0 10 F (C) S 0 12 F 24 12 F () S 150 J ( -) S 151 J ( the) S 150 J ( standard) S 151 J ( C) S 150 J ( library.) S 151 J ( This) S 150 J ( is) S 151 J ( included automatically, unless) S
1200 12560 P 0 12 F 0 10 F (-StandardLibrary) S 0 12 F 24 12 F () S 60 J ( is specified.) S
480 13040 P 0 12 F 0 12 F (-StandardLibrary) S
1200 13280 P 0 12 F 24 12 F (does) S 60 J ( not include the standard ) S 0 12 F 0 10 F (C) S 0 12 F 24 12 F () S 60 J ( library routines.) S 0 12 F
PE
480 2000 P (Summary=file) S
1200 2240 P 24 12 F (states) S 65 J ( that) S 66 J ( the) S 65 J ( given) S 66 J ( file) S 65 J ( is) S 66 J ( a) S 65 J ( summary) S 66 J ( file) S 65 J ( that) S 66 J ( should be used as input to) S
1200 2480 P (the) S 60 J ( LINT operation. See below for more on summary files.) S
480 2960 P 0 12 F 0 12 F (Target=keyword) S
1200 3200 P 0 12 F 24 12 F (controls) S 90 J ( the) S 91 J ( kind) S 90 J ( of) S 91 J ( problem-checking) S 90 J ( you) S 91 J ( want) S 90 J ( to) S 91 J ( do.) S 90 J ( The following) S
1200 3440 P (keywords) S 60 J ( are recognized.) S
1200 3920 P 0 12 F 0 10 F (Host) S 0 12 F 24 12 F () S 61 J ( -) S 62 J ( describes any problems that may arise if the program is run on the) S
1200 4160 P (host machine \(i.e. the machine where you are running LINT\). This is the) S
1200 4400 P (default.) S
1200 4880 P 0 12 F 0 10 F (Extensions) S 0 12 F 24 12 F () S 70 J ( -) S 71 J ( points) S 70 J ( out) S 71 J ( any) S 70 J ( extensions) S 71 J ( to) S 70 J ( C) S 71 J ( that might have been used,) S
1200 5120 P (as) S 82 J ( well) S 83 J ( as) S 82 J ( any) S 83 J ( machine-dependencies) S 82 J ( in) S 83 J ( the) S 82 J ( code.) S 83 J ( It also describes the) S
1200 5360 P (problems) S 60 J ( detected with ) S 0 12 F 0 10 F (Target=Host) S 0 12 F 24 12 F (.) S
1200 5840 P 0 12 F 0 10 F (Minimal) S 0 12 F 24 12 F () S 86 J ( -) S 87 J ( points) S 86 J ( out) S 87 J ( any) S 86 J ( features) S 87 J ( that may cause problems if you port) S
1200 6080 P (this) S 73 J ( program) S 74 J ( to) S 73 J ( a) S 74 J ( non-ANSI) S 73 J ( compiler.) S 74 J ( ) S 73 J ( This) S 74 J ( will) S 73 J ( make) S 74 J ( note) S 73 J ( of) S 74 J ( all) S 73 J ( ANSI) S
1200 6320 P (features) S 217 J ( used.) S 218 J ( ) S 217 J ( It also describes the problems detected with) S
1200 6560 P 0 12 F 0 10 F (Target=Extensions) S 0 12 F 24 12 F (.) S
480 7040 P 0 12 F 0 12 F (+Verbose) S
1200 7280 P 0 12 F 24 12 F (prints) S 60 J ( out the name of the file being examined. The default is ) S 0 12 F 0 10 F (-Verbose) S 0 12 F 24 12 F (.) S
480 7760 P 0 12 F 0 12 F (+Wide) S
1200 8000 P 0 12 F 24 12 F (prints) S 62 J ( output) S 63 J ( in) S 62 J ( a) S 63 J ( format that is 132 columns wide. The default is ) S 0 12 F 0 10 F (-Wide) S 0 12 F 24 12 F (,) S
1200 8240 P (which) S 60 J ( prints in an 80-column format.) S
480 8960 P LU (Abbreviating Options:) S LE
1056 9200 P (The) S 80 J ( option) S 81 J ( keywords given above can be abbreviated by omitting any or) S
480 9440 P (all) S 70 J ( of) S 71 J ( the) S 70 J ( letters shown in lower case. For example, ) S 0 12 F 0 10 F (CrossReference=All) S 0 12 F 24 12 F () S 70 J ( may) S
480 9680 P (be) S 60 J ( abbreviated to) S
1920 10160 P 0 12 F 0 12 F (crossref=all) S
1920 10400 P (cref=all) S
1920 10640 P (cr=all) S
1920 10880 P (cr=a) S
480 11360 P 0 12 F 24 12 F (and) S 106 J ( so) S 107 J ( on.) S 106 J ( ) S 107 J ( When) S 106 J ( entering) S 107 J ( option) S 106 J ( keywords, you may type letters in upper,) S
480 11600 P (lower,) S 78 J ( or) S 79 J ( mixed) S 78 J ( case;) S 79 J ( the) S 78 J ( use) S 79 J ( of) S 78 J ( upper) S 79 J ( and) S 78 J ( lower) S 79 J ( case) S 78 J ( in) S 79 J ( this) S 78 J ( documentation) S 79 J ( is) S
480 11840 P (simply) S 60 J ( to show what letters are and aren't required.) S
480 12320 P LU (Description:) S LE
1056 12560 P (LINT) S 95 J ( checks C source code for "irregularities": errors and non-portable) S
480 12800 P (constructions.) S 60 J ( Diagnostics from LINT normally take the form) S
1920 13280 P 0 12 F 0 12 F (filename,lineno:) S 144 J ( class: message) S
480 13760 P 0 12 F 24 12 F (where) S 123 J ( ) S 0 12 F 0 10 F ("filename) S 0 12 F 24 12 F (") S 124 J ( is the name of the file that contained the problem and) S
480 14000 P 0 12 F 0 10 F ("lineno) S 0 12 F 24 12 F (") S 79 J ( is) S 80 J ( the) S 79 J ( number) S 80 J ( of) S 79 J ( the) S 80 J ( line) S 79 J ( within) S 80 J ( the) S 79 J ( file.) S 80 J ( ) S 79 J ( The) S 80 J ( "class") S 79 J ( describes what) S 0 12 F
PE
480 2000 P 24 12 F (type) S 60 J ( of) S 61 J ( message) S 60 J ( this) S 61 J ( is:) S 60 J ( warning,) S 61 J ( error,) S 60 J ( etc.) S 61 J ( ) S 60 J ( If) S 61 J ( a) S 60 J ( diagnostic) S 61 J ( refers) S 60 J ( to a function or) S
480 2240 P (external variable in a LINT library, the form of the diagnostic is) S
1920 2720 P 0 12 F 0 12 F (libname:message) S
480 3200 P 0 12 F 24 12 F (where) S 60 J ( ) S 0 12 F 0 10 F ("libname") S 0 12 F 24 12 F () S 60 J ( is the name of the LINT library.) S
1056 3680 P (Unless) S 90 J ( your) S 91 J ( program) S 90 J ( is) S 91 J ( very) S 90 J ( small, LINT will probably produce a great) S
480 3920 P (deal) S 61 J ( of) S 62 J ( output.) S 61 J ( You will usually find it convenient to redirect LINT's output into) S
480 4160 P (a) S 81 J ( file) S 82 J ( instead) S 81 J ( of) S 82 J ( letting) S 81 J ( it) S 82 J ( be) S 81 J ( displayed) S 82 J ( on) S 81 J ( the) S 82 J ( terminal) S 81 J ( screen.) S 82 J ( ) S 81 J ( To) S 82 J ( do) S 81 J ( this, just) S
480 4400 P (put) S 60 J ( ">filename" on the LINT command line, as in) S
1920 4880 P 0 12 F 0 12 F (tlint) S 144 J ( myprog >output) S
480 5360 P 0 12 F 24 12 F (This) S 60 J ( tells LINT to write its output into the given file.) S
480 6080 P LU (Other Ways to Use LINT) S LE
1056 6320 P (In addition to checking C code for irregularities, LINT can:) S
480 6800 P (\(a\)) S 453 J ( Extract) S 93 J ( a) S 94 J ( summary) S 93 J ( file) S 94 J ( of) S 93 J ( information that can be used in other LINT) S
1200 7040 P (operations.) S
480 7520 P (\(b\)) S 440 J ( Create) S 60 J ( a LINT library.) S
480 8000 P (Summary files and LINT libraries are discussed below.) S
480 8720 P LU (Summary Files) S LE
1056 8960 P (A) S 64 J ( summary) S 65 J ( file) S 64 J ( contains) S 65 J ( a) S 64 J ( "summary") S 65 J ( of) S 64 J ( your) S 65 J ( source) S 64 J ( code:) S 65 J ( the names and) S
480 9200 P (types) S 103 J ( of) S 104 J ( all) S 103 J ( the external variables and functions defined or referenced in the) S
480 9440 P (code,) S 68 J ( plus) S 69 J ( any) S 68 J ( other) S 69 J ( information) S 68 J ( LINT) S 69 J ( may) S 68 J ( need when checking the code \(such) S
480 9680 P (as) S 89 J ( the) S 90 J ( declared) S 89 J ( types) S 90 J ( of) S 89 J ( function) S 90 J ( parameters\).) S 89 J ( ) S 90 J ( Summary) S 89 J ( files also record any) S
480 9920 P (error) S 73 J ( messages) S 74 J ( that) S 73 J ( might) S 74 J ( be issued by the C compiler when parsing the source) S
480 10160 P (code.) S 90 J ( ) S 91 J ( All of this information is stored in a special format that is not directly) S
480 10400 P (readable) S 60 J ( by humans.) S
1056 10880 P (To) S 142 J ( create) S 143 J ( a) S 142 J ( summary) S 143 J ( file) S 142 J ( from) S 143 J ( a) S 142 J ( normal) S 143 J ( source) S 142 J ( code) S 143 J ( file,) S 142 J ( use the) S
480 11120 P 0 12 F 0 10 F (Output=file) S 0 12 F 24 12 F () S 60 J ( option, as in) S
1920 11600 P 0 12 F 0 12 F (tlint) S 144 J ( src1.c output=summ) S
480 12080 P 0 12 F 24 12 F (You) S 60 J ( can add more material to the same summary file using ) S 0 12 F 0 10 F (Output+=file) S 0 12 F 24 12 F (,) S 60 J ( as in) S
1920 12560 P 0 12 F 0 12 F (tlint) S 144 J ( src2.c output+=summ) S
480 13040 P 0 12 F 24 12 F (This) S 60 J ( appends new material to the existing contents of the summary file.) S
1056 13520 P (When) S 80 J ( LINT) S 81 J ( creates) S 80 J ( a) S 81 J ( Summary) S 80 J ( file,) S 81 J ( LINT) S 80 J ( only) S 81 J ( summarizes) S 80 J ( your source) S
480 13760 P (code) S 72 J ( and) S 73 J ( checks) S 72 J ( for) S 73 J ( syntax) S 72 J ( errors.) S 73 J ( ) S 72 J ( It) S 73 J ( does) S 72 J ( not) S 73 J ( check) S 72 J ( for) S 73 J ( such problems as non-) S 0 12 F
PE
480 2000 P 24 12 F (portable) S 77 J ( constructs) S 78 J ( or) S 77 J ( type) S 78 J ( mismatches.) S 77 J ( ) S 78 J ( However, you can run a summary file) S
480 2240 P (through) S 60 J ( LINT again to do standard type-checking. For example,) S
1920 2720 P 0 12 F 0 12 F (tlint) S 144 J ( srcfile output=lf) S
1920 2960 P (tlint summ=lf) S
480 3440 P 0 12 F 24 12 F (creates) S 81 J ( a) S 82 J ( summary) S 81 J ( file,) S 82 J ( then) S 81 J ( uses) S 82 J ( the) S 81 J ( information in the summary file to see if) S
480 3680 P (types) S 60 J ( match in symbol references and definitions.) S
1056 4160 P (The) S 124 J ( reason) S 125 J ( for) S 124 J ( creating) S 125 J ( summary) S 124 J ( files) S 125 J ( is) S 124 J ( the same as the reason for) S
480 4400 P (breaking) S 60 J ( up) S 61 J ( the) S 60 J ( source) S 61 J ( code of your program into several source files: it is easier) S
480 4640 P (to) S 70 J ( deal) S 71 J ( with) S 70 J ( source) S 71 J ( code) S 70 J ( in) S 71 J ( small) S 70 J ( pieces) S 71 J ( than) S 70 J ( in) S 71 J ( one) S 70 J ( big) S 71 J ( hunk.) S 70 J ( Some users may) S
480 4880 P (keep) S 102 J ( a summary file for every source file. If the code in one source file is) S
480 5120 P (changed,) S 87 J ( you) S 88 J ( can) S 87 J ( create) S 88 J ( a) S 87 J ( summary) S 88 J ( file) S 87 J ( from) S 88 J ( that) S 87 J ( source) S 88 J ( file,) S 87 J ( then run all the) S
480 5360 P (summary) S 66 J ( files) S 67 J ( of) S 66 J ( the) S 67 J ( program) S 66 J ( through) S 67 J ( LINT) S 66 J ( to) S 67 J ( see) S 66 J ( if) S 67 J ( the change has caused any) S
480 5600 P (problems.) S 60 J ( This is much faster than using LINT on all the raw source code.) S
480 6320 P LU (LINT Libraries) S LE
1056 6560 P (A) S 68 J ( LINT) S 69 J ( library) S 68 J ( is) S 69 J ( similar) S 68 J ( to) S 69 J ( a) S 68 J ( summary) S 69 J ( file, in that it contains a summary) S
480 6800 P (of) S 65 J ( C) S 66 J ( source) S 65 J ( code.) S 66 J ( ) S 65 J ( However,) S 66 J ( LINT) S 65 J ( libraries) S 66 J ( are) S 65 J ( intended) S 66 J ( to) S 65 J ( parallel) S 66 J ( the way that) S
480 7040 P (object) S 60 J ( libraries work.) S
1056 7520 P (To) S 136 J ( create) S 137 J ( a) S 136 J ( LINT library, specify both the ) S 0 12 F 0 10 F (Output=) S 0 12 F 24 12 F () S 136 J ( option and the) S
480 7760 P 0 12 F 0 10 F (libraryName=) S 0 12 F 24 12 F () S 60 J ( option on the LINT command line. For example,) S
1920 8240 P 0 12 F 0 12 F (tlint) S 144 J ( file output=mylib libname="abc") S
480 8720 P 0 12 F 24 12 F (creates) S 71 J ( a) S 72 J ( LINT) S 71 J ( library) S 72 J ( named) S 71 J ( ) S 0 12 F 0 10 F (abc) S 0 12 F 24 12 F () S 72 J ( in) S 71 J ( the) S 72 J ( file) S 71 J ( ) S 0 12 F 0 10 F (mylib) S 0 12 F 24 12 F (.) S 72 J ( This) S 71 J ( name) S 72 J ( is) S 71 J ( used) S 72 J ( in) S 71 J ( LINT) S
480 8960 P (diagnostic) S 69 J ( messages) S 70 J ( related) S 69 J ( to) S 70 J ( symbols) S 69 J ( found) S 70 J ( in) S 69 J ( the) S 70 J ( LINT) S 69 J ( library.) S 70 J ( ) S 69 J ( Using) S 70 J ( LINT) S
480 9200 P (in) S 90 J ( this) S 91 J ( way) S 90 J ( only) S 91 J ( generates minimal messages; full messages are printed when) S
480 9440 P (you) S 60 J ( actually use the LINT library.) S
1056 9920 P (To) S 147 J ( use) S 148 J ( a) S 147 J ( LINT) S 148 J ( library,) S 147 J ( specify the ) S 0 12 F 0 10 F (Library=) S 0 12 F 24 12 F () S 147 J ( option on the LINT) S
480 10160 P (command) S 60 J ( line, as in) S
1920 10640 P 0 12 F 0 12 F (tlint) S 144 J ( myfile library=mylib) S
480 11120 P 0 12 F 24 12 F (When) S 104 J ( LINT) S 105 J ( finds) S 104 J ( that) S 105 J ( ) S 0 12 F 0 10 F (myfile) S 0 12 F 24 12 F () S 105 J ( contains a reference to an undefined symbol,) S
480 11360 P (LINT) S 81 J ( checks) S 82 J ( the) S 81 J ( information) S 82 J ( in) S 81 J ( the) S 82 J ( given LINT library to see if the symbol is) S
480 11600 P (defined) S 92 J ( there.) S 93 J ( ) S 92 J ( This) S 93 J ( works) S 92 J ( just) S 93 J ( like) S 92 J ( compiling) S 93 J ( a module while referring to an) S
480 11840 P (object) S 91 J ( library.) S 92 J ( ) S 91 J ( No error occurs if a symbol in the LINT library has the same) S
480 12080 P (name) S 92 J ( as) S 93 J ( a) S 92 J ( symbol) S 93 J ( in) S 92 J ( the) S 93 J ( source) S 92 J ( file;) S 93 J ( the) S 92 J ( source) S 93 J ( file) S 92 J ( symbol) S 93 J ( is) S 92 J ( the one that is) S
480 12320 P (used.) S
1056 12800 P (Functions) S 66 J ( should) S 67 J ( only) S 66 J ( be) S 67 J ( placed) S 66 J ( in) S 67 J ( a) S 66 J ( LINT) S 67 J ( library) S 66 J ( when) S 67 J ( you) S 66 J ( are) S 67 J ( sure they) S
480 13040 P (contain) S 93 J ( no) S 94 J ( errors.) S 93 J ( ) S 94 J ( LINT does not look for errors when it is creating a LINT) S
480 13280 P (library.) S 0 12 F
PE
480 2240 P 24 12 F LU (Review) S 60 J ( of Inputs and Outputs) S LE
1056 2480 P (To) S 91 J ( specify) S 92 J ( a) S 91 J ( file as an input, simply give the file's name. To specify a) S
480 2720 P (summary) S 75 J ( file) S 76 J ( as) S 75 J ( input,) S 76 J ( use) S 75 J ( ) S 0 12 F 0 10 F (Summary=file) S 0 12 F 24 12 F (.) S 76 J ( ) S 75 J ( To) S 76 J ( specify) S 75 J ( a) S 76 J ( LINT) S 75 J ( library) S 76 J ( as) S 75 J ( input,) S
480 2960 P (use) S 67 J ( ) S 0 12 F 0 10 F (Library=file) S 0 12 F 24 12 F (.) S 68 J ( ) S 67 J ( LINT) S 68 J ( uses) S 67 J ( all) S 68 J ( of) S 67 J ( the contents of a source file or a summary) S
480 3200 P (file;) S 117 J ( it only uses library entries if they are referenced by source code or a) S
480 3440 P (summary) S 60 J ( file.) S
1056 3920 P (An) S 91 J ( index file contains partial command lines to be used by LINT in its) S
480 4160 P (operations.) S 123 J ( ) S 124 J ( These) S 123 J ( command) S 124 J ( lines) S 123 J ( can) S 124 J ( name) S 123 J ( source files as input, but not) S
480 4400 P (summary) S 60 J ( files or LINT libraries.) S
1056 4880 P (When) S 107 J ( both) S 108 J ( an) S 107 J ( ) S 0 12 F 0 10 F (Output=) S 0 12 F 24 12 F () S 108 J ( and) S 107 J ( ) S 0 12 F 0 10 F (libraryName=) S 0 12 F 24 12 F () S 108 J ( option) S 107 J ( are specified, LINT) S
480 5120 P (creates) S 78 J ( a) S 79 J ( LINT library. If only ) S 0 12 F 0 10 F (Output=) S 0 12 F 24 12 F () S 79 J ( is specified, LINT creates a summary) S
480 5360 P (file.) S 77 J ( ) S 78 J ( If) S 77 J ( ) S 0 12 F 0 10 F (Output=) S 0 12 F 24 12 F () S 77 J ( is not specified, LINT examines a source file or summary file) S
480 5600 P (for) S 60 J ( problem spots and writes its diagnostics to the standard output.) S
480 6320 P LU (Multiple Definitions) S LE
1056 6560 P (If) S 68 J ( LINT finds two definitions for the same function or external variable, it) S
480 6800 P (always) S 77 J ( outputs) S 78 J ( a) S 77 J ( diagnostic) S 78 J ( message.) S 77 J ( ) S 78 J ( If) S 77 J ( the) S 78 J ( two) S 77 J ( definitions) S 78 J ( are) S 77 J ( both in normal) S
480 7040 P (source) S 65 J ( code,) S 66 J ( LINT) S 65 J ( arbitrarily) S 66 J ( chooses) S 65 J ( the first definition it finds as the "correct") S
480 7280 P (definition,) S 64 J ( and) S 65 J ( issues) S 64 J ( diagnostics) S 65 J ( for) S 64 J ( any) S 65 J ( later) S 64 J ( deviations) S 65 J ( from) S 64 J ( this definition. If) S
480 7520 P (one) S 69 J ( of) S 70 J ( the two definitions is in a LINT library and the other is in normal source) S
480 7760 P (code,) S 81 J ( LINT) S 82 J ( chooses) S 81 J ( the) S 82 J ( non-library) S 81 J ( version) S 82 J ( as) S 81 J ( the) S 82 J ( "correct") S 81 J ( definition.) S 82 J ( ) S 81 J ( In this) S
480 8000 P (way,) S 60 J ( a definition in normal source code overrides a library definition.) S
480 8720 P LU (Configuration Files) S LE
1056 8960 P (A configuration) S 121 J ( file consists of a series of directives that control the) S
480 9200 P (behavior) S 60 J ( of LINT. The possible directives are explained below.) S
480 9680 P 0 12 F 0 12 F (define) S 144 J ( name string) S
1200 9920 P 0 12 F 24 12 F (has) S 84 J ( the) S 85 J ( same format and purpose as a ) S 0 12 F 0 12 F B (#define) S E 0 12 F 24 12 F () S 85 J ( directive in normal C) S
1200 10160 P (code.) S 60 J ( It creates a manifest or macro with the given value.) S
480 10640 P 0 12 F 0 12 F (inline) S 144 J ( includefile) S
1200 10880 P 0 12 F 24 12 F (lets) S 65 J ( you) S 66 J ( simulate) S 65 J ( an) S 66 J ( include) S 65 J ( file.) S 66 J ( ) S 65 J ( When) S 66 J ( LINT) S 65 J ( finds) S 66 J ( an) S 65 J ( ) S 0 12 F 0 10 F (inline) S 0 12 F 24 12 F () S 65 J ( directive,) S
1200 11120 P (it) S 80 J ( begins) S 81 J ( to) S 80 J ( gather) S 81 J ( input lines up until the first line consisting of only a) S
1200 11360 P 0 12 F 0 10 F ('#') S 0 12 F 24 12 F () S 60 J ( character. For example, in) S
1632 11840 P 0 12 F 0 12 F (inline) S 144 J ( sim.h) S
1632 12080 P (extern int junk1;) S
1632 12320 P (extern int junk2;) S
1632 12560 P (#) S
1200 13040 P 0 12 F 24 12 F (LINT) S 93 J ( collects) S 94 J ( the) S 93 J ( two declarations and associates them with the name) S
1200 13280 P 0 12 F 0 10 F ("sim.h") S 0 12 F 24 12 F (.) S 60 J ( If a program contains the directive,) S
1632 13760 P 0 12 F 0 12 F (#include) S 144 J ( <sim.h>) S 0 12 F
PE
1200 2000 P 24 12 F (LINT) S 66 J ( takes) S 67 J ( the gathered text and includes it at that point in the program,) S
1200 2240 P (as) S 60 J ( if it had come from an included file.) S
480 2720 P 0 12 F 0 12 F (map) S 144 J ( includename1 includename2) S
1200 2960 P 0 12 F 24 12 F (says) S 60 J ( that all references of the form) S
1632 3440 P 0 12 F 0 12 F (#include) S 144 J ( includename1) S
1200 3920 P 0 12 F 24 12 F (should) S 60 J ( be converted to) S
1632 4400 P 0 12 F 0 12 F (#include) S 144 J ( includename2) S
480 4880 P (null includefile) S
1200 5120 P 0 12 F 24 12 F (tells) S 82 J ( LINT) S 83 J ( to) S 82 J ( ignore all ) S 0 12 F 0 10 F (#include) S 0 12 F 24 12 F () S 82 J ( directives that attempt to include the) S
1200 5360 P (specified) S 60 J ( file.) S
480 5840 P 0 12 F 0 12 F (search) S 144 J ( pathname) S
1200 6080 P 0 12 F 24 12 F (is) S 60 J ( equivalent to ) S 0 12 F 0 10 F (Include=pathname) S 0 12 F 24 12 F () S 60 J ( on the LINT command line.) S
480 6560 P 0 12 F 0 12 F (system_search) S 144 J ( pathname) S
1200 6800 P 0 12 F 24 12 F (is) S 114 J ( equivalent) S 115 J ( to) S 114 J ( ) S 0 12 F 0 10 F (StandardInclude=pathname) S 0 12 F 24 12 F () S 115 J ( on) S 114 J ( the) S 115 J ( LINT command) S
1200 7040 P (line.) S
480 7520 P LU (Installation) S 60 J ( Files:) S LE
1056 7760 P (An) S 108 J ( installation) S 109 J ( file specifies the pathnames for software and data files) S
480 8000 P (used) S 90 J ( by) S 91 J ( LINT.) S 90 J ( ) S 91 J ( Installation) S 90 J ( files) S 91 J ( are text files made up of comment lines and) S
480 8240 P (option) S 60 J ( lines.) S
480 8720 P (Comment lines:) S
1200 8960 P (Any) S 143 J ( line) S 144 J ( whose) S 143 J ( first) S 144 J ( non-blank) S 143 J ( character) S 144 J ( is) S 143 J ( ) S 0 12 F 0 10 F (#) S 0 12 F 24 12 F () S 144 J ( will) S 143 J ( be) S 144 J ( taken) S 143 J ( as a) S
1200 9200 P (comment.) S 60 J ( Blank lines are also considered comments.) S
480 9680 P (Option lines:) S
1200 9920 P (Option lines have the format) S
1920 10400 P 0 12 F 0 12 F (Keyword=pathname) S
1200 10880 P 0 12 F 24 12 F (In) S 86 J ( this documentation, keywords are written with some letters in upper) S
1200 11120 P (case) S 63 J ( and) S 64 J ( some in lower case. You may abbreviate keywords by omitting) S
1200 11360 P (any) S 71 J ( or) S 72 J ( all) S 71 J ( of) S 72 J ( the) S 71 J ( letters) S 72 J ( shown in lower case. The remaining letters may) S
1200 11600 P (be) S 75 J ( entered in either upper or lower case; the documentation simply uses) S
1200 11840 P (upper) S 60 J ( case to show which characters may not be omitted.) S
1056 12320 P (In this version of LINT, possible option lines are:) S
480 12800 P 0 12 F 0 12 F (Include=pathname) S
1200 13040 P 0 12 F 24 12 F (gives) S 60 J ( the directory containing the LINT include files.) S
480 13520 P 0 12 F 0 12 F (Library=pathname) S
1200 13760 P 0 12 F 24 12 F (gives) S 60 J ( the directory containing the LINT libraries.) S 0 12 F
PE
480 2000 P (Program=pathname) S
1200 2240 P 24 12 F (gives) S 96 J ( the) S 97 J ( directory) S 96 J ( containing) S 97 J ( the) S 96 J ( LINT) S 97 J ( executable) S 96 J ( files) S 97 J ( \(CPP, and so) S
1200 2480 P (on\).) S
480 2960 P (Copyright) S 60 J ( 1995, by Thinkage Ltd.) S 0 12 F