1 ##################################################
\r
3 ### Makefile for LCLint testing ###
\r
5 ### designed for use with GNU make ###
\r
7 ##################################################
\r
11 .SUFFIXES: .out .expect .c .lcl .h .lh .diff
\r
14 SPLINT = ../bin/splint.exe
\r
16 ### This is horrible! Can't we make top_builddir absolute?
\r
17 SPLINTNEST = ../../bin/splint.exe
\r
19 SPLINTPNEST = $(SPLINTNEST) -nof
\r
20 SPLINTP = $(SPLINT) -nof
\r
22 # Make sure .splintrc files are not used so test results do not
\r
23 # depend on local settings.
\r
24 SPLINTRN = $(SPLINTP) -hints -booltype "bool"
\r
25 SPLINTR = $(SPLINTRN) -exportlocal +debugfcnconstraint
\r
27 SPLINTRNNEST = $(SPLINTPNEST) -hints -booltype "bool"
\r
28 SPLINTRNEST = $(SPLINTRNNEST) -exportlocal +debugfcnconstraint
\r
31 ### rcfiles not included becuase file names will not match exactly
\r
36 abstptr abstract alias alttypes ansireserved argorder \
\r
37 args arraydims arrayinit arraylit blocks break cases cast chararraylit charlit clauses commentchar compdestroy \
\r
38 compoundliterals compoundstmt constannot controldepth csyntax czechnames czechoslovaknames deadparam \
\r
39 decl divzero enum exports external fields flags forbody format freearray \
\r
40 funcpointer functionmacro glob globals impabstract info init inparam internal iter keep libs \
\r
41 linked lintcomments list loopexec looptesteffect \
\r
42 macros macrosef merge mergenull modifies modtest moduncon \
\r
43 mongoincludes mystrncat noeffect null observer oldstyle outglob outparam \
\r
44 parentype postnotnull preds prefixes printflike rc refcounts release repexpose \
\r
45 returned sharing shifts sizesigns slovaknames \
\r
47 special stack staticarray strings \
\r
49 structassign typequals typeof ud ulstypes union unioninit \
\r
50 unnamedsu unreachable unsignedcompare \
\r
51 unused ullint utypes void widestrings
\r
53 UNITEXPECTS = $(addsuffix .expect, $(UNITTESTS))
\r
55 ### warnuse doesn't work yet!
\r
56 SUBDIRTESTS = metastate mergestate tainted fileio \
\r
57 simplebufferConstraintTests moreBufferTests moreBufferTests2 globalbufferannotation \
\r
58 maxset strchr for manual\
\r
59 tests2.2 tests2.4 tests2.5 db1 db2 db3
\r
61 SPLINTTESTS = $(UNITTESTS) $(SUBDIRTESTS)
\r
71 quicktest: $(SPLINTTESTS)
\r
78 #@LARCH_PATH=/dev/null; $(SPLINT) -nof empty.lcl
\r
81 @$(SPLINTP) +boolint +boolint
\r
82 @$(SPLINT) -help flags alpha
\r
86 $(SPLINTR) abstptr -expect 9
\r
87 $(SPLINTR) abstptr +voidabstract -expect 6
\r
91 $(SPLINTR) abst_t.lcl commentcmd.c -expect 15
\r
96 $(SPLINTR) mut alias +globalias -expect 19
\r
97 $(SPLINTR) mut alias2 +globalias -expect 17
\r
98 $(SPLINTR) +lh alias3 -expect 14
\r
99 $(SPLINTR) +lh alias4 +boolint
\r
100 $(SPLINTR) alias4 -pred +retalias -expect 6
\r
101 $(SPLINTR) +lh alias5 +memchecks -null -specundef -expect 5
\r
105 $(SPLINTR) alttypes.c -expect 2
\r
108 ### evans 2001-06-07 - updated nameCheck.c to reflect C9X.
\r
109 ### Reports one new errors for ansireserved.c - wctomb is bad even as a local
\r
110 ### variable (could be a macro?)
\r
111 ### Reports 3 additional errors for +checks; no longer suppresses name errors
\r
112 ### in the presense of other errors.
\r
115 .PHONY: ansireserved
\r
117 $(SPLINTR) ansireserved.c +ansireserved -nolib -expect 9
\r
118 $(SPLINTR) ansireserved.c +ansireserved +ansireservedlocal -nolib -expect 11
\r
119 $(SPLINTRN) ansireserved.c +checks -exportlocal -exportheadervar -exportheader -expect 12
\r
120 $(SPLINTR) ansireserved2.c +ansireserved -expect 1
\r
124 $(SPLINTR) argorder.c -expect 4
\r
125 $(SPLINTR) argorder2 -expect 5
\r
126 $(SPLINTR) argorder3.c -expect 8
\r
127 $(SPLINTR) argorder4 -expect 9
\r
128 $(SPLINTR) argorder4 -evalorder -expect 1
\r
129 $(SPLINTR) argorder5.c +evalorderuncon -expect 3
\r
133 $(SPLINTR) args -noeffect -expect 12
\r
137 $(SPLINTR) arraydims.c -varuse -expect 2
\r
138 $(SPLINTR) arraydims.c -initsize -varuse
\r
142 $(SPLINTR) arrayinit.c -expect 9
\r
146 $(SPLINTR) arraylit.c -expect 2
\r
147 $(SPLINTR) arraylit.c +stringliteralsmaller -expect 4
\r
151 $(SPLINTR) blocks.c -expect 4
\r
152 $(SPLINTR) blocks.c +ifblock +elseifcomplete -expect 7
\r
153 $(SPLINTR) blocks.c -ifempty +whileempty +whileblock -expect 3
\r
154 $(SPLINTR) blocks.c -ifempty +forempty +forblock -expect 3
\r
155 $(SPLINTR) blocks.c +allempty -expect 6
\r
156 $(SPLINTRN) blocks.c +strict -exportlocal +partial -exportheader -expect 11
\r
160 $(SPLINTR) break.c -expect 4
\r
161 $(SPLINTR) break.c +deepbreak -expect 6
\r
162 $(SPLINTR) break.c +deepbreak -looploopbreak -expect 5
\r
166 $(SPLINTR) cases.c -expect 5
\r
167 $(SPLINTR) cases2.c -expect 2
\r
168 $(SPLINTRN) cases2.c +checks -exportlocal -exportheader -expect 3
\r
169 $(SPLINTRN) cases2.c +checks -exportlocal -exportheader -branchstate -expect 3
\r
173 $(SPLINTR) cast -accessmodule -expect 20
\r
174 $(SPLINTRN) cast2.c +checks -exportlocal -exportheader -expect 3
\r
176 .PHONY: chararraylit
\r
178 -$(SPLINTR) chararraylit.c -expect 2
\r
180 ### Two addition errors detected with 2.5 with -numliteral.
\r
184 $(SPLINTR) +hints charlit.c -expect 4
\r
185 $(SPLINTR) +hints -numliteral charlit.c -expect 6
\r
186 $(SPLINTR) +hints charlit.c +charintliteral +ignoresigns
\r
190 $(SPLINTR) clauses.c +memchecks -expect 4
\r
191 $(SPLINTR) clauses2.c +memchecks
\r
192 $(SPLINTR) clauses3.c +memchecks -expect 2
\r
193 $(SPLINTR) clauses3.c +memchecks +unixlib -expect 3
\r
195 .PHONY: commentchar
\r
197 $(SPLINTR) commentchar.c -expect 4
\r
198 $(SPLINTR) -commentchar '#' commentchar.c -expect 4
\r
200 .PHONY: controldepth
\r
202 $(SPLINTR) +hints -controlnestdepth 2 controldepth.c -expect 2
\r
203 $(SPLINTR) +hints -controlnestdepth 1 controldepth.c -expect 2
\r
205 .PHONY: compdestroy
\r
207 $(SPLINTRN) compdestroy.c +checks -exportlocal -exportheader -expect 1
\r
208 $(SPLINTRN) compdestroy.c +checks -exportlocal -exportheader +strictdestroy -expect 2
\r
209 $(SPLINTRN) compdestroy.c +checks -exportlocal -exportheader +strictdestroy +strictusereleased -expect 3
\r
210 $(SPLINTRN) compdestroy.c +strict +partial -exportheader -expect 3
\r
212 .PHONY: compoundliterals
\r
214 ${SPLINTRN} compoundliterals.c
\r
216 .PHONY: compoundstmt
\r
218 ${SPLINTRN} compoundstmt.c -expect 3
\r
222 ${SPLINTRN} constannot.c +boundswrite -exportlocal -expect 2
\r
226 $(SPLINTR) +quiet -incondefs csyntax.c -expect 1
\r
227 $(SPLINTR) +quiet csyntax2.c -expect 2
\r
228 $(SPLINTR) +quiet csyntax3.c -expect 1
\r
229 $(SPLINTR) +quiet -incondefs csyntax4.c
\r
230 $(SPLINTR) +quiet csyntax5.c
\r
231 $(SPLINTR) +quiet csyntax6.c
\r
232 $(SPLINTR) +quiet csyntax7.c
\r
233 $(SPLINTR) +quiet csyntax8.c
\r
234 $(SPLINTR) +quiet csyntax9.c
\r
235 $(SPLINTR) +quiet csyntax10.c
\r
236 $(SPLINTR) +quiet csyntax11.c
\r
237 $(SPLINTR) +quiet csyntax12.c
\r
238 $(SPLINTR) +quiet csyntax13.c -expect 1
\r
239 $(SPLINTR) +quiet csyntax14.c
\r
240 $(SPLINTR) +quiet csyntax15.c
\r
241 $(SPLINTR) +quiet csyntax16.c -expect 2
\r
242 $(SPLINTR) +quiet csyntax17.c -expect 3
\r
246 $(SPLINTR) czechnames.c
\r
247 $(SPLINTR) +hints +czech czechnames.c -expect 2
\r
248 $(SPLINTR) +hints +czech -czechvars czechnames.c -expect 1
\r
249 $(SPLINTR) +hints +czech -accessczech czechnames.c -expect 6
\r
251 .PHONY: czechoslovaknames
\r
253 $(SPLINTR) +hints +czechoslovak czechnames.c -expect 1
\r
254 $(SPLINTR) +hints +czechoslovak slovaknames.c -expect 1
\r
255 $(SPLINTR) +hints +czechoslovak +slovakvars slovaknames.c -expect 2
\r
258 ### deadparam added 2001-05-27
\r
263 ${SPLINTR} deadparam.c -expect 3
\r
266 # Was expect 3 before 2.4. Earlier versions did not handle implicit
\r
267 # function pointers correctly.
\r
272 $(SPLINTR) decl.c -expect 2
\r
273 $(SPLINTRN) decl.c +strict -exportlocal -expect 5
\r
274 $(SPLINTR) decl2 -expect 4
\r
278 $(SPLINTR) divzero.c -varuse -expect 0
\r
282 $(SPLINTR) enum -expect 16
\r
283 $(SPLINTR) enum -misscase -expect 14
\r
287 -$(SPLINTR) enumtag.c -expect 2
\r
291 $(SPLINTR) exports.c +exporttype +exportvar +exportfcn +topuse +typeuse -expect 6
\r
292 $(SPLINTR) exports.c +exportany -expect 3
\r
293 $(SPLINTR) exports.c
\r
297 $(SPLINTR) external.c +partial
\r
298 $(SPLINTR) external.c +partial +distinctexternalnames +ansi89limits -expect 2
\r
299 $(SPLINTR) external.c -nolib +partial -externalnamelength 3 -expect 3
\r
300 $(SPLINTR) external.c -nolib +partial -externalnamelength 3 +externalnamecaseinsensitive -expect 3
\r
301 $(SPLINTR) external.c +partial -externalnamelength 3 -expect 4
\r
305 $(SPLINTR) fields.c +memchecks -expect 6
\r
306 $(SPLINTR) fields2.c +memchecks -expect 5
\r
307 $(SPLINTR) fields3.c +memchecks
\r
311 $(SPLINTR) flags.c -expect 8
\r
312 $(SPLINTR) +nocomments flags.c -expect 2
\r
314 ### Added 2001-06-02
\r
318 ${SPLINTR} forbody.c -expect 2
\r
320 ### Added 2001-06-03
\r
323 ${SPLINTR} format.c -expect 3
\r
324 ${SPLINTR} format.c -formatconst
\r
326 # two new errors (invalid lhs)
\r
328 .PHONY: funcpointer
\r
330 $(SPLINTR) +memchecks +noparams funcpointer.c -expect 18
\r
332 .PHONY: functionmacro
\r
334 $(SPLINTR) functionmacro.c -expect 2
\r
338 $(SPLINTR) glob -expect 4
\r
339 $(SPLINTR) glob -globuse -expect 3
\r
340 $(SPLINTR) glob +globunspec -expect 6
\r
344 $(SPLINTR) -modifies globals.c -expect 5
\r
345 $(SPLINTR) -modifies globals.c +allglobals -expect 6
\r
346 $(SPLINTR) -modifies globals.c +impcheckedglobals -expect 6
\r
347 $(SPLINTR) -modifies globals.c -globals -checkstrictglobals -expect 2
\r
348 $(SPLINTR) -modifies globals.c +globunspec -expect 6
\r
349 $(SPLINTR) -modifies globals.c +globunspec +allglobals -expect 8
\r
352 .PHONY: impabstract
\r
354 $(SPLINTR) -accessmodule impabstract.c
\r
355 $(SPLINTR) -accessmodule +hints +impabstract impabstract.c -expect 2
\r
356 $(SPLINTR) -accessmodule +hints +impabstract impabstract -expect 4
\r
359 ### evans 2001-12-30: Handle unrecognized pre-processor directives
\r
360 ### (Reported by Pierluigi Sanzani)
\r
364 ${SPLINTR} info.c -expect 4
\r
366 ### evans 2001-10-14: Expected errors updated
\r
369 $(SPLINTR) init.c -expect 14
\r
370 $(SPLINTRN) init.c +checks -exportlocal -exportheadervar -expect 17
\r
374 $(SPLINTR) inparam.c -expect 2
\r
375 $(SPLINTR) +impouts inparam.c -expect 1
\r
379 $(SPLINTR) internal.c -expect 1
\r
380 $(SPLINTR) internal.c +distinctinternalnames -expect 1
\r
381 $(SPLINTR) internal.c +distinctinternalnames +ansi89limits -expect 2
\r
382 $(SPLINTR) internal.c -internalnamelen 28 -expect 3
\r
383 $(SPLINTR) internal.c +internalnamecaseinsensitive -expect 3
\r
384 $(SPLINTR) internal.c +internalnamecaseinsensitive +internalnamelookalike -expect 11
\r
388 ### 2001-06-06: Error message for iter.lcl:3,6 fixed to iter.lcl:3:6
\r
393 $(SPLINTR) iter -expect 14 -lclexpect 1
\r
394 $(SPLINTR) iter2.c -expect 12
\r
398 $(SPLINTR) keep.c +memchecks -expect 6
\r
401 ### 2001-05-22: 2 new errors found (fixed spec of signal)
\r
402 ### 2001-05-30: 3 new errors found (formatconst)
\r
406 $(SPLINTR) libs.c +longunsignedunsignedintegral -expect 18
\r
407 $(SPLINTR) libs.c -expect 22
\r
408 $(SPLINTR) libs.c +globunspec +modunspec -expect 25
\r
409 $(SPLINTR) libs.c +strictlib +globunspec +modunspec -expect 42
\r
411 .PHONY: lintcomments
\r
413 $(SPLINTR) lintcomments.c -expect 5
\r
414 $(SPLINTR) lintcomments.c -warnlintcomments -expect 1
\r
415 $(SPLINTR) lintcomments.c -lintcomments -expect 4
\r
419 $(SPLINTR) list.c -expect 3
\r
422 ### 2002-01-01: Added test case for obvious loop execution.
\r
427 $(SPLINTR) loopexec.c -expect 1
\r
428 $(SPLINTR) loopexec.c -obviousloopexec -expect 3
\r
430 .PHONY: looptesteffect
\r
432 $(SPLINTR) looptesteffect.c -expect 1
\r
436 $(SPLINTR) macros -expect 17
\r
437 $(SPLINTR) macros.c +allmacros -expect 34
\r
438 $(SPLINTR) macros.c +fcnmacros -expect 31
\r
442 $(SPLINTR) macrosef -expect 4
\r
443 $(SPLINTR) macrosef.c +allmacros -expect 3
\r
444 $(SPLINTR) macrosef.c +allmacros +sefuncon -expect 4
\r
448 $(SPLINTRN) merge.c +checks -exportlocal -exportheadervar -exportheader -expect 3
\r
452 $(SPLINTRN) mergenull.c
\r
456 $(SPLINTR) modifies.c modclient.c +impcheckedstatics +mustmod -expect 7
\r
460 $(SPLINTR) modtest -expect 10
\r
461 $(SPLINTR) modtest +modunspec -expect 13
\r
462 $(SPLINTR) modtest +mustmod -expect 14
\r
466 $(SPLINTR) moduncon.c +moduncon -memchecks -expect 4
\r
467 $(SPLINTRN) moduncon.c +strict -exportlocal -expect 22
\r
469 .PHONY: mongoincludes
\r
471 $(SPLINTR) mongoincludes.c -includenest 1 -expect 19
\r
472 $(SPLINTR) mongoincludes.c -includenest 2 -expect 10
\r
473 $(SPLINTR) mongoincludes.c -includenest 3 -expect 4
\r
474 $(SPLINTR) mongoincludes.c -includenest 4 -expect 1
\r
475 $(SPLINTR) mongoincludes.c -includenest 5 -expect 0
\r
479 $(SPLINTR) mystrncat.c +boundsread +boundswrite -expect 4
\r
483 ${SPLINTP} noeffect.c +allmacros +checks -expect 3
\r
486 ### 2002-01-01: null1.c: expect increased to 15 because out must be defined
\r
487 ### checking detects one new error
\r
492 $(SPLINTR) null1.c -expect 15
\r
493 $(SPLINTR) null1.c -null -mustdefine -expect 4
\r
494 $(SPLINTR) null2.c -expect 11
\r
495 $(SPLINTR) null3.c -expect 15
\r
496 $(SPLINTR) null3.c -warnunixlib +unixlib -expect 16
\r
497 $(SPLINTR) null4.c -expect 1
\r
498 $(SPLINTR) null5.c -expect 4
\r
499 $(SPLINTR) null6 -expect 4
\r
500 $(SPLINTR) +quiet null6.lcl -dump null6
\r
501 $(SPLINTR) null6.c -load null6 -expect 4
\r
503 ### Added for 3.0 (bugs reported by Kevin Broady)
\r
507 $(SPLINTR) nullret.c -expect 2
\r
508 $(SPLINTR) -nullret nullret.c -expect 1
\r
512 $(SPLINTR) nullassign.c -expect 2
\r
513 $(SPLINTR) -nullassign nullassign.c -expect 1
\r
516 # Before 2.4, expected one more because error was reported both as
\r
517 # dependent and observer.
\r
522 $(SPLINTRN) observer +checks -exportlocal -exportheader -expect 9
\r
523 $(SPLINTRN) observer.c +checks -exportlocal -exportheader -expect 8
\r
524 $(SPLINTR) observer.c -expect 7
\r
528 $(SPLINTR) oldstyle oldstyle2.c -expect 5
\r
532 $(SPLINTR) outglob -expect 10
\r
536 $(SPLINTR) outparam -expect 12
\r
538 ### evans 2001-08-26: postnotnull new
\r
540 .PHONY: postnotnull
\r
542 ${SPLINTR} postnotnull.c -expect 1
\r
544 ### evans 2002-02-09: added parentype.c
\r
547 ${SPLINTR} parentype.c
\r
550 # Four new +fcnuse errors for -strict (evans 2001-07-22)
\r
555 $(SPLINTR) +hints preds.c -expect 6
\r
556 $(SPLINTRN) +hints preds.c -weak -expect 1
\r
557 $(SPLINTRN) +hints preds.c -strict -exportlocal -exportheader -expect 12
\r
561 $(SPLINTR) prefixes.c +partial
\r
562 $(SPLINTRN) prefixes.c +allmacros +checks -exportlocal +partial -exportheader -exportheadervar -expect 4
\r
563 $(SPLINTR) prefixes.c -typeprefix "T" -expect 2
\r
564 $(SPLINTR) prefixes.c -typeprefix "^" -expect 1
\r
565 $(SPLINTR) prefixes.c -typeprefix "^*" -expect 2
\r
566 $(SPLINTR) prefixes.c -typeprefix "^%*" -expect 2
\r
567 $(SPLINTR) prefixes.c -typeprefix "^~*" -expect 2
\r
568 $(SPLINTR) prefixes.c -typeprefix "^" +typeprefixexclude -expect 7
\r
569 $(SPLINTR) prefixes.c -filestaticprefix "^^" -expect 4
\r
570 $(SPLINTR) prefixes.c -filestaticprefix "^#" -expect 5
\r
571 $(SPLINTR) prefixes.c -filestaticprefix "^?&x" -expect 5
\r
572 $(SPLINTR) prefixes.c -globalprefix "G" -expect 1
\r
573 $(SPLINTR) prefixes.c -globalprefix "&G?_^" -expect 1
\r
574 $(SPLINTR) prefixes.c -externalprefix "G" -expect 5
\r
575 $(SPLINTR) prefixes.c -typeprefix "T" -externalprefix "G" -expect 4
\r
576 # herbert: unsolved problem with quoting the '*' here!
\r
577 # $(SPLINTR) prefixes.c -localprefix "?*" +localprefixexclude -expect 13
\r
581 $(SPLINTR) printflike.c -expect 6
\r
582 $(SPLINTR) printflike.c -warnlintcomments -expect 5
\r
586 # herbert unsolved problem with quoting here!
\r
587 # $(SPLINTR) -DMYSTERY='"a flag\"wicked cool"' rc.c -expect 1
\r
588 $(SPLINTR) -DMYSTERY=12 rc.c -expect 1
\r
589 $(SPLINTR) -f rc1.splintrc rc.c -expect 1
\r
590 $(SPLINTR) -UMYSTERY -f rc1.splintrc rc.c -expect 1
\r
591 $(SPLINTR) -f rc3.splintrc.os2 rc.c -expect 1
\r
595 cd rcfiles; ${MAKE} SPLINT="$(SPLINTPNEST)"
\r
599 $(SPLINTR) refcounts.c -expect 7
\r
603 $(SPLINTR) release.c +memchecks -expect 1
\r
607 $(SPLINTR) +lh repexpose +memchecks -expect 12
\r
608 $(SPLINTR) repexpose +memchecks +retalias -expect 15
\r
609 $(SPLINTRN) repexpose +checks -exportlocal -expect 27
\r
611 ### returned added 2001-05-27
\r
612 ### (Bug discovered checking splint sources.)
\r
616 ${SPLINTR} returned.c -expect 1
\r
620 $(SPLINTR) sharing1.c -expect 21
\r
621 $(SPLINTR) sharing3.c -expect 3
\r
622 $(SPLINTR) sharing4.c -expect 13
\r
623 $(SPLINTR) sharing4.c -paramimptemp -expect 12
\r
624 $(SPLINTR) sharing5.c -expect 6
\r
628 $(SPLINTR) shifts.c -expect 4
\r
629 $(SPLINTR) shifts.c -shiftimplementation -expect 3
\r
630 $(SPLINTR) shifts.c -shiftnegative -expect 1
\r
632 ### evans - added 2002-08-17: check warnings with arbitrary integral types
\r
634 -$(SPLINTR) +strict sizesigns.c
\r
635 -$(SPLINTR) +strict +ignoresigns sizesigns.c
\r
636 -$(SPLINTR) +strict +matcharbitraryintegral sizesigns.c
\r
637 -$(SPLINTR) +strict +matcharbitraryintegral +ignoresignz sizesigns.c
\r
639 .PHONY: slovaknames
\r
641 $(SPLINTR) +hints slovaknames.c -expect 1
\r
642 $(SPLINTR) +hints slovaknames.c +accessslovak
\r
643 $(SPLINTR) +hints +slovak slovaknames.c -expect 3
\r
644 $(SPLINTR) +hints +slovak -slovakvars slovaknames.c -expect 2
\r
645 $(SPLINTR) +hints +slovak -accessslovak slovaknames.c -expect 7
\r
647 .PHONY: specclauses
\r
649 $(SPLINTR) specclauses.c -expect 6
\r
650 $(SPLINTR) specclauses2.c -expect 8
\r
651 $(SPLINTR) specclauses3.c -expect 5
\r
652 $(SPLINTR) specclauses4.c -expect 3
\r
653 $(SPLINTR) specclauses5.c -expect 3
\r
655 .PHONY: specclauses1
\r
657 $(SPLINTR) specclauses.c -expect 6
\r
659 .PHONY: specclauses2
\r
661 $(SPLINTR) specclauses2.c -expect 8
\r
663 .PHONY: specclauses3
\r
665 $(SPLINTR) specclauses3.c -expect 6
\r
667 .PHONY: specclauses4
\r
669 $(SPLINTR) specclauses4.c -expect 3
\r
671 .PHONY: specclauses5
\r
673 $(SPLINTR) specclauses5.c -expect 3
\r
677 $(SPLINTR) special -expect 20
\r
678 $(SPLINTR) special -relaxquals -expect 22
\r
682 $(SPLINTR) stack.c -expect 5
\r
683 $(SPLINTR) stack.c -stackref
\r
685 .PHONY: staticarray
\r
687 $(SPLINTR) staticarray.c -expect 3
\r
690 ### evans 2002-03-16: Default setting of stringliteralnoroomfinalnull changed
\r
693 .PHONY: stringliteral
\r
695 $(SPLINTR) stringliteral.c -stringliteralnoroomfinalnull -expect 3
\r
696 $(SPLINTR) stringliteral.c -expect 4
\r
700 $(SPLINTR) strings.c -expect 3
\r
701 $(SPLINTR) -readonlystrings -expect 1 strings.c
\r
702 $(SPLINTR) +modobserverstrict -maintype -expect 4 strings.c
\r
704 .PHONY: structassign
\r
706 $(SPLINTR) structassign.c -expect 4
\r
710 $(SPLINTR) typeof.c -expect 2
\r
714 $(SPLINTR) typequals.c tq.lcl -expect 5
\r
715 $(SPLINTR) typequals.c -expect 2
\r
719 $(SPLINTR) ud.c -expect 9
\r
720 $(SPLINTR) ud2 -specundef -expect 3
\r
724 $(SPLINTR) ulstypes.c -expect 8
\r
725 $(SPLINTR) ulstypes.c +ignorequals
\r
726 $(SPLINTRN) ulstypes.c +strict -exportheader -exportheadervar -expect 28
\r
728 # 3 more detected with version 2.5 (change in -numliteral setting)
\r
732 $(SPLINTR) +memchecks union.c -expect 8
\r
735 ### Added 2001-12-30: fixed union initializer checking in response to
\r
736 ### bug report from Jim Zelenka.
\r
741 $(SPLINTR) unioninit.c -expect 2
\r
745 $(SPLINTR) unnamedsu.c -expect 0
\r
747 .PHONY: unreachable
\r
749 $(SPLINTR) unreachable.c -expect 5
\r
750 $(SPLINTR) -unreachable unreachable.c -expect 2
\r
751 $(SPLINTR) switch.c -expect 4
\r
753 .PHONY: unsignedcompare
\r
755 ${SPLINTR} +posixlib unsignedcompare.c -expect 4
\r
758 ### 2001-06-08 evans: 2 new errors after fixing ansireserved name checks
\r
763 $(SPLINTRN) unused.c +checks -exportlocal -expect 5
\r
764 $(SPLINTRN) unused.c +checks -exportlocal +topuse -expect 8
\r
767 ### 2001-06-10: Provided by Jim Zalenka
\r
772 ${SPLINTRN} ullint.c -expect 5
\r
773 ${SPLINTRN} ullint.c +charint +charintliteral -expect 2
\r
776 ### 2001-12-30: Poor warnings reported by Peter Deutsch
\r
781 ${SPLINTRN} utypes.c -expect 2
\r
787 ${SPLINTRN} void.c -expect 2
\r
790 ### 2001-12-30: Problems with wide character strings reported by Nelson Beebe
\r
793 .PHONY: widestrings
\r
795 ${SPLINTRN} widestrings.c -expect 2
\r
798 ### New since 2.5q:
\r
803 ${SPLINTR} linked.c -expect 4
\r
804 ${SPLINTR} linked2.c -expect 3
\r
805 ${SPLINTR} linked3.c -expect 5
\r
806 ${SPLINTR} linked4.c -expect 6
\r
807 ${SPLINTR} linked5.c -expect 4
\r
808 ${SPLINTR} linked6.c -expect 4
\r
812 ${SPLINTR} freearray.c -expect 1
\r
816 $(SPLINTR) +bounds sizeof.c -expect 1
\r
820 $(SPLINTR) +bounds buffertest1.c -expect 5
\r
822 .PHONY: $(SUBDIRTESTS)
\r
824 $(MAKE) -C $@ SPLINT="$(SPLINTRNNEST)"
\r