1 ## This file currently uses GNU Make features; those should really be replaced
2 ## by configure-time handling.
4 AUTOMAKE_OPTIONS = 1.5 foreign
6 ## Use this to configure diff output
11 ## Set up the splint commands
13 SPLINT = $(top_builddir)/src/splint$(EXEEXT)
19 ### This is horrible! Can't we make top_builddir absolute?
20 SPLINTNEST = ../$(top_builddir)/src/splint$(EXEEXT)
22 SPLINTPNEST = @$(SPLINTNEST) -nof
23 SPLINTP = @$(SPLINT) -nof
25 # Make sure .splintrc files are not used so test results do not
26 # depend on local settings.
27 SPLINTRN = $(SPLINTP) -hints -booltype "bool"
28 SPLINTR = $(SPLINTRN) -exportlocal +debugfcnconstraint
30 SPLINTRNNEST = $(SPLINTPNEST) -hints -booltype "bool"
31 SPLINTRNEST = $(SPLINTRNNEST) -exportlocal +debugfcnconstraint
34 ### rcfiles not included becuase file names will not match exactly
39 abstptr abstract alias alttypes ansireserved argorder \
40 args blocks break cases cast charlit clauses commentchar compdestroy \
41 constannot controldepth csyntax czechnames czechoslovaknames deadparam \
42 decl enum exports external fields flags forbody format freearray \
43 funcpointer functionmacro glob globals impabstract info init inparam internal iter keep libs \
44 linked lintcomments list loopexec \
45 macros macrosef merge mergenull modifies modtest moduncon \
46 mongoincludes mystrncat noeffect null observer oldstyle outglob outparam \
47 postnotnull preds prefixes printflike rc refcounts release repexpose \
48 returned sharing shifts slovaknames \
50 special stack staticarray strings \
51 structassign typequals ud ulstypes union unioninit unreachable unsignedcompare \
52 unused ullint utypes void widestrings
53 UNITEXPECTS = $(addsuffix .expect, $(UNITTESTS))
55 SUBDIRTESTS = metastate mergestate tainted fileio \
56 simplebufferConstraintTests moreBufferTests moreBufferTests2 globalbufferannotation \
57 maxset strchr for manual
59 ### warnuse doesn't work yet!
60 SUBDIRTESTS += tests2.2
61 SUBDIRTESTS += tests2.4
62 SUBDIRTESTS += tests2.5
63 SUBDIRTESTS += db1 db2 db3
65 SPLINTTESTS = $(UNITTESTS) $(SUBDIRTESTS)
74 -$(SPLINTP) -help version
80 -@LARCH_PATH=/dev/null; $(SPLINT) -nof empty.lcl
83 -@$(SPLINTP) +boolint +boolint
84 -@$(SPLINTP) -help flags alpha
87 #commenting these out for the release because they will almost always fail
88 #since the default will only fit one system
89 #Don't want to panic the user...
90 # -@$(SPLINTP) -help flags all | $(GREP) -v "^larchpath <path> " | $(GREP) -v "^lclimportdir <directory> " | $(GREP) -v " Path argument. Default: " | $(GREP) -v " Directory argument. Default: " | $(GREP) -v " lclimportdir <directory> "
91 # -@$(SPLINTP) -help flags full | $(GREP) -v "^larchpath <path> " | $(GREP) -v "^lclimportdir <directory> " | $(GREP) -v " Path argument. Default: " | $(GREP) -v " Directory argument. Default: " | $(GREP) -v " lclimportdir <directory> "
92 # -@$(SPLINTP) -help flags manual | $(GREP) -v "^larchpath <path> " | $(GREP) -v "^lclimportdir <directory> " | $(GREP) -v " Path argument. Default: " | $(GREP) -v " Directory argument. Default: " | $(GREP) -v " lclimportdir <directory> "
94 #larch and lclimportdir have different hardcoded default paths so don't include the path in the output..
99 -rm -f *~ #*# *.o *.lcs a.out
100 -cd db1; $(MAKE) clean
101 -cd db2; $(MAKE) clean
102 -cd db3; $(MAKE) clean
104 ## All tests need splint to be built
106 $(SPLINTTESTS): $(SPLINT)
109 cd $(top_builddir)/src; $(MAKE)
111 ## This is a kludgey way of processing the output to make it match exactly
112 ## The last matcher is the most annoying, as it can differ (the first two are
113 ## pretty much fixed); usually, you'll have 'make[1]:', but on DOS it is
114 ## 'make.exe[1]:' (it might even be 'c:/path/to/make.exe[1]:', but that's
116 ## The tests should really be re-done as shell-scripts or something... maybe
117 ## autotest could be used once it's finished.
119 CLEANOUTPUT = $(GREP) -v "Splint 3." | $(GREP) -v "$(SPLINT)" | $(GREP) -v "^make.*\[[1-9]*\]:" | $(GREP) -v "^gmake.*\[[1-9]*\]:" | $(GREP) -v "^gmake -e" | $(GREP) -v "^make -e" |$(GREP) -v "config.status: creating test/Makefile" | $(GREP) -v "cd .. && " | $(GREP) -v "CONFIG_HEADERS=" | $(GREP) -v "CONFIG_FILES="
124 $(MAKE) $* |& $(CLEANOUTPUT) >$*.expect && cat $*.expect
127 $(MAKE) $* |& $(CLEANOUTPUT) >$*.out && diff $*.expect $*.out
129 #drl temporally take this out.
132 # @echo "Saving old expects..."; \
133 # cat *.expect >expects-`date +"%y-%m-%d-%H"`
134 # @for TEST in $(UNITTESTS) $(INTEGTESTS); do \
135 # echo "Making $$TEST.expect..."; \
136 # $(MAKE) $$TEST 2>&1 | $(CLEANOUTPUT) >$$TEST.expect; \
137 # cat $$TEST.expect; \
142 @for TEST in $(QUICKTESTS); do \
143 echo "Checking $$TEST..."; \
144 $(MAKE) $$TEST 2>&1 | $(CLEANOUTPUT) >$$TEST.out && \
145 $(DIFF) $(DIFFFLAGS) $$TEST.expect $$TEST.out || \
146 echo "*** FAIL ***"; \
151 @echo "Testing $(PACKAGE) $(VERSION)..."
153 @echo "Version Info:"
154 @$(SPLINTP) -help version
155 @$(SPLINTP) -help vars
159 @for TEST in $(SPLINTTESTS); do \
160 echo "Checking $$TEST..."; \
161 $(MAKE) $$TEST 2>&1 | $(CLEANOUTPUT) >$$TEST.out && \
162 $(DIFF) $(DIFFFLAGS) $$TEST.expect $$TEST.out || \
163 echo "*** FAIL ***"; \
166 ### Rules for tests start here
170 -$(SPLINTR) abstptr -expect 9
171 -$(SPLINTR) abstptr +voidabstract -expect 6
175 -$(SPLINTR) abst_t.lcl commentcmd.c -expect 15
180 -$(SPLINTR) mut alias +globalias -expect 19
181 -$(SPLINTR) mut alias2 +globalias -expect 17
182 -$(SPLINTR) +lh alias3 -expect 14
183 -$(SPLINTR) +lh alias4 +boolint
184 -$(SPLINTR) alias4 -pred +retalias -expect 6
185 -$(SPLINTR) +lh alias5 +memchecks -null -specundef -expect 5
189 -$(SPLINTR) alttypes.c -expect 2
192 ### evans 2001-06-07 - updated nameCheck.c to reflect C9X.
193 ### Reports one new errors for ansireserved.c - wctomb is bad even as a local
194 ### variable (could be a macro?)
195 ### Reports 3 additional errors for +checks; no longer suppresses name errors
196 ### in the presense of other errors.
201 -$(SPLINTR) ansireserved.c +ansireserved -nolib -expect 9
202 -$(SPLINTR) ansireserved.c +ansireserved +ansireservedlocal -nolib -expect 11
203 -$(SPLINTRN) ansireserved.c +checks -exportlocal -exportheadervar -exportheader -expect 12
204 -$(SPLINTR) ansireserved2.c +ansireserved -expect 1
208 -$(SPLINTR) argorder.c -expect 4
209 -$(SPLINTR) argorder2 -expect 5
210 -$(SPLINTR) argorder3.c -expect 8
211 -$(SPLINTR) argorder4 -expect 9
212 -$(SPLINTR) argorder4 -evalorder -expect 1
213 -$(SPLINTR) argorder5.c +evalorderuncon -expect 3
217 -$(SPLINTR) args -noeffect -expect 12
221 -$(SPLINTR) blocks.c -expect 4
222 -$(SPLINTR) blocks.c +ifblock +elseifcomplete -expect 7
223 -$(SPLINTR) blocks.c -ifempty +whileempty +whileblock -expect 3
224 -$(SPLINTR) blocks.c -ifempty +forempty +forblock -expect 3
225 -$(SPLINTR) blocks.c +allempty -expect 6
226 -$(SPLINTRN) blocks.c +strict -exportlocal +partial -exportheader -expect 11
230 -$(SPLINTR) break.c -expect 4
231 -$(SPLINTR) break.c +deepbreak -expect 6
232 -$(SPLINTR) break.c +deepbreak -looploopbreak -expect 5
236 -$(SPLINTR) cases.c -expect 5
237 -$(SPLINTR) cases2.c -expect 2
238 -$(SPLINTRN) cases2.c +checks -exportlocal -exportheader -expect 3
239 -$(SPLINTRN) cases2.c +checks -exportlocal -exportheader -branchstate -expect 3
243 -$(SPLINTR) cast -accessmodule -expect 20
244 -$(SPLINTRN) cast2.c +checks -exportlocal -exportheader -expect 3
246 ### Two addition errors detected with 2.5 with -numliteral.
250 -$(SPLINTR) +hints charlit.c -expect 4
251 -$(SPLINTR) +hints -numliteral charlit.c -expect 6
252 -$(SPLINTR) +hints charlit.c +charintliteral +ignoresigns
256 -$(SPLINTR) clauses.c +memchecks -expect 4
257 -$(SPLINTR) clauses2.c +memchecks
258 -$(SPLINTR) clauses3.c +memchecks -expect 2
259 -$(SPLINTR) clauses3.c +memchecks +unixlib -expect 3
263 -$(SPLINTR) commentchar.c -expect 4
264 -$(SPLINTR) -commentchar '#' commentchar.c -expect 4
268 -$(SPLINTR) +hints -controlnestdepth 2 controldepth.c -expect 2
269 -$(SPLINTR) +hints -controlnestdepth 1 controldepth.c -expect 2
273 -$(SPLINTRN) compdestroy.c +checks -exportlocal -exportheader -expect 1
274 -$(SPLINTRN) compdestroy.c +checks -exportlocal -exportheader +strictdestroy -expect 2
275 -$(SPLINTRN) compdestroy.c +checks -exportlocal -exportheader +strictdestroy +strictusereleased -expect 3
276 -$(SPLINTRN) compdestroy.c +strict +partial -exportheader -expect 3
280 ${SPLINTRN} constannot.c +boundswrite -exportlocal -expect 2
284 -$(SPLINTR) +quiet -incondefs csyntax.c -expect 1
285 -$(SPLINTR) +quiet csyntax2.c -expect 2
286 -$(SPLINTR) +quiet csyntax3.c -expect 1
287 -$(SPLINTR) +quiet -incondefs csyntax4.c
288 -$(SPLINTR) +quiet csyntax5.c
289 -$(SPLINTR) +quiet csyntax6.c
290 -$(SPLINTR) +quiet csyntax7.c
291 -$(SPLINTR) +quiet csyntax8.c
292 -$(SPLINTR) +quiet csyntax9.c
293 -$(SPLINTR) +quiet csyntax10.c
294 -$(SPLINTR) +quiet csyntax11.c
295 -$(SPLINTR) +quiet csyntax12.c
296 -$(SPLINTR) +quiet csyntax13.c -expect 1
297 -$(SPLINTR) +quiet csyntax14.c
298 -$(SPLINTR) +quiet csyntax15.c
299 -$(SPLINTR) +quiet csyntax16.c -expect 2
300 -$(SPLINTR) +quiet csyntax17.c -expect 3
304 -$(SPLINTR) czechnames.c
305 -$(SPLINTR) +hints +czech czechnames.c -expect 2
306 -$(SPLINTR) +hints +czech -czechvars czechnames.c -expect 1
307 -$(SPLINTR) +hints +czech -accessczech czechnames.c -expect 6
309 .PHONY: czechoslovaknames
311 -$(SPLINTR) +hints +czechoslovak czechnames.c -expect 1
312 -$(SPLINTR) +hints +czechoslovak slovaknames.c -expect 1
313 -$(SPLINTR) +hints +czechoslovak +slovakvars slovaknames.c -expect 2
316 ### deadparam added 2001-05-27
321 ${SPLINTR} deadparam.c -expect 3
324 # Was expect 3 before 2.4. Earlier versions did not handle implicit
325 # function pointers correctly.
330 -$(SPLINTR) decl.c -expect 2
331 -$(SPLINTRN) decl.c +strict -exportlocal -expect 5
332 -$(SPLINTR) decl2 -expect 4
336 -$(SPLINTR) enum -expect 16
337 -$(SPLINTR) enum -misscase -expect 14
341 -$(SPLINTR) exports.c +exporttype +exportvar +exportfcn +topuse +typeuse -expect 6
342 -$(SPLINTR) exports.c +exportany -expect 3
343 -$(SPLINTR) exports.c
347 -$(SPLINTR) external.c +partial
348 -$(SPLINTR) external.c +partial +distinctexternalnames +ansi89limits -expect 2
349 -$(SPLINTR) external.c -nolib +partial -externalnamelength 3 -expect 3
350 -$(SPLINTR) external.c -nolib +partial -externalnamelength 3 +externalnamecaseinsensitive -expect 3
351 -$(SPLINTR) external.c +partial -externalnamelength 3 -expect 4
355 -$(SPLINTR) fields.c +memchecks -expect 6
356 -$(SPLINTR) fields2.c +memchecks -expect 5
357 -$(SPLINTR) fields3.c +memchecks
361 -$(SPLINTR) flags.c -expect 8
362 -$(SPLINTR) +nocomments flags.c -expect 2
368 ${SPLINTR} forbody.c -expect 2
373 ${SPLINTR} format.c -expect 3
374 ${SPLINTR} format.c -formatconst
376 # two new errors (invalid lhs)
380 -$(SPLINTR) +memchecks +noparams funcpointer.c -expect 18
382 .PHONY: functionmacro
384 -$(SPLINTR) functionmacro.c -expect 2
388 -$(SPLINTR) glob -expect 4
389 -$(SPLINTR) glob -globuse -expect 3
390 -$(SPLINTR) glob +globunspec -expect 6
394 -$(SPLINTR) -modifies globals.c -expect 5
395 -$(SPLINTR) -modifies globals.c +allglobals -expect 6
396 -$(SPLINTR) -modifies globals.c +impcheckedglobals -expect 6
397 -$(SPLINTR) -modifies globals.c -globals -checkstrictglobals -expect 2
398 -$(SPLINTR) -modifies globals.c +globunspec -expect 6
399 -$(SPLINTR) -modifies globals.c +globunspec +allglobals -expect 8
404 -$(SPLINTR) -accessmodule impabstract.c
405 -$(SPLINTR) -accessmodule +hints +impabstract impabstract.c -expect 2
406 -$(SPLINTR) -accessmodule +hints +impabstract impabstract -expect 4
409 ### evans 2001-12-30: Handle unrecognized pre-processor directives
410 ### (Reported by Pierluigi Sanzani)
414 ${SPLINTR} info.c -expect 4
416 ### evans 2001-10-14: Expected errors updated
419 -$(SPLINTR) init.c -expect 14
420 -$(SPLINTRN) init.c +checks -exportlocal -exportheadervar -expect 17
425 -$(SPLINTR) inparam.c -expect 2
426 -$(SPLINTR) +impouts inparam.c -expect 1
430 -$(SPLINTR) internal.c -expect 1
431 -$(SPLINTR) internal.c +distinctinternalnames -expect 1
432 -$(SPLINTR) internal.c +distinctinternalnames +ansi89limits -expect 2
433 -$(SPLINTR) internal.c -internalnamelen 28 -expect 3
434 -$(SPLINTR) internal.c +internalnamecaseinsensitive -expect 3
435 -$(SPLINTR) internal.c +internalnamecaseinsensitive +internalnamelookalike -expect 11
439 ### 2001-06-06: Error message for iter.lcl:3,6 fixed to iter.lcl:3:6
444 -$(SPLINTR) iter -expect 14 -lclexpect 1
445 -$(SPLINTR) iter2.c -expect 12
449 -$(SPLINTR) keep.c +memchecks -expect 6
452 ### 2001-05-22: 2 new errors found (fixed spec of signal)
453 ### 2001-05-30: 3 new errors found (formatconst)
457 -$(SPLINTR) libs.c +longunsignedunsignedintegral -expect 18
458 -$(SPLINTR) libs.c -expect 22
459 -$(SPLINTR) libs.c +globunspec +modunspec -expect 25
460 -$(SPLINTR) libs.c +strictlib +globunspec +modunspec -expect 42
464 -$(SPLINTR) lintcomments.c -expect 5
465 -$(SPLINTR) lintcomments.c -warnlintcomments -expect 1
466 -$(SPLINTR) lintcomments.c -lintcomments -expect 4
470 -$(SPLINTR) list.c -expect 3
473 ### 2002-01-01: Added test case for obvious loop execution.
478 -$(SPLINTR) loopexec.c -expect 1
479 -$(SPLINTR) loopexec.c -obviousloopexec -expect 3
484 -$(SPLINTR) macros -expect 17
485 -$(SPLINTR) macros.c +allmacros -expect 34
486 -$(SPLINTR) macros.c +fcnmacros -expect 31
491 -$(SPLINTR) macrosef -expect 4
492 -$(SPLINTR) macrosef.c +allmacros -expect 3
493 -$(SPLINTR) macrosef.c +allmacros +sefuncon -expect 4
497 -$(SPLINTRN) merge.c +checks -exportlocal -exportheadervar -exportheader -expect 3
501 -$(SPLINTRN) mergenull.c
505 -$(SPLINTR) modifies.c modclient.c +impcheckedstatics +mustmod -expect 7
509 -$(SPLINTR) modtest -expect 10
510 -$(SPLINTR) modtest +modunspec -expect 13
511 -$(SPLINTR) modtest +mustmod -expect 14
515 -$(SPLINTR) moduncon.c +moduncon -memchecks -expect 4
516 -$(SPLINTRN) moduncon.c +strict -exportlocal -expect 22
518 .PHONY: mongoincludes
520 -$(SPLINTR) mongoincludes.c -includenest 1 -expect 19
521 -$(SPLINTR) mongoincludes.c -includenest 2 -expect 10
522 -$(SPLINTR) mongoincludes.c -includenest 3 -expect 4
523 -$(SPLINTR) mongoincludes.c -includenest 4 -expect 1
524 -$(SPLINTR) mongoincludes.c -includenest 5 -expect 0
528 -$(SPLINTR) mystrncat.c +boundsread +boundswrite -expect 4
532 ${SPLINTP} noeffect.c +allmacros +checks -expect 3
535 ### 2002-01-01: null1.c: expect increased to 15 because out must be defined
536 ### checking detects one new error
541 -$(SPLINTR) null1.c -expect 15
542 -$(SPLINTR) null1.c -null -mustdefine -expect 4
543 -$(SPLINTR) null2.c -expect 11
544 -$(SPLINTR) null3.c -expect 15
545 -$(SPLINTR) null3.c -warnunixlib +unixlib -expect 16
546 -$(SPLINTR) null4.c -expect 1
547 -$(SPLINTR) null5.c -expect 4
548 -$(SPLINTR) null6 -expect 4
549 -$(SPLINTR) +quiet null6.lcl -dump null6
550 -$(SPLINTR) null6.c -load null6 -expect 4
552 ### Added for 3.0 (bugs reported by Kevin Broady)
556 -$(SPLINTR) nullret.c -expect 2
557 -$(SPLINTR) -nullret nullret.c -expect 1
561 -$(SPLINTR) nullassign.c -expect 2
562 -$(SPLINTR) -nullassign nullassign.c -expect 1
566 # Before 2.4, expected one more because error was reported both as
567 # dependent and observer.
572 -$(SPLINTRN) observer +checks -exportlocal -exportheader -expect 9
573 -$(SPLINTRN) observer.c +checks -exportlocal -exportheader -expect 8
574 -$(SPLINTR) observer.c -expect 7
578 -$(SPLINTR) oldstyle -expect 3
582 -$(SPLINTR) outglob -expect 10
586 -$(SPLINTR) outparam -expect 12
588 ### evans 2001-08-26: postnotnull new
592 ${SPLINTR} postnotnull.c -expect 1
594 # Four new +fcnuse errors for -strict (evans 2001-07-22)
599 -$(SPLINTR) +hints preds.c -expect 6
600 -$(SPLINTRN) +hints preds.c -weak -expect 1
601 -$(SPLINTRN) +hints preds.c -strict -exportlocal -exportheader -expect 12
605 -$(SPLINTR) prefixes.c +partial
606 -$(SPLINTRN) prefixes.c +allmacros +checks -exportlocal +partial -exportheader -exportheadervar -expect 4
607 -$(SPLINTR) prefixes.c -typeprefix "T" -expect 2
608 -$(SPLINTR) prefixes.c -typeprefix "^" -expect 1
609 -$(SPLINTR) prefixes.c -typeprefix "^*" -expect 2
610 -$(SPLINTR) prefixes.c -typeprefix "^%*" -expect 2
611 -$(SPLINTR) prefixes.c -typeprefix "^~*" -expect 2
612 -$(SPLINTR) prefixes.c -typeprefix "^" +typeprefixexclude -expect 7
613 -$(SPLINTR) prefixes.c -filestaticprefix "^^" -expect 4
614 -$(SPLINTR) prefixes.c -filestaticprefix "^#" -expect 5
615 -$(SPLINTR) prefixes.c -filestaticprefix "^?&x" -expect 5
616 -$(SPLINTR) prefixes.c -globalprefix "G" -expect 1
617 -$(SPLINTR) prefixes.c -globalprefix "&G?_^" -expect 1
618 -$(SPLINTR) prefixes.c -externalprefix "G" -expect 5
619 -$(SPLINTR) prefixes.c -typeprefix "T" -externalprefix "G" -expect 4
620 -$(SPLINTR) prefixes.c -localprefix "?*" +localprefixexclude -expect 13
624 -$(SPLINTR) printflike.c -expect 6
625 -$(SPLINTR) printflike.c -warnlintcomments -expect 5
629 -$(SPLINTR) -DMYSTERY='"a flag\"wicked cool"' rc.c -expect 1
630 -$(SPLINTR) -DMYSTERY=12 rc.c -expect 1
631 -$(SPLINTR) -f rc1.splintrc rc.c -expect 1
632 -$(SPLINTR) -UMYSTERY -f rc1.splintrc rc.c -expect 1
633 -$(SPLINTR) -f rc3.splintrc rc.c -expect 1
637 cd rcfiles; ${MAKE} SPLINT="-$(SPLINTPNEST)"
641 -$(SPLINTR) refcounts.c -expect 7
645 -$(SPLINTR) release.c +memchecks -expect 1
649 -$(SPLINTR) +lh repexpose +memchecks -expect 12
650 -$(SPLINTR) repexpose +memchecks +retalias -expect 15
651 -$(SPLINTRN) repexpose +checks -exportlocal -expect 27
653 ### returned added 2001-05-27
654 ### (Bug discovered checking splint sources.)
658 ${SPLINTR} returned.c -expect 1
662 -$(SPLINTR) sharing1.c -expect 21
663 -$(SPLINTR) sharing3.c -expect 3
664 -$(SPLINTR) sharing4.c -expect 13
665 -$(SPLINTR) sharing4.c -paramimptemp -expect 12
666 -$(SPLINTR) sharing5.c -expect 6
670 -$(SPLINTR) shifts.c -expect 4
671 -$(SPLINTR) shifts.c -shiftimplementation -expect 3
672 -$(SPLINTR) shifts.c -shiftnegative -expect 1
676 -$(SPLINTR) +hints slovaknames.c -expect 1
677 -$(SPLINTR) +hints slovaknames.c +accessslovak
678 -$(SPLINTR) +hints +slovak slovaknames.c -expect 3
679 -$(SPLINTR) +hints +slovak -slovakvars slovaknames.c -expect 2
680 -$(SPLINTR) +hints +slovak -accessslovak slovaknames.c -expect 7
684 -$(SPLINTR) specclauses.c -expect 6
685 -$(SPLINTR) specclauses2.c -expect 8
686 -$(SPLINTR) specclauses3.c -expect 6
687 -$(SPLINTR) specclauses4.c -expect 3
688 -$(SPLINTR) specclauses5.c -expect 3
692 -$(SPLINTR) specclauses.c -expect 6
696 -$(SPLINTR) specclauses2.c -expect 8
700 -$(SPLINTR) specclauses3.c -expect 6
704 -$(SPLINTR) specclauses4.c -expect 3
708 -$(SPLINTR) specclauses5.c -expect 3
712 -$(SPLINTR) special -expect 20
713 -$(SPLINTR) special -relaxquals -expect 22
717 -$(SPLINTR) stack.c -expect 5
718 -$(SPLINTR) stack.c -stackref
722 -$(SPLINTR) staticarray.c -expect 3
726 -$(SPLINTR) strings.c -expect 3
727 -$(SPLINTR) -readonlystrings -expect 1 strings.c
728 -$(SPLINTR) +modobserverstrict -maintype -expect 4 strings.c
732 -$(SPLINTR) structassign.c -expect 4
736 -$(SPLINTR) typequals.c tq.lcl -expect 5
737 -$(SPLINTR) typequals.c -expect 2
741 -$(SPLINTR) ud.c -expect 9
742 -$(SPLINTR) ud2 -specundef -expect 3
746 -$(SPLINTR) ulstypes.c -expect 8
747 -$(SPLINTR) ulstypes.c +ignorequals
748 -$(SPLINTRN) ulstypes.c +strict -exportheader -exportheadervar -expect 28
750 # 3 more detected with version 2.5 (change in -numliteral setting)
754 -$(SPLINTR) +memchecks union.c -expect 8
757 ### Added 2001-12-30: fixed union initializer checking in response to
758 ### bug report from Jim Zelenka.
763 -$(SPLINTR) unioninit.c -expect 2
767 -$(SPLINTR) unreachable.c -expect 5
768 -$(SPLINTR) -unreachable unreachable.c -expect 2
769 -$(SPLINTR) switch.c -expect 4
771 .PHONY: unsignedcompare
773 ${SPLINTR} +posixlib unsignedcompare.c -expect 4
777 ### 2001-06-08 evans: 2 new errors after fixing ansireserved name checks
782 -$(SPLINTRN) unused.c +checks -exportlocal -expect 5
783 -$(SPLINTRN) unused.c +checks -exportlocal +topuse -expect 8
786 ### 2001-06-10: Provided by Jim Zalenka
791 ${SPLINTRN} ullint.c -expect 5
792 ${SPLINTRN} ullint.c +charint +charintliteral -expect 2
795 ### 2001-12-30: Poor warnings reported by Peter Deutsch
800 ${SPLINTRN} utypes.c -expect 6
806 ${SPLINTRN} void.c -expect 2
809 ### 2001-12-30: Problems with wide character strings reported by Nelson Beebe
814 ${SPLINTRN} widestrings.c -expect 2
822 ${SPLINTR} linked.c -expect 4
823 ${SPLINTR} linked2.c -expect 3
824 ${SPLINTR} linked3.c -expect 5
825 ${SPLINTR} linked4.c -expect 6
826 ${SPLINTR} linked5.c -expect 4
827 ${SPLINTR} linked6.c -expect 4
831 ${SPLINTR} freearray.c -expect 1
835 -$(SPLINTR) +bounds sizeof.c -expect 1
839 -$(SPLINTR) +bounds buffertest1.c -expect 5
844 ## db2: 2 errors are no longer reported, since eref is immutable.
845 ## Need to clarify what it means for an object to be immutable;
846 ## there should be 2 types with different storage requirements.
848 .PHONY: $(SUBDIRTESTS)
850 cd $@; $(MAKE) SPLINT="$(SPLINTRNNEST)"
852 #drl 11/29/2001 This is a very ugly hack to get make dist to work
853 EXTRA_DIST = ./abst_t.lcl ./abst_t.lcs \
854 ./abstptr.lcl ./abstptr.lcs \
855 ./alias.lcl ./alias.lcs \
856 ./alias2.lcl ./alias2.lcs \
927 ./repexpose.lh.expect \
944 ./globalbufferannotation/.splintrc \
947 ./tests2.2/bool.lcl \
948 ./tests2.2/bool.lcs \
949 ./tests2.2/libraries.lcd \
950 ./tests2.2/obsolete.lcd \
951 ./tests2.2/oldversion.lcd \
952 ./tests2.4/subdir/main.lcl \
953 ./tests2.4/subdir/main.lcs \
954 ./tests2.5/newlint.lcd \
955 ./warnuse/warnuse.lcd \
1015 ./czechoslovaknames.c \
1131 ./unsignedcompare.c \
1134 ./conditions/miroslaw.c \
1135 ./conditions/releases.c \
1137 ./fileio/filebranch.c \
1140 ./globalbufferannotation/globalvariable.c \
1141 ./maxset/maxsetannotations.c \
1142 ./maxset/maxsetnoannotations.c \
1143 ./mergestate/taintednm.c \
1144 ./metastate/file.c \
1145 ./metastate/file1.c \
1146 ./metastate/file2.c \
1147 ./metastate/file3.c \
1148 ./metastate/file4.c \
1149 ./metastate/file5.c \
1150 ./metastate/file6.c \
1151 ./metastate/file7.c \
1152 ./metastate/filebad.c \
1153 ./metastate/global.c \
1154 ./metastate/nullbranch.c \
1155 ./metastate/nullbranch2.c \
1156 ./metastate/nullret.c \
1158 ./metastate/sockets.c \
1159 ./metastate/sockets2.c \
1160 ./metastate/struct.c \
1161 ./metastate/test.c \
1162 ./metastate/voidptr.c \
1163 ./moreBufferTests/initialization.c \
1164 ./moreBufferTests/simplifyTest.c \
1165 ./moreBufferTests/strncatNotReallyGood.c \
1166 ./moreBufferTests/strncatReallyGood.c \
1167 ./moreBufferTests/strrchr.c \
1168 ./moreBufferTests/unrecogCall.c \
1169 ./nullterminatedtest/buggy1.c \
1170 ./nullterminatedtest/buggy_support1.c \
1171 ./nullterminatedtest/buggy_support_fmakeword.c \
1172 ./nullterminatedtest/test1.c \
1173 ./nullterminatedtest/test3.c \
1174 ./simplebufferConstraintTests/m.c \
1175 ./simplebufferConstraintTests/sizeof.c \
1176 ./simplebufferConstraintTests/test3.c \
1177 ./simplebufferConstraintTests/test7.c \
1178 ./sizeoftest/sizeof.c \
1180 ./suppressfile/test.c \
1181 ./tainted/sprintf.c \
1183 ./tainted/tainted.c \
1184 ./tainted/tainted2.c \
1185 ./tainted/tainted3.c \
1186 ./tainted/tainted4.c \
1187 ./tainted/tainted5.c \
1188 ./tainted/taintedimplicit.c \
1189 ./tainted/taintedmerge.c \
1190 ./tainted/taintedx.c \
1192 ./tclauses/globals.c \
1194 ./tclauses/modifies.c \
1195 ./tclauses/struct.c \
1196 ./tclauses/undef.c \
1197 ./tests2.2/arbints.c \
1198 ./tests2.2/arrayfcn.c \
1199 ./tests2.2/booldef.c \
1200 ./tests2.2/boolenum.c \
1201 ./tests2.2/boolops.c \
1202 ./tests2.2/break.c \
1203 ./tests2.2/bstring.c \
1205 ./tests2.2/enumbool.c \
1206 ./tests2.2/extension.c \
1207 ./tests2.2/libraries.c \
1208 ./tests2.2/modarray.c \
1209 ./tests2.2/nestext.c \
1210 ./tests2.2/offsetof.c \
1211 ./tests2.2/posix.c \
1212 ./tests2.2/realloc.c \
1214 ./tests2.2/sizeofarray.c \
1215 ./tests2.2/struct.c \
1216 ./tests2.2a/addassign.c \
1217 ./tests2.2a/arrayparam.c \
1218 ./tests2.2a/bitops.c \
1219 ./tests2.2a/boolcomp.c \
1220 ./tests2.2a/boolenum.c \
1221 ./tests2.2a/dobb.c \
1222 ./tests2.2a/duff.c \
1223 ./tests2.2a/erik.c \
1224 ./tests2.2a/floatdouble.c \
1225 ./tests2.2a/florian.c \
1226 ./tests2.2a/fred.c \
1227 ./tests2.2a/isalpha.c \
1228 ./tests2.2a/notreached.c \
1229 ./tests2.2a/obviousloop.c \
1230 ./tests2.2a/popik.c \
1231 ./tests2.2a/sizeof.c \
1232 ./tests2.2a/toralf.c \
1233 ./tests2.4/subdir/main.c \
1234 ./tests2.4/alignof.c \
1235 ./tests2.4/array.c \
1236 ./tests2.4/bitfields.c \
1241 ./tests2.4/cpptest.c \
1242 ./tests2.4/driverstub.c \
1243 ./tests2.4/duffs.c \
1244 ./tests2.4/emptycase.c \
1245 ./tests2.4/enumtest.c \
1246 ./tests2.4/error.c \
1248 ./tests2.4/flagequal.c \
1249 ./tests2.4/forward.c \
1251 ./tests2.4/hexconstants.c \
1252 ./tests2.4/innercomment.c \
1253 ./tests2.4/komazi.c \
1254 ./tests2.4/longlong.c \
1256 ./tests2.4/nothing.c \
1257 ./tests2.4/offsetof.c \
1258 ./tests2.4/print.c \
1260 ./tests2.4/syncomment.c \
1261 ./tests2.4/syslog.c \
1262 ./tests2.4/test0.c \
1263 ./tests2.4/test1.c \
1264 ./tests2.4/test2.c \
1265 ./tests2.4/timecard.c \
1266 ./tests2.4/toothman.c \
1267 ./tests2.4/ulrich.c \
1268 ./tests2.5/badcomment.c \
1269 ./tests2.5/boolbad.c \
1270 ./tests2.5/boolt.c \
1271 ./tests2.5/booltest.c \
1272 ./tests2.5/dummyfile.c \
1274 ./tests2.5/immutable.c \
1275 ./tests2.5/impabsmodule.c \
1276 ./tests2.5/literals.c \
1277 ./tests2.5/quals.c \
1279 ./tests2.5/testalt.c \
1280 ./tests2.5/testimmutable.c \
1281 ./tests2.5/uconstants.c \
1283 ./warnuse/warnflags.c \
1284 ./warnuse/warngets.c \
1285 ./warnuse/warnuse.c \
1286 ./moreBufferTests2/unknownsize.c \
1287 ./moreBufferTests2/arrayConstExpr.c \
1292 ansireserved.expect \
1297 branchstate.expect \
1304 commentchar.expect \
1305 compdestroy.expect \
1307 controldepth.expect \
1310 czechoslovaknames.expect \
1326 funcpointer.expect \
1328 globalbufferannotation.expect \
1331 impabstract.expect \
1339 lintcomments.expect \
1341 longconstants.expect \
1351 mongoincludes.expect \
1352 moreBufferTests.expect \
1353 moreBufferTests2.expect \
1358 nullterminatedtest.expect \
1363 postnotnull.expect \
1371 repexpose.lh.expect \
1374 simplebufferConstraintTests.expect \
1377 slovaknames.expect \
1378 specclauses.expect \
1381 staticarray.expect \
1384 structassign.expect \
1396 unreachable.expect \
1397 unsignedcompare.expect \
1436 ./metastate/global.h \
1437 ./suppressfile/test.h \
1438 ./tests2.2/mbool.h \
1439 ./tests2.4/forward.h \
1441 ./tests2.4/timecard.h \
1443 ./tests2.5/bimbim.h \
1444 ./tests2.5/immutable.h \
1445 ./tests2.5/impabsmodule.h \
1446 ./tests2.5/socket.h \
1447 ./Makefile-test.os2 \
1451 ./conditions/Makefile \
1454 ./globalbufferannotation/Makefile \
1456 ./mergestate/Makefile \
1457 ./metastate/Makefile \
1458 ./moreBufferTests/Makefile \
1459 ./simplebufferConstraintTests/Makefile \
1461 ./tainted/Makefile \
1463 ./tests2.2/Makefile \
1464 ./tests2.2/Makefile-tests2.2.os2 \
1465 ./tests2.4/Makefile \
1466 ./tests2.4/Makefile-tests2.4.os2 \
1467 ./tests2.5/Makefile \
1468 ./warnuse/Makefile \
1471 ./moreBufferTests2/Makefile \
1472 ./fileio/eof.mts ./fileio/file.mts ./fileio/filerw.mts ./mergestate/tainted.mts ./mergestate/taintednm.mts ./metastate/file.mts ./metastate/nullterminated.mts ./metastate/sockets.mts ./tainted/tainted-bad.mts ./tainted/tainted.mts ./fileio/file.xh ./fileio/filerw.xh ./mergestate/tainted.xh ./mergestate/taintednm.xh ./metastate/file.xh ./tainted/tainted.xh \
1473 db2.old-expect union.pp warnuse.old-expect \
1474 ./tests2.5/badcomment ./tests2.5/boolbad ./tests2.5/booltest ./tests2.5/uconstants loopexec.expect mergenull.expect shifts.expect \
1475 unioninit.expect unioninit.c utypes.c \
1476 utypes.expect widestrings.expect widestrings.c \
1477 functionmacro.expect functionmacro.c info.c info.expect \
1478 loopexec.c mergenull.c shifts.c \
1479 manual.expect ./manual/Makefile \
1480 ./manual/annotglobs.c ./manual/bool.c ./manual/bool.h ./manual/clauses.c ./manual/employee.h ./manual/exposure.c ./manual/globals.c ./manual/ignore.c ./manual/implicit.c ./manual/intSet.h ./manual/list.c ./manual/loop.c ./manual/macros.c ./manual/modify.c ./manual/mstring.c ./manual/mstring.h ./manual/mstringnn.c ./manual/multiError.c ./manual/names.c ./manual/noeffect.c ./manual/null.c ./manual/only.c ./manual/order.c ./manual/palindrome.c ./manual/palindrome.h ./manual/refs.c ./manual/returned.c ./manual/rgb.c ./manual/rstring.c ./manual/rstring.h ./manual/sample.c ./manual/setChar.c ./manual/setname.c ./manual/setname.h ./manual/special.c ./manual/stack.c ./manual/sumsquares.c ./manual/switch.c ./manual/testpal.c ./manual/types.c ./manual/unique.c ./manual/usedef.c ./manual/bounds.c