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