]> andersk Git - splint.git/blob - test/Makefile
bed631cc0d1f0d19007043cf8b3c60d32b1006c2
[splint.git] / test / Makefile
1 ##################################################
2 ###                                            ###
3 ### Makefile for LCLint testing                ###
4 ###                                            ### 
5 ### designed for use with GNU make             ### 
6 ###                                            ###
7 ##################################################
8
9 .PHONY: all fulltest quicktest funcpointer cast abstract
10 .PHONY: version help abstptr abstract alias alttypes ansireserved 
11 .PHONY: argorder args blocks break cases cast charlit 
12 .PHONY: clauses commentchar 
13 .PHONY: compdestroy constannot controldepth csyntax czechnames czechoslovaknames 
14 .PHONY: deadparam decl enum exports external fields fileio flags forbody format funcpointer glob globals 
15 .PHONY: impabstract init inparam internal iter keep libs lintcomments 
16 .PHONY: list macros macrosef merge mergestate modifies modtest moduncon mongoincludes 
17 .PHONY: noeffect null observer oldstyle outglob outparam preds prefixes printflike rc 
18 .PHONY: refcounts release repexpose returned sharing slovaknames special
19 .PHONY: specclauses stack staticarray 
20 .PHONY: strings structassign nullret
21 .PHONY: tainted typequals ud ulstypes union unreachable unused ullint void
22 .PHONY: db1 db2 db3 tests2.2 tests2.2a tests2.4 tests2.5
23 .PHONY: all test fulltest expects quicktest
24 .PHONY: metastate warnuse
25 .PHONY: linked freearray
26 .PHONY: sizeoftest
27 .PHONY: bufferTest
28 .PHONY: simplebufferConstraintTests
29 .PHONY: moreBufferTests
30 .PHONY: maxset
31 .PHONY: globalbufferannotation
32 .PHONY: strchr
33 .PHONY: for
34
35 .SUFFIXES: .out .expect .c .lcl .h .lh .diff
36
37 SHELL = /bin/csh -f
38
39 # Command to run lclint
40 LCLINT  = ${HOME}/LCLintDev/src/lclint
41 LCLINTP = $(LCLINT)
42
43 # Make sure .lclintrc files are not used so test results do not
44 # depend on local settings.
45 LCLINTRN = $(LCLINTP) -nof -hints -booltype "bool"
46 LCLINTR = $(LCLINTRN) -exportlocal +debugfcnconstraint
47
48 UNITTESTS = help sizeoftest bufferTest simplebufferConstraintTests  moreBufferTests globalbufferannotation maxset strchr for abstptr abstract alias alttypes ansireserved argorder args blocks break cases cast \
49    charlit clauses commentchar compdestroy constannot controldepth csyntax czechnames czechoslovaknames deadparam \
50    decl enum exports external fields fileio flags forbody format freearray funcpointer glob globals impabstract \
51    init inparam internal iter keep libs linked lintcomments list macros macrosef merge mergestate metastate modifies \
52    modtest moduncon mongoincludes mystrncat noeffect null nullret nullassign observer oldstyle \
53    outglob outparam preds prefixes \
54    printflike rc refcounts release repexpose returned sharing slovaknames specclauses special stack \
55    staticarray strings structassign tainted typequals ud ulstypes union unreachable unused ullint void warnuse \
56    tests2.2 tests2.2a tests2.4 tests2.5 
57
58 UNITEXPECTS  = $(addsuffix .expect, $(UNITTESTS))
59
60 INTEGTESTS = db1 db2 db3
61 INTEGEXPECTS  = $(addsuffix .expect, $(INTEGTESTS))
62
63 LCLINTTESTS = $(UNITTESTS) $(INTEGTESTS)
64
65 QUICKTESTS = db3
66
67 all: fulltest
68 test: fulltest
69
70 GREP = grep
71 DIFF = diff
72 CLEANOUTPUT = $(GREP) -v "LCLint 3." | $(GREP) -v "make -e" | $(GREP) -v "make\[" | $(GREP) -v "lclint -nof" | $(GREP) -v "make  -e"
73
74 ### not real .c
75
76 .c.expect:
77         $(MAKE) -e $(*) |& $(CLEANOUTPUT) > $(*).expect ; \
78         cat $(*).expect
79
80 .c.diff:
81         $(MAKE) -e $(*) |& $(CLEANOUTPUT) > $(*).out ; \
82         diff $(*).expect $(*).out
83
84 expects:
85         echo "Saving old expects: " ; \
86         more *.expect | cat > expects-`date +"%y-%m-%d-%H"`
87         @$(foreach test, $(UNITTESTS),  \
88            echo "Making "$(test)".expect: " ; \
89            $(MAKE) -e $(test) |& $(CLEANOUTPUT) > $(test).expect ; \
90            cat $(test).expect ; ) 
91         @echo "Integration Tests"       
92         @$(foreach test, $(INTEGTESTS),  \
93            echo "Making "$(test)".expect: "; \
94            $(MAKE) -e $(test) |& $(CLEANOUTPUT) > $(test).expect ; \
95            cat $(test).expect ; ) 
96
97 quicktest:
98         @$(foreach test, $(QUICKTESTS),  \
99            echo "Checking "$(test)"... " ; \
100            $(MAKE) -e $(test) |& $(CLEANOUTPUT) > $(test).out ; \
101            $(DIFF) $(test).expect $(test).out ; \
102            if ($$status) echo "*** FAIL ***" ; \
103            ) 
104 fulltest:
105         @echo ''
106         @echo 'Testing '$(LCLINTP)
107         @echo ''
108         @echo 'Version:'
109         @echo ''
110         @$(LCLINTP) -help version
111         @$(LCLINTP) -help vars
112         @echo ''
113         @echo "Unit Tests:"
114         @echo ''
115         @$(foreach test, $(UNITTESTS),  \
116            echo "Checking "$(test)"... " ; \
117            $(MAKE) -e $(test) |& $(CLEANOUTPUT) > $(test).out ; \
118            $(DIFF) $(test).expect $(test).out ; \
119            if ($$status) echo "*** FAIL ***" ; \
120            ) 
121         @echo ''
122         @echo "Integration Tests"       
123         @echo ''
124         @$(foreach test, $(INTEGTESTS),  \
125            echo "Checking "$(test)"... "; \
126            $(MAKE) -e $(test) |& $(CLEANOUTPUT) > $(test).out ; \
127            $(DIFF) $(test).expect $(test).out ; )
128
129 ###
130 ### Unit Tests
131 ###
132
133 version:
134         -$(LCLINTP) -help version
135
136 help:
137         -@$(LCLINTP)
138         -@setenv LARCH_PATH "/dev/null"; $(LCLINTP) empty.lcl
139         -@$(LCLINTP) -help
140         -@$(LCLINTP) -asdf
141         -@$(LCLINTP) +boolint +boolint 
142         -@$(LCLINTP) -help flags alpha
143         -@$(LCLINTP) -help flags all
144
145 abstptr:
146         $(LCLINTR) abstptr -expect 9
147         $(LCLINTR) abstptr +voidabstract -expect 6
148
149 abstract:
150         $(LCLINTR) abst_t.lcl commentcmd.c -expect 15
151
152 alias:
153         $(LCLINTR) +lh mut
154         $(LCLINTR) mut alias +globalias -expect 19
155         $(LCLINTR) mut alias2 +globalias -expect 17
156         $(LCLINTR) +lh alias3 -expect 14 
157         $(LCLINTR) +lh alias4 +boolint
158         $(LCLINTR) alias4 -pred +retalias -expect 6
159         $(LCLINTR) +lh alias5 +memchecks -null -specundef -expect 5
160
161 alttypes:
162         $(LCLINTR) alttypes.c -expect 2
163
164 ###
165 ### evans 2001-06-07 - updated nameCheck.c to reflect C9X.
166 ### Reports one new errors for ansireserved.c - wctomb is bad even as a local variable.
167 ###    (could be a macro?)
168 ### Reports 3 additional errors for +checks; no longer suppresses name errors in the
169 ###    presense of other errors.
170 ###
171
172 ansireserved:
173         $(LCLINTR) ansireserved.c +ansireserved -nolib -expect 9
174         $(LCLINTR) ansireserved.c +ansireserved +ansireservedlocal -nolib -expect 11
175         $(LCLINTRN) ansireserved.c +checks -exportlocal -exportheadervar -exportheader -expect 12
176         $(LCLINTR) ansireserved2.c +ansireserved -expect 1
177
178 argorder:
179         $(LCLINTR) argorder.c -expect 4
180         $(LCLINTR) argorder2  -expect 5
181         $(LCLINTR) argorder3.c -expect 8
182         $(LCLINTR) argorder4 -expect 9
183         $(LCLINTR) argorder4 -evalorder -expect 1
184         $(LCLINTR) argorder5.c +evalorderuncon -expect 3
185
186 args:
187         $(LCLINTR) args -noeffect -expect 12
188
189 blocks:
190         $(LCLINTR) blocks.c -expect 4
191         $(LCLINTR) blocks.c +ifblock +elseifcomplete -expect 7
192         $(LCLINTR) blocks.c -ifempty +whileempty +whileblock -expect 3
193         $(LCLINTR) blocks.c -ifempty +forempty +forblock -expect 3
194         $(LCLINTR) blocks.c +allempty -expect 6
195         $(LCLINTRN) blocks.c +strict -exportlocal +partial -exportheader -expect 11
196
197 break:
198         $(LCLINTR) break.c -expect 4
199         $(LCLINTR) break.c +deepbreak -expect 6
200         $(LCLINTR) break.c +deepbreak -looploopbreak -expect 5
201
202 cases: 
203         $(LCLINTR) cases.c -expect 5
204         $(LCLINTR) cases2.c -expect 2
205         $(LCLINTRN) cases2.c +checks -exportlocal -exportheader -expect 3
206         $(LCLINTRN) cases2.c +checks -exportlocal -exportheader -branchstate -expect 3
207
208 cast:
209         $(LCLINTR) cast -accessmodule -expect 20
210         $(LCLINTRN) cast2.c +checks -exportlocal -exportheader -expect 3
211
212 ### Two addition errors detected with 2.5 with -numliteral.
213
214 charlit:
215         $(LCLINTR) +hints charlit.c -expect 4
216         $(LCLINTR) +hints -numliteral charlit.c -expect 6
217         $(LCLINTR) +hints charlit.c +charintliteral +ignoresigns
218
219 clauses: 
220         $(LCLINTR) clauses.c +memchecks -expect 4
221         $(LCLINTR) clauses2.c +memchecks 
222         $(LCLINTR) clauses3.c +memchecks -expect 2
223         $(LCLINTR) clauses3.c +memchecks +unixlib -expect 3
224
225 commentchar:
226         $(LCLINTR) commentchar.c -expect 4
227         $(LCLINTR) -commentchar '#' commentchar.c -expect 4
228
229 controldepth:
230         $(LCLINTR) +hints -controlnestdepth 2 controldepth.c -expect 2
231         $(LCLINTR) +hints -controlnestdepth 1 controldepth.c -expect 2
232
233 compdestroy:
234         $(LCLINTRN) compdestroy.c +checks -exportlocal -exportheader -expect 1
235         $(LCLINTRN) compdestroy.c +checks -exportlocal -exportheader +strictdestroy -expect 2
236         $(LCLINTRN) compdestroy.c +checks -exportlocal -exportheader +strictdestroy +strictusereleased -expect 3
237         $(LCLINTRN) compdestroy.c +strict +partial -exportheader -expect 3
238
239 constannot:
240         ${LCLINTRN} constannot.c +arraybounds -exportlocal -expect 2
241
242 csyntax:
243         $(LCLINTR) +quiet -incondefs csyntax.c -expect 1 
244         $(LCLINTR) +quiet csyntax2.c -expect 2
245         $(LCLINTR) +quiet csyntax3.c -expect 1
246         $(LCLINTR) +quiet -incondefs csyntax4.c
247         $(LCLINTR) +quiet csyntax5.c
248         $(LCLINTR) +quiet csyntax6.c
249         $(LCLINTR) +quiet csyntax7.c
250         $(LCLINTR) +quiet csyntax8.c
251         $(LCLINTR) +quiet csyntax9.c
252         $(LCLINTR) +quiet csyntax10.c
253         $(LCLINTR) +quiet csyntax11.c
254         $(LCLINTR) +quiet csyntax12.c
255         $(LCLINTR) +quiet csyntax13.c -expect 1
256         $(LCLINTR) +quiet csyntax14.c
257         $(LCLINTR) +quiet csyntax15.c
258         $(LCLINTR) +quiet csyntax16.c -expect 2
259         $(LCLINTR) +quiet csyntax17.c -expect 3
260
261 czechnames:
262         $(LCLINTR) czechnames.c
263         $(LCLINTR) +hints +czech czechnames.c -expect 2
264         $(LCLINTR) +hints +czech -czechvars czechnames.c -expect 1
265         $(LCLINTR) +hints +czech -accessczech czechnames.c -expect 6
266
267 czechoslovaknames:
268         $(LCLINTR) +hints +czechoslovak czechnames.c -expect 1
269         $(LCLINTR) +hints +czechoslovak slovaknames.c -expect 1
270         $(LCLINTR) +hints +czechoslovak +slovakvars slovaknames.c -expect 2
271
272 ###
273 ### deadparam added 2001-05-27
274 ###
275
276 deadparam:
277         ${LCLINTR} deadparam.c -expect 3
278
279 #
280 # Was expect 3 before 2.4.  Earlier versions did not handle implicit
281 # function pointers correctly.
282 #
283
284 decl:
285         $(LCLINTR) decl.c -expect 2
286         $(LCLINTRN) decl.c +strict -exportlocal -expect 5
287         $(LCLINTR) decl2 -expect 4
288
289 enum:
290         $(LCLINTR) enum -expect 16
291         $(LCLINTR) enum -misscase -expect 14
292
293 exports:
294         $(LCLINTR) exports.c +exporttype +exportvar +exportfcn +topuse +typeuse -expect 6
295         $(LCLINTR) exports.c +exportany -expect 3
296         $(LCLINTR) exports.c
297
298 external:
299         $(LCLINTR) external.c +partial
300         $(LCLINTR) external.c +partial +distinctexternalnames -expect 2
301         $(LCLINTR) external.c -nolib +partial -externalnamelength 3 -expect 3
302         $(LCLINTR) external.c -nolib +partial -externalnamelength 3 +externalnamecaseinsensitive -expect 3
303         $(LCLINTR) external.c +partial -externalnamelength 3 -expect 4
304
305 fields:
306         $(LCLINTR) fields.c +memchecks -expect 6
307         $(LCLINTR) fields2.c +memchecks -expect 5
308         $(LCLINTR) fields3.c +memchecks
309
310 flags:
311         $(LCLINTR) flags.c -expect 8
312         $(LCLINTR) +nocomments flags.c -expect 2
313
314 ### Added 2001-06-02
315
316 forbody:
317         ${LCLINTR} forbody.c -expect 2
318
319 ### Added 2001-06-03
320 format:
321         ${LCLINTR} format.c -expect 3
322         ${LCLINTR} format.c -formatconst 
323
324 # two new errors (invalid lhs)
325
326 funcpointer:
327         $(LCLINTR) +memchecks +noparams funcpointer.c -expect 18
328
329 glob:
330         $(LCLINTR) glob -expect 4
331         $(LCLINTR) glob -globuse -expect 3
332         $(LCLINTR) glob +globunspec -expect 6
333
334 globals:
335         $(LCLINTR) -modifies globals.c -expect 5
336         $(LCLINTR) -modifies globals.c +allglobals -expect 6
337         $(LCLINTR) -modifies globals.c +impcheckedglobals -expect 6
338         $(LCLINTR) -modifies globals.c -globals -checkstrictglobals -expect 2
339         $(LCLINTR) -modifies globals.c +globunspec -expect 6
340         $(LCLINTR) -modifies globals.c +globunspec +allglobals -expect 8
341
342 # Was -accessfile
343 impabstract: 
344         $(LCLINTR) -accessmodule impabstract.c 
345         $(LCLINTR) -accessmodule +hints +impabstract impabstract.c -expect 2
346         $(LCLINTR) -accessmodule +hints +impabstract impabstract -expect 4
347
348 init:
349         $(LCLINTR) init.c -expect 12
350         $(LCLINTRN) init.c +checks -exportlocal -exportheadervar -expect 15
351
352 inparam:
353         $(LCLINTR) inparam.c -expect 2
354         $(LCLINTR) +impouts inparam.c -expect 1
355
356 internal:
357         $(LCLINTR) internal.c -expect 1
358         $(LCLINTR) internal.c +distinctinternalnames -expect 2
359         $(LCLINTR) internal.c -internalnamelen 28 -expect 3
360         $(LCLINTR) internal.c +internalnamecaseinsensitive -expect 3
361         $(LCLINTR) internal.c +internalnamecaseinsensitive +internalnamelookalike -expect 11
362
363 ###
364 ### iter
365 ### 2001-06-06: Error message for iter.lcl:3,6 fixed to iter.lcl:3:6
366 ### 
367
368 iter:
369         $(LCLINTR) iter -expect 14 -lclexpect 1
370         $(LCLINTR) iter2.c -expect 12
371
372 keep:
373         $(LCLINTR) keep.c +memchecks -expect 6
374
375 ### libs
376 ### 2001-05-22: 2 new errors found (fixed spec of signal)
377 ### 2001-05-30: 3 new errors found (formatconst)
378
379 libs:
380         $(LCLINTR) libs.c +longunsignedunsignedintegral -expect 18
381         $(LCLINTR) libs.c -expect 22
382         $(LCLINTR) libs.c +globunspec +modunspec -expect 25
383         $(LCLINTR) libs.c +strictlib +globunspec +modunspec -expect 42
384
385 lintcomments:
386         $(LCLINTR) lintcomments.c -expect 4
387         $(LCLINTR) lintcomments.c -warnlintcomments -expect 1
388         $(LCLINTR) lintcomments.c -lintcomments -expect 4
389
390 list:
391         $(LCLINTR) list.c -expect 3
392
393 macros:
394         $(LCLINTR) macros -expect 17 
395         $(LCLINTR) macros.c +allmacros -expect 34
396         $(LCLINTR) macros.c +fcnmacros -expect 31
397
398
399 macrosef:
400         $(LCLINTR) macrosef -expect 4
401         $(LCLINTR) macrosef.c +allmacros -expect 3
402         $(LCLINTR) macrosef.c +allmacros +sefuncon -expect 4
403
404 merge:
405         $(LCLINTRN) merge.c +checks -exportlocal -exportheadervar -exportheader -expect 3
406
407 modifies:
408         $(LCLINTR) modifies.c modclient.c +impcheckedstatics +mustmod -expect 7
409
410 modtest:
411         $(LCLINTR) modtest -expect 10
412         $(LCLINTR) modtest +modunspec -expect 13
413         $(LCLINTR) modtest +mustmod -expect 14
414
415 moduncon:
416         $(LCLINTR) moduncon.c +moduncon -memchecks -expect 4
417         $(LCLINTRN) moduncon.c +strict -exportlocal -expect 22
418
419 mongoincludes:
420         $(LCLINTR) mongoincludes.c -includenest 1 -expect 19
421         $(LCLINTR) mongoincludes.c -includenest 2 -expect 10
422         $(LCLINTR) mongoincludes.c -includenest 3 -expect 4
423         $(LCLINTR) mongoincludes.c -includenest 4 -expect 1
424         $(LCLINTR) mongoincludes.c -includenest 5 -expect 0
425
426 mystrncat:
427         $(LCLINTR) mystrncat.c +arraybounds +arrayboundsread -expect 4 
428
429 noeffect:
430         ${LCLINT} noeffect.c +allmacros +checks -expect 3
431
432 null: 
433         $(LCLINTR) null1.c -expect 14
434         $(LCLINTR) null1.c -null -expect 4
435         $(LCLINTR) null2.c -expect 10
436         $(LCLINTR) null3.c -expect 15
437         $(LCLINTR) null3.c -warnunixlib +unixlib -expect 16
438         $(LCLINTR) null4.c -expect 1
439         $(LCLINTR) null5.c -expect 4
440         $(LCLINTR) null6 -expect 4
441         $(LCLINTR) +quiet null6.lcl -dump null6
442         $(LCLINTR) null6.c -load null6 -expect 4
443
444 ### Added for 3.0 (bugs reported by Kevin Broady)
445
446 nullret:
447         $(LCLINTR) nullret.c -expect 2
448         $(LCLINTR) -nullret nullret.c -expect 1
449
450 nullassign:
451         $(LCLINTR) nullassign.c -expect 2
452         $(LCLINTR) -nullassign nullassign.c -expect 1
453
454
455 #
456 # Before 2.4, expected one more because error was reported both as 
457 # dependent and observer.
458 #
459
460 observer:
461         $(LCLINTRN) observer +checks -exportlocal -exportheader -expect 9
462         $(LCLINTRN) observer.c +checks -exportlocal -exportheader -expect 8
463         $(LCLINTR) observer.c -expect 7
464
465 oldstyle:
466         $(LCLINTR) oldstyle -expect 3
467
468 outglob:
469         $(LCLINTR) outglob -expect 10
470
471 outparam:
472         $(LCLINTR) outparam -expect 12
473
474 #
475 # Four new +fcnuse errors for -strict (evans 2001-07-22)
476
477
478 preds:
479         $(LCLINTR) +hints preds.c -expect 6
480         $(LCLINTRN) +hints preds.c -weak -expect 1
481         $(LCLINTRN) +hints preds.c -strict -exportlocal -exportheader -expect 12
482
483 prefixes:
484         $(LCLINTR) prefixes.c +partial
485         $(LCLINTRN) prefixes.c +allmacros +checks -exportlocal +partial -exportheader -exportheadervar -expect 4
486         $(LCLINTR) prefixes.c -typeprefix "T" -expect 2
487         $(LCLINTR) prefixes.c -typeprefix "^" -expect 1
488         $(LCLINTR) prefixes.c -typeprefix "^*" -expect 2
489         $(LCLINTR) prefixes.c -typeprefix "^%*" -expect 2
490         $(LCLINTR) prefixes.c -typeprefix "^~*" -expect 2
491         $(LCLINTR) prefixes.c -typeprefix "^" +typeprefixexclude -expect 7
492         $(LCLINTR) prefixes.c -filestaticprefix "^^" -expect 4
493         $(LCLINTR) prefixes.c -filestaticprefix "^#" -expect 5
494         $(LCLINTR) prefixes.c -filestaticprefix "^?&x" -expect 5
495         $(LCLINTR) prefixes.c -globalprefix "G" -expect 1
496         $(LCLINTR) prefixes.c -globalprefix "&G?_^" -expect 1
497         $(LCLINTR) prefixes.c -externalprefix "G" -expect 5
498         $(LCLINTR) prefixes.c -typeprefix "T" -externalprefix "G" -expect 4
499         $(LCLINTR) prefixes.c -localprefix "?*" +localprefixexclude -expect 13
500
501 printflike:
502         $(LCLINTR) printflike.c -expect 6
503         $(LCLINTR) printflike.c -warnlintcomments -expect 5
504
505 rc:
506         $(LCLINTR) -DMYSTERY='"a flag\"wicked cool"' rc.c -expect 1
507         $(LCLINTR) -DMYSTERY=12 rc.c -expect 1
508         $(LCLINTR) -f rc1.lclintrc rc.c -expect 1
509         $(LCLINTR) -UMYSTERY -f rc1.lclintrc rc.c -expect 1
510         $(LCLINTR) -f rc3.lclintrc rc.c -expect 1
511
512 refcounts:
513         $(LCLINTR) refcounts.c -expect 7 
514
515 release:
516         $(LCLINTR) release.c +memchecks -expect 1
517
518 repexpose:
519         $(LCLINTR) +lh repexpose +memchecks -expect 12
520         $(LCLINTR) repexpose +memchecks +retalias -expect 15
521         $(LCLINTRN) repexpose +checks -exportlocal -expect 27
522
523 ### returned added 2001-05-27
524 ### (Bug discovered checking lclint sources.)
525
526 returned:
527         ${LCLINTR} returned.c -expect 1
528
529 sharing: 
530         $(LCLINTR) sharing1.c -expect 21
531         $(LCLINTR) sharing3.c -expect  3
532         $(LCLINTR) sharing4.c -expect 13
533         $(LCLINTR) sharing4.c -paramimptemp -expect 12
534         $(LCLINTR) sharing5.c -expect 6
535
536 slovaknames:
537         $(LCLINTR) +hints slovaknames.c -expect 1
538         $(LCLINTR) +hints slovaknames.c +accessslovak 
539         $(LCLINTR) +hints +slovak slovaknames.c -expect 3
540         $(LCLINTR) +hints +slovak -slovakvars slovaknames.c -expect 2
541         $(LCLINTR) +hints +slovak -accessslovak slovaknames.c -expect 7
542
543 specclauses:
544         $(LCLINTR) specclauses.c -expect 6
545         $(LCLINTR) specclauses2.c -expect 8
546         $(LCLINTR) specclauses3.c -expect 6
547         $(LCLINTR) specclauses4.c -expect 3
548         $(LCLINTR) specclauses5.c -expect 3
549
550 special:
551         $(LCLINTR) special -expect 20
552         $(LCLINTR) special -relaxquals -expect 22
553
554 stack:
555         $(LCLINTR) stack.c -expect 5
556         $(LCLINTR) stack.c -stackref
557
558 staticarray:
559         $(LCLINTR) staticarray.c -expect 3
560
561 strings:
562         $(LCLINTR) strings.c -expect 3
563         $(LCLINTR) -readonlystrings -expect 1 strings.c
564         $(LCLINTR) +modobserverstrict -maintype -expect 4 strings.c
565
566 structassign:
567         $(LCLINTR) structassign.c -expect 4
568
569 typequals:
570         $(LCLINTR) typequals.c tq.lcl -expect 5
571         $(LCLINTR) typequals.c -expect 2
572
573 ud:
574         $(LCLINTR) ud.c -expect 9
575         $(LCLINTR) ud2 -specundef -expect 3
576
577 ulstypes:
578         $(LCLINTR) ulstypes.c -expect 8
579         $(LCLINTR) ulstypes.c +ignorequals 
580         $(LCLINTRN) ulstypes.c +strict -exportheader -exportheadervar -expect 28
581 # 3 more detected with version 2.5 (change in -numliteral setting)
582
583 union:
584         $(LCLINTR) +memchecks union.c -expect 8
585
586 unreachable:
587         $(LCLINTR) unreachable.c -expect 5
588         $(LCLINTR) -unreachable unreachable.c -expect 2
589         $(LCLINTR) switch.c -expect 4
590
591 ###
592 ### 2001-06-08 evans: 2 new errors after fixing ansireserved name checks
593 ###
594
595 unused:
596         $(LCLINTRN) unused.c +checks -exportlocal -expect 5
597         $(LCLINTRN) unused.c +checks -exportlocal +topuse -expect 8
598
599 ###
600 ### 2001-06-10: Provided by Jim Zalenka
601 ###
602
603 ullint:
604         ${LCLINTRN} ullint.c -expect 5
605         ${LCLINTRN} ullint.c +charint +charintliteral -expect 2
606
607 void:
608         ${LCLINTRN} void.c -expect 2
609
610 ###
611 ### New since 2.5q:
612 ###
613
614 linked:
615         ${LCLINTR} linked.c -expect 4
616         ${LCLINTR} linked2.c -expect 3
617         ${LCLINTR} linked3.c -expect 5
618         ${LCLINTR} linked4.c -expect 6
619         ${LCLINTR} linked5.c -expect 4
620         ${LCLINTR} linked6.c -expect 4
621
622 freearray:
623         ${LCLINTR} freearray.c -expect 1
624
625 ###
626 ### Bugs fixed and new features since version 2.1b
627 ###
628
629 tests2.2:
630         setenv LCLINT '$(LCLINTRN)'; cd tests2.2 ; $(MAKE) -e
631
632 tests2.2a:
633         @cd tests2.2a ; \
634         $(LCLINTR) erik.c -expect 1 ; \
635         $(LCLINTR) boolcomp.c -expect 5 ; \
636         $(LCLINTR) boolenum.c ; \
637         $(LCLINTR) addassign.c -expect 1; \
638         $(LCLINTR) toralf.c -expect 5 ; \
639         $(LCLINTR) fred.c -booltype Bool ; \
640         $(LCLINTR) sizeof.c ; \
641         $(LCLINTR) arrayparam.c -expect 5 ; \
642         $(LCLINTR) notreached.c ; \
643         $(LCLINTR) duff.c -casebreak -firstcase ; \
644         $(LCLINTR) obviousloop.c -expect 4 ; \
645         $(LCLINTR) bitops.c +bitwisesigned -expect 11 ; \
646         $(LCLINTR) bitops.c -expect 5 ; \
647         $(LCLINTR) isalpha.c +strictlib -expect 1 ; \
648         $(LCLINTR) isalpha.c -expect 1 ; \
649         $(LCLINTR) dobb.c ; \
650         $(LCLINTR) popik.c -expect 11
651
652 tests2.4:
653         setenv LCLINT '$(LCLINTRN)'; cd tests2.4 ; $(MAKE) -e
654
655 sizeoftest:
656         @cd sizeoftest; \
657         $(LCLINTR) +arraybounds +arrayboundsread sizeof.c
658
659 bufferTest:
660         @cd bufferTest; \
661         $(LCLINTR) +arraybounds +arrayboundsread test4.c test6.c
662
663 simplebufferConstraintTests:
664         @cd simplebufferConstraintTests; \
665         $(LCLINTR) +arraybounds +arrayboundsread m.c  sizeof.c  test3.c  test7.c
666
667 moreBufferTests:
668         @cd moreBufferTests; \
669         $(LCLINTR) +arraybounds +arrayboundsread +orconstraint unrecogCall.c strrchr.c initialization.c simplifyTest.c strncatNotReallyGood.c strncatReallyGood.c
670
671 maxset:
672         @cd maxset; \
673         $(LCLINTR) -f .lclintrc -booltype "lltX_bool" maxsetannotations.c; \
674         echo $(LCLINTR); \
675         $(LCLINTR) -f .lclintrc -booltype "lltX_bool"  maxsetnoannotations.c
676
677 globalbufferannotation:
678         @cd globalbufferannotation; \
679         $(LCLINTR) +arraybounds +arrayboundsread globalvariable.c
680
681 strchr:
682         @cd strchr; \
683         $(LCLINTR)  +arraybounds +arrayboundsread  strchr.c
684
685 for:
686         @cd for; \
687         $(LCLINTR)  +arraybounds +arrayboundsread  for.c
688
689 tests2.5:
690         setenv LCLINT '$(LCLINTRN)'; cd tests2.5 ; $(MAKE) -e
691
692 metastate:
693         setenv LCLINT '$(LCLINTRN)'; cd metastate ; $(MAKE) -e
694
695 mergestate:
696         setenv LCLINT '$(LCLINTRN)'; cd mergestate ; $(MAKE) -e
697
698 tainted:
699         setenv LCLINT '$(LCLINTRN)'; cd tainted ; $(MAKE) -e
700
701 fileio:
702         setenv LCLINT '$(LCLINTRN)'; cd fileio ; $(MAKE) -e
703
704 warnuse:
705         setenv LCLINT '$(LCLINTRN)'; cd warnuse ; $(MAKE) -e
706
707 ensuresclauses:
708         setenv LCLINT '$(LCLINTRN)'; cd ensuresclauses ; $(MAKE) -e
709
710 ###
711 ### Integration Tests
712 ###
713
714 db1:
715         setenv LCLINT '$(LCLINTRN)'; cd db1; $(MAKE) -e test
716
717
718 ### evans 2000-12-22
719 ### 2 errors are no longer reported, since eref is immutable.
720 ### Need to clarify what it means for an object to be immutable;
721 ### there should be 2 types with different storage requirements.
722
723 db2:
724         setenv LCLINT '$(LCLINTRN)'; cd db2; $(MAKE) -e test
725
726 db3:
727         setenv LCLINT '$(LCLINTRN)'; cd db3; $(MAKE) -e test
728
729 clean:
730         -rm -f *~ #*# *.o *.lcs a.out 
731         -cd db1 ; $(MAKE) clean
732         -cd db2 ; $(MAKE) clean
733         -cd db3 ; $(MAKE) clean
734
735
736
737
This page took 0.087789 seconds and 3 git commands to generate.