X-Git-Url: http://andersk.mit.edu/gitweb/splint.git/blobdiff_plain/d9a287624434f456bc3b1d8d8edf602ad5945cf9..9dcb30d11b76b69c1cab15fa8f056596568fd8ef:/test/Makefile diff --git a/test/Makefile b/test/Makefile index b7a0e21..158e558 100644 --- a/test/Makefile +++ b/test/Makefile @@ -1,714 +1,1640 @@ -################################################## -### ### -### Makefile for LCLint testing ### -### ### -### designed for use with GNU make ### -### ### -################################################## - -.PHONY: all fulltest quicktest funcpointer cast abstract -.PHONY: version help abstptr abstract alias alttypes ansireserved -.PHONY: argorder args blocks break cases cast charlit -.PHONY: clauses commentchar -.PHONY: compdestroy controldepth csyntax czechnames czechoslovaknames -.PHONY: deadparam decl enum exports external fields fileio flags forbody format funcpointer glob globals -.PHONY: impabstract init inparam internal iter keep libs lintcomments -.PHONY: list macros macrosef merge modifies modtest moduncon mongoincludes -.PHONY: null observer oldstyle outglob outparam preds prefixes printflike rc -.PHONY: refcounts release repexpose returned sharing slovaknames special -.PHONY: specclauses stack staticarray -.PHONY: strings structassign nullret -.PHONY: tainted typequals ud ulstypes union unreachable unused ullint void -.PHONY: db1 db2 db3 tests2.2 tests2.2a tests2.4 tests2.5 -.PHONY: all test fulltest expects quicktest -.PHONY: metastate warnuse -.PHONY: linked freearray -.PHONY: sizeoftest -.PHONY: bufferTest -.PHONY: simplebufferConstraintTests -.PHONY: moreBufferTests -.PHONY: maxset -.PHONY: globalbufferannotation -.PHONY: strchr -.PHONY: for - -.SUFFIXES: .out .expect .c .lcl .h .lh .diff - -SHELL = /bin/csh -f - -# Command to run lclint -LCLINT = ${HOME}/LCLintDev/bin/lclint -LCLINTP = $(LCLINT) - -# Make sure .lclintrc files are not used so test results do not -# depend on local settings. -LCLINTRN = $(LCLINTP) -nof -hints -booltype "bool" -LCLINTR = $(LCLINTRN) -exportlocal - -UNITTESTS = help sizeoftest bufferTest simplebufferConstraintTests moreBufferTests globalbufferannotation maxset strchr for abstptr abstract alias alttypes ansireserved argorder args blocks break cases cast \ - charlit clauses commentchar compdestroy controldepth csyntax czechnames czechoslovaknames deadparam \ - decl enum exports external fields fileio flags forbody format freearray funcpointer glob globals impabstract \ - init inparam internal iter keep libs linked lintcomments list macros macrosef merge metastate modifies \ - modtest moduncon mongoincludes null nullret nullassign observer oldstyle outglob outparam preds prefixes \ - printflike rc refcounts release repexpose returned sharing slovaknames specclauses special stack \ - staticarray strings structassign tainted typequals ud ulstypes union unreachable unused ullint void warnuse \ - tests2.2 tests2.2a tests2.4 tests2.5 +# Makefile.in generated automatically by automake 1.5 from Makefile.am. + +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + + + +SHELL = /bin/sh + +srcdir = . +top_srcdir = .. + +prefix = /usr/local +exec_prefix = ${prefix} + +bindir = ${exec_prefix}/bin +sbindir = ${exec_prefix}/sbin +libexecdir = ${exec_prefix}/libexec +datadir = ${prefix}/share +sysconfdir = ${prefix}/etc +sharedstatedir = ${prefix}/com +localstatedir = ${prefix}/var +libdir = ${exec_prefix}/lib +infodir = ${prefix}/info +mandir = ${prefix}/man +includedir = ${prefix}/include +oldincludedir = /usr/include +pkgdatadir = $(datadir)/splint +pkglibdir = $(libdir)/splint +pkgincludedir = $(includedir)/splint +top_builddir = .. + +ACLOCAL = ${SHELL} /net/af9/drl7x/reTmp/LCLintDev/config/missing --run aclocal +AUTOCONF = ${SHELL} /net/af9/drl7x/reTmp/LCLintDev/config/missing --run autoconf +AUTOMAKE = ${SHELL} /net/af9/drl7x/reTmp/LCLintDev/config/missing --run automake +AUTOHEADER = ${SHELL} /net/af9/drl7x/reTmp/LCLintDev/config/missing --run autoheader + +INSTALL = /usr/bin/install -c +INSTALL_PROGRAM = ${INSTALL} +INSTALL_DATA = ${INSTALL} -m 644 +INSTALL_SCRIPT = ${INSTALL} +INSTALL_HEADER = $(INSTALL_DATA) +transform = s,x,x, +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +host_alias = +host_triplet = i686-pc-linux-gnu +AMTAR = ${SHELL} /net/af9/drl7x/reTmp/LCLintDev/config/missing --run tar +AWK = gawk +BISON = bison +CAT = cat +CC = gcc +CP = cp +CPP = gcc -E +DEPDIR = .deps +DIFF = diff +EXEEXT = +GREP = grep +INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s +LCLOBJ = $(lcl_OBJECTS) +LEX = flex +LN_S = ln -s +MV = mv +OBJEXT = o +PACKAGE = splint +RM = rm +VERSION = 3.0.1.1 +am__include = include +am__quote = +install_sh = /net/af9/drl7x/reTmp/LCLintDev/config/install-sh -UNITEXPECTS = $(addsuffix .expect, $(UNITTESTS)) +AUTOMAKE_OPTIONS = 1.5 foreign -INTEGTESTS = db1 db2 db3 -INTEGEXPECTS = $(addsuffix .expect, $(INTEGTESTS)) +DIFFFLAGS = -LCLINTTESTS = $(UNITTESTS) $(INTEGTESTS) -all: fulltest -test: fulltest +# -u show context +SPLINT = $(top_builddir)/src/splint$(EXEEXT) -GREP = grep -DIFF = diff -CLEANOUTPUT = $(GREP) -v "LCLint 3." | $(GREP) -v "make -e" | $(GREP) -v "make\[" | $(GREP) -v "lclint -nof" | $(GREP) -v "make -e" +### This is horrible! Can't we make top_builddir absolute? +SPLINTNEST = ../$(top_builddir)/src/splint$(EXEEXT) -### not real .c +SPLINTPNEST = @$(SPLINTNEST) -nof +SPLINTP = @$(SPLINT) -nof -.c.expect: - $(MAKE) -e $(*) |& $(CLEANOUTPUT) > $(*).expect ; \ - cat $(*).expect +# Make sure .splintrc files are not used so test results do not +# depend on local settings. +SPLINTRN = $(SPLINTP) -hints -booltype "bool" +SPLINTR = $(SPLINTRN) -exportlocal +debugfcnconstraint -.c.diff: - $(MAKE) -e $(*) |& $(CLEANOUTPUT) > $(*).out ; \ - diff $(*).expect $(*).out - -expects: - echo "Saving old expects: " ; \ - more *.expect | cat > expects-`date +"%y-%m-%d-%H"` - @$(foreach test, $(UNITTESTS), \ - echo "Making "$(test)".expect: " ; \ - $(MAKE) -e $(test) |& $(CLEANOUTPUT) > $(test).expect ; \ - cat $(test).expect ; ) - @echo "Integration Tests" - @$(foreach test, $(INTEGTESTS), \ - echo "Making "$(test)".expect: "; \ - $(MAKE) -e $(test) |& $(CLEANOUTPUT) > $(test).expect ; \ - cat $(test).expect ; ) +SPLINTRNNEST = $(SPLINTPNEST) -hints -booltype "bool" +SPLINTRNEST = $(SPLINTRNNEST) -exportlocal +debugfcnconstraint -fulltest: - @echo '' - @echo 'Testing '$(LCLINTP) - @echo '' - @echo 'Version:' - @echo '' - @$(LCLINTP) -help version - @$(LCLINTP) -help vars - @echo '' - @echo "Unit Tests:" - @echo '' - @$(foreach test, $(UNITTESTS), \ - echo "Checking "$(test)"... " ; \ - $(MAKE) -e $(test) |& $(CLEANOUTPUT) > $(test).out ; \ - $(DIFF) $(test).expect $(test).out ; \ - if ($$status) echo "*** FAIL ***" ; \ - ) - @echo '' - @echo "Integration Tests" - @echo '' - @$(foreach test, $(INTEGTESTS), \ - echo "Checking "$(test)"... "; \ - $(MAKE) -e $(test) |& $(CLEANOUTPUT) > $(test).out ; \ - $(DIFF) $(test).expect $(test).out ; ) - -quicktest: $(LCLINTTESTS) ### -### Unit Tests +### rcfiles not included becuase file names will not match exactly ### +UNITTESTS = \ + help \ + abstptr abstract alias alttypes ansireserved argorder \ + args blocks break cases cast charlit clauses commentchar compdestroy \ + constannot controldepth csyntax czechnames czechoslovaknames deadparam \ + decl enum exports external fields flags forbody format freearray \ + funcpointer functionmacro glob globals impabstract info init inparam internal iter keep libs \ + linked lintcomments list loopexec \ + macros macrosef merge mergenull modifies modtest moduncon \ + mongoincludes mystrncat noeffect null observer oldstyle outglob outparam \ + postnotnull preds prefixes printflike rc refcounts release repexpose \ + returned sharing shifts slovaknames \ + specclauses \ + special stack staticarray strings \ + structassign typequals ud ulstypes union unioninit unreachable unsignedcompare \ + unused ullint utypes void widestrings + +UNITEXPECTS = $(addsuffix .expect, $(UNITTESTS)) + + +### warnuse doesn't work yet! +SUBDIRTESTS = metastate mergestate tainted fileio \ + simplebufferConstraintTests moreBufferTests moreBufferTests2 globalbufferannotation \ + maxset strchr for manual\ +tests2.2 tests2.4 tests2.5 db1 db2 db3 + +SPLINTTESTS = $(UNITTESTS) $(SUBDIRTESTS) + +QUICKTESTS = db3 + +CLEANOUTPUT = $(GREP) -v "Splint 3." | $(GREP) -v "$(SPLINT)" | $(GREP) -v "^make.*\[[1-9]*\]:" | $(GREP) -v "config.status: creating test/Makefile" | $(GREP) -v "cd .. && " | $(GREP) -v "CONFIG_HEADERS=" | $(GREP) -v "CONFIG_FILES=" + +#drl 11/29/2001 This is a very ugly hack to get make dist to work +EXTRA_DIST = ./abst_t.lcl ./abst_t.lcs \ + ./abstptr.lcl ./abstptr.lcs \ + ./alias.lcl ./alias.lcs \ + ./alias2.lcl ./alias2.lcs \ + ./alias3.lcl \ + ./db1/erc.lcl \ + ./db1/bool.lcl \ + ./db1/dbase.lcl \ + ./db1/employee.lcl \ + ./db1/empset.lcl \ + ./db1/eref.lcl \ + ./db1/ereftab.lcl \ + ./alias3.lcs \ + ./alias3.lh \ + ./alias4.lcl \ + ./alias4.lcs \ + ./alias4.lh \ + ./alias5.lcl \ + ./alias5.lcs \ + ./alias5.lh \ + ./argorder2.lcl \ + ./argorder2.lcs \ + ./argorder4.lcl \ + ./argorder4.lcs \ + ./args.lcl \ + ./args.lcs \ + ./cast.lcl \ + ./cast.lcs \ + ./decl2.lcl \ + ./decl2.lcs \ + ./empty.lcl \ + ./enum.lcl \ + ./enum.lcs \ + ./glob.lcl \ + ./glob.lcs \ + ./impabstract.lcl \ + ./impabstract.lcs \ + ./iter.lcl \ + ./iter.lcs \ + ./macros.lcl \ + ./macros.lcs \ + ./macrosef.lcl \ + ./macrosef.lcs \ + ./modtest.lcl \ + ./modtest.lcs \ + ./mut.lcl \ + ./mut.lcs \ + ./mut.lh \ + ./mut.lh.expect \ + ./db2/dbase.lcl \ + ./db2/employee.lcl \ + ./db2/empset.lcl \ + ./db2/erc.lcl \ + ./db2/eref.lcl \ + ./db2/ereftab.lcl \ + ./db2/etest.lcl \ + ./null6.lcd \ + ./null6.lcl \ + ./null6.lcs \ + ./observer.lcl \ + ./observer.lcs \ + ./oldstyle.lcl \ + ./oldstyle.lcs \ + ./outglob.lcl \ + ./outglob.lcs \ + ./outparam.lcl \ + ./outparam.lcs \ + ./rc1.splintrc \ + ./rc2.splintrc \ + ./rc3.splintrc \ + ./rc3.splintrc.os2 \ + ./repexpose.lcl \ + ./repexpose.lcs \ + ./repexpose.lh \ + ./repexpose.lh.expect \ + ./special.lcl \ + ./special.lcs \ + ./db3/.splintrc \ + ./db3/bool.lcl \ + ./db3/check.lcl \ + ./db3/dbase.lcl \ + ./db3/employee.lcl \ + ./db3/empset.lcl \ + ./db3/erc.lcl \ + ./db3/eref.lcl \ + ./db3/ereftab.lcl \ + ./tq.lcl \ + ./tq.lcs \ + ./ud2.lcl \ + ./ud2.lcs \ + ./for/.splintrc \ + ./globalbufferannotation/.splintrc \ + ./maxset/.splintrc \ + ./strchr/.splintrc \ + ./tests2.2/bool.lcl \ + ./tests2.2/bool.lcs \ + ./tests2.2/libraries.lcd \ + ./tests2.2/obsolete.lcd \ + ./tests2.2/oldversion.lcd \ + ./tests2.4/subdir/main.lcl \ + ./tests2.4/subdir/main.lcs \ + ./tests2.5/newlint.lcd \ + ./warnuse/warnuse.lcd \ + ./empty.lcs \ + ./abstptr.c \ + ./alias.c \ + ./alias2.c \ + ./alias3.c \ + ./db1/dbase.c \ + ./db1/drive.c \ + ./db1/employee.c \ + ./db1/empset.c \ + ./db1/erc.c \ + ./db1/eref.c \ + ./db1/ereftab.c \ + ./alias4.c \ + ./alias5.c \ + ./alttypes.c \ + ./ansireserved.c \ + ./ansireserved2.c \ + ./argorder.c \ + ./argorder2.c \ + ./argorder3.c \ + ./argorder4.c \ + ./argorder5.c \ + ./args.c \ + ./arrayinit.c \ + ./blocks.c \ + ./branchstate.c \ + ./break.c \ + ./cases.c \ + ./buffertest1.c \ + ./cases2.c \ + ./cast.c \ + ./cast2.c \ + ./charlit.c \ + ./clauses.c \ + ./clauses2.c \ + ./clauses3.c \ + ./commentchar.c \ + ./commentcmd.c \ + ./compdestroy.c \ + ./csyntax.c \ + ./constannot.c \ + ./controldepth.c \ + ./csyntax10.c \ + ./csyntax11.c \ + ./csyntax12.c \ + ./csyntax13.c \ + ./csyntax14.c \ + ./csyntax15.c \ + ./csyntax16.c \ + ./csyntax17.c \ + ./csyntax2.c \ + ./csyntax3.c \ + ./csyntax4.c \ + ./csyntax5.c \ + ./csyntax6.c \ + ./csyntax7.c \ + ./csyntax8.c \ + ./csyntax9.c \ + ./czechnames.c \ + ./czechoslovaknames.c \ + ./deadparam.c \ + ./decl.c \ + ./decl2.c \ + ./dkf5kEnum.c \ + ./dkf5kRange.c \ + ./dkf5kSprintf.c \ + ./ensures.c \ + ./enum.c \ + ./exports.c \ + ./external.c \ + ./fields.c \ + ./fields2.c \ + ./fields3.c \ + ./flags.c \ + ./glob.c \ + ./forbody.c \ + ./format.c \ + ./freearray.c \ + ./funcpointer.c \ + ./globals.c \ + ./globals2.c \ + ./impabstract.c \ + ./init.c \ + ./innerfree.c \ + ./inparam.c \ + ./internal.c \ + ./iter.c \ + ./iter2.c \ + ./keep.c \ + ./libs.c \ + ./linked.c \ + ./linked2.c \ + ./linked3.c \ + ./linked4.c \ + ./linked5.c \ + ./linked6.c \ + ./lintcomments.c \ + ./list.c \ + ./longconstants.c \ + ./macros.c \ + ./macrosef.c \ + ./merge.c \ + ./modclient.c \ + ./modifies.c \ + ./modtest.c \ + ./moduncon.c \ + ./mongoincludes.c \ + ./mparen.c \ + ./mut.c \ + ./mystrncat.c \ + ./noeffect.c \ + ./null1.c \ + ./null2.c \ + ./null3.c \ + ./null4.c \ + ./null5.c \ + ./db2/dbase.c \ + ./db2/drive.c \ + ./db2/employee.c \ + ./db2/empset.c \ + ./db2/erc.c \ + ./db2/eref.c \ + ./db2/ereftab.c \ + ./db2/etest.c \ + ./null6.c \ + ./nullassign.c \ + ./nullret.c \ + ./observer.c \ + ./oldstyle.c \ + ./outglob.c \ + ./outparam.c \ + ./postnotnull.c \ + ./preds.c \ + ./prefixes.c \ + ./printflike.c \ + ./rc.c \ + ./refcounts.c \ + ./release.c \ + ./repexpose.c \ + ./returned.c \ + ./sharing1.c \ + ./sharing2.c \ + ./sharing3.c \ + ./sharing4.c \ + ./sharing5.c \ + ./sizeof.c \ + ./slovaknames.c \ + ./specclauses.c \ + ./specclauses2.c \ + ./specclauses3.c \ + ./specclauses4.c \ + ./specclauses5.c \ + ./specclauses6.c \ + ./special.c \ + ./stack.c \ + ./staticarray.c \ + ./strings.c \ + ./structassign.c \ + ./switch.c \ + ./t1.c \ + ./test.c \ + ./db3/dbase.c \ + ./db3/drive.c \ + ./db3/employee.c \ + ./db3/empset.c \ + ./db3/erc.c \ + ./db3/eref.c \ + ./db3/ereftab.c \ + ./typequals.c \ + ./ud.c \ + ./ud2.c \ + ./ullint.c \ + ./ulstypes.c \ + ./union.c \ + ./unreachable.c \ + ./unsignedcompare.c \ + ./unused.c \ + ./void.c \ + ./conditions/miroslaw.c \ + ./conditions/releases.c \ + ./fileio/file.c \ + ./fileio/filebranch.c \ + ./fileio/filerw.c \ + ./for/for.c \ + ./globalbufferannotation/globalvariable.c \ + ./maxset/maxsetannotations.c \ + ./maxset/maxsetnoannotations.c \ + ./mergestate/taintednm.c \ + ./metastate/file.c \ + ./metastate/file1.c \ + ./metastate/file2.c \ + ./metastate/file3.c \ + ./metastate/file4.c \ + ./metastate/file5.c \ + ./metastate/file6.c \ + ./metastate/file7.c \ + ./metastate/filebad.c \ + ./metastate/global.c \ + ./metastate/nullbranch.c \ + ./metastate/nullbranch2.c \ + ./metastate/nullret.c \ + ./metastate/osd.c \ + ./metastate/sockets.c \ + ./metastate/sockets2.c \ + ./metastate/struct.c \ + ./metastate/test.c \ + ./metastate/voidptr.c \ + ./moreBufferTests/initialization.c \ + ./moreBufferTests/simplifyTest.c \ + ./moreBufferTests/strncatNotReallyGood.c \ + ./moreBufferTests/strncatReallyGood.c \ + ./moreBufferTests/strrchr.c \ + ./moreBufferTests/unrecogCall.c \ + ./nullterminatedtest/buggy1.c \ + ./nullterminatedtest/buggy_support1.c \ + ./nullterminatedtest/buggy_support_fmakeword.c \ + ./nullterminatedtest/test1.c \ + ./nullterminatedtest/test3.c \ + ./simplebufferConstraintTests/m.c \ + ./simplebufferConstraintTests/sizeof.c \ + ./simplebufferConstraintTests/test3.c \ + ./simplebufferConstraintTests/test7.c \ + ./sizeoftest/sizeof.c \ + ./strchr/strchr.c \ + ./suppressfile/test.c \ + ./tainted/sprintf.c \ + ./tainted/t1.c \ + ./tainted/tainted.c \ + ./tainted/tainted2.c \ + ./tainted/tainted3.c \ + ./tainted/tainted4.c \ + ./tainted/tainted5.c \ + ./tainted/taintedimplicit.c \ + ./tainted/taintedmerge.c \ + ./tainted/taintedx.c \ + ./tainted/test.c \ + ./tclauses/globals.c \ + ./tclauses/gt.c \ + ./tclauses/modifies.c \ + ./tclauses/struct.c \ + ./tclauses/undef.c \ + ./tests2.2/arbints.c \ + ./tests2.2/arrayfcn.c \ + ./tests2.2/booldef.c \ + ./tests2.2/boolenum.c \ + ./tests2.2/boolops.c \ + ./tests2.2/break.c \ + ./tests2.2/bstring.c \ + ./tests2.2/decl.c \ + ./tests2.2/enumbool.c \ + ./tests2.2/extension.c \ + ./tests2.2/libraries.c \ + ./tests2.2/modarray.c \ + ./tests2.2/nestext.c \ + ./tests2.2/offsetof.c \ + ./tests2.2/posix.c \ + ./tests2.2/realloc.c \ + ./tests2.2/rex.c \ + ./tests2.2/sizeofarray.c \ + ./tests2.2/struct.c \ + ./tests2.2a/addassign.c \ + ./tests2.2a/arrayparam.c \ + ./tests2.2a/bitops.c \ + ./tests2.2a/boolcomp.c \ + ./tests2.2a/boolenum.c \ + ./tests2.2a/dobb.c \ + ./tests2.2a/duff.c \ + ./tests2.2a/erik.c \ + ./tests2.2a/floatdouble.c \ + ./tests2.2a/florian.c \ + ./tests2.2a/fred.c \ + ./tests2.2a/isalpha.c \ + ./tests2.2a/notreached.c \ + ./tests2.2a/obviousloop.c \ + ./tests2.2a/popik.c \ + ./tests2.2a/sizeof.c \ + ./tests2.2a/toralf.c \ + ./tests2.4/subdir/main.c \ + ./tests2.4/alignof.c \ + ./tests2.4/array.c \ + ./tests2.4/bitfields.c \ + ./tests2.4/bug1.c \ + ./tests2.4/bug2.c \ + ./tests2.4/bug3.c \ + ./tests2.4/chin.c \ + ./tests2.4/cpptest.c \ + ./tests2.4/driverstub.c \ + ./tests2.4/duffs.c \ + ./tests2.4/emptycase.c \ + ./tests2.4/enumtest.c \ + ./tests2.4/error.c \ + ./tests2.4/fink.c \ + ./tests2.4/flagequal.c \ + ./tests2.4/forward.c \ + ./tests2.4/hash.c \ + ./tests2.4/hexconstants.c \ + ./tests2.4/innercomment.c \ + ./tests2.4/komazi.c \ + ./tests2.4/longlong.c \ + ./tests2.4/main.c \ + ./tests2.4/nothing.c \ + ./tests2.4/offsetof.c \ + ./tests2.4/print.c \ + ./tests2.4/ric.c \ + ./tests2.4/syncomment.c \ + ./tests2.4/syslog.c \ + ./tests2.4/test0.c \ + ./tests2.4/test1.c \ + ./tests2.4/test2.c \ + ./tests2.4/timecard.c \ + ./tests2.4/toothman.c \ + ./tests2.4/ulrich.c \ + ./tests2.5/badcomment.c \ + ./tests2.5/boolbad.c \ + ./tests2.5/boolt.c \ + ./tests2.5/booltest.c \ + ./tests2.5/dummyfile.c \ + ./tests2.5/hoof.c \ + ./tests2.5/immutable.c \ + ./tests2.5/impabsmodule.c \ + ./tests2.5/literals.c \ + ./tests2.5/quals.c \ + ./tests2.5/sort.c \ + ./tests2.5/testalt.c \ + ./tests2.5/testimmutable.c \ + ./tests2.5/uconstants.c \ + ./tests2.5/ull.c \ + ./warnuse/warnflags.c \ + ./warnuse/warngets.c \ + ./warnuse/warnuse.c \ + ./moreBufferTests2/unknownsize.c \ + ./moreBufferTests2/arrayConstExpr.c \ + abstptr.expect \ + abstract.expect \ + alias.expect \ + alttypes.expect \ + ansireserved.expect \ + argorder.expect \ + args.expect \ + arrayinit.expect \ + blocks.expect \ + branchstate.expect \ + break.expect \ + buffertest.expect \ + cases.expect \ + cast.expect \ + charlit.expect \ + clauses.expect \ + commentchar.expect \ + compdestroy.expect \ + constannot.expect \ + controldepth.expect \ + csyntax.expect \ + czechnames.expect \ + czechoslovaknames.expect \ + db1.expect \ + db2.expect \ + db3.expect \ + deadparam.expect \ + decl.expect \ + enum.expect \ + exports.expect \ + external.expect \ + fields.expect \ + fileio.expect \ + flags.expect \ + for.expect \ + forbody.expect \ + format.expect \ + freearray.expect \ + funcpointer.expect \ + glob.expect \ + globalbufferannotation.expect \ + globals.expect \ + help.expect \ + impabstract.expect \ + init.expect \ + inparam.expect \ + internal.expect \ + iter.expect \ + keep.expect \ + libs.expect \ + linked.expect \ + lintcomments.expect \ + list.expect \ + longconstants.expect \ + macros.expect \ + macrosef.expect \ + maxset.expect \ + merge.expect \ + mergestate.expect \ + metastate.expect \ + modifies.expect \ + modtest.expect \ + moduncon.expect \ + mongoincludes.expect \ + moreBufferTests.expect \ + moreBufferTests2.expect \ + mut.lh.expect \ + mystrncat.expect \ + noeffect.expect \ + null.expect \ + nullterminatedtest.expect \ + observer.expect \ + oldstyle.expect \ + outglob.expect \ + outparam.expect \ + postnotnull.expect \ + preds.expect \ + prefixes.expect \ + printflike.expect \ + rc.expect \ + refcounts.expect \ + release.expect \ + repexpose.expect \ + repexpose.lh.expect \ + returned.expect \ + sharing.expect \ + simplebufferConstraintTests.expect \ + sizeof.expect \ + sizeoftest.expect \ + slovaknames.expect \ + specclauses.expect \ + special.expect \ + stack.expect \ + staticarray.expect \ + strchr.expect \ + strings.expect \ + structassign.expect \ + tainted.expect \ + tests2.2.expect \ + tests2.2a.expect \ + tests2.3.expect \ + tests2.4.expect \ + tests2.5.expect \ + typequals.expect \ + ud.expect \ + ullint.expect \ + ulstypes.expect \ + union.expect \ + unreachable.expect \ + unsignedcompare.expect \ + unused.expect \ + void.expect \ + ./db1/bool.h \ + ./db1/dbase.h \ + ./db1/employee.h \ + ./db1/empset.h \ + ./db1/erc.h \ + ./db1/eref.h \ + ./db1/ereftab.h \ + ./bool.h \ + ./decl2.h \ + ./exports.h \ + ./iter.h \ + ./iter2.h \ + ./minc1.h \ + ./minc2.h \ + ./minc3.h \ + ./minc4.h \ + ./minc5.h \ + ./modifies.h \ + ./mut.h \ + ./db2/bool.h \ + ./db2/dbase.h \ + ./db2/employee.h \ + ./db2/empset.h \ + ./db2/erc.h \ + ./db2/eref.h \ + ./db2/ereftab.h \ + ./pivo.h \ + ./repexpose.h \ + ./db3/bool.h \ + ./db3/dbase.h \ + ./db3/employee.h \ + ./db3/empset.h \ + ./db3/erc.h \ + ./db3/eref.h \ + ./db3/ereftab.h \ + ./tq.h \ + ./metastate/global.h \ + ./suppressfile/test.h \ + ./tests2.2/mbool.h \ + ./tests2.4/forward.h \ + ./tests2.4/hash.h \ + ./tests2.4/timecard.h \ + ./tests2.5/baz.h \ + ./tests2.5/bimbim.h \ + ./tests2.5/immutable.h \ + ./tests2.5/impabsmodule.h \ + ./tests2.5/socket.h \ + ./Makefile-test.os2 \ + ./db1/Makefile \ + ./db2/Makefile \ + ./db3/Makefile \ + ./conditions/Makefile \ + ./fileio/Makefile \ + ./for/Makefile \ + ./globalbufferannotation/Makefile \ + ./maxset/Makefile \ + ./mergestate/Makefile \ + ./metastate/Makefile \ + ./moreBufferTests/Makefile \ + ./simplebufferConstraintTests/Makefile \ + ./strchr/Makefile \ + ./tainted/Makefile \ + ./temp/Makefile \ + ./tests2.2/Makefile \ + ./tests2.2/Makefile-tests2.2.os2 \ + ./tests2.4/Makefile \ + ./tests2.4/Makefile-tests2.4.os2 \ + ./tests2.5/Makefile \ + ./warnuse/Makefile \ + ./Makefile.am \ + ./Makefile.in \ + ./moreBufferTests2/Makefile \ + ./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 \ + db2.old-expect union.pp warnuse.old-expect \ + ./tests2.5/badcomment ./tests2.5/boolbad ./tests2.5/booltest ./tests2.5/uconstants loopexec.expect mergenull.expect shifts.expect \ + unioninit.expect unioninit.c utypes.c \ + utypes.expect widestrings.expect widestrings.c \ + functionmacro.expect functionmacro.c info.c info.expect \ + loopexec.c mergenull.c shifts.c \ + manual.expect ./manual/Makefile \ + ./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 + +subdir = test +mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +DIST_SOURCES = +DIST_COMMON = Makefile.am Makefile.in +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .diff .expect +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.ac $(ACLOCAL_M4) + cd $(top_srcdir) && \ + $(AUTOMAKE) --foreign test/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) && \ + CONFIG_HEADERS= CONFIG_LINKS= \ + CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status +uninstall-info-am: +tags: TAGS +TAGS: + + +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) + +top_distdir = .. +distdir = $(top_distdir)/$(PACKAGE)-$(VERSION) + +distdir: $(DISTFILES) + $(mkinstalldirs) $(distdir)/./conditions $(distdir)/./db1 $(distdir)/./db2 $(distdir)/./db3 $(distdir)/./fileio $(distdir)/./for $(distdir)/./globalbufferannotation $(distdir)/./manual $(distdir)/./maxset $(distdir)/./mergestate $(distdir)/./metastate $(distdir)/./moreBufferTests $(distdir)/./moreBufferTests2 $(distdir)/./nullterminatedtest $(distdir)/./simplebufferConstraintTests $(distdir)/./sizeoftest $(distdir)/./strchr $(distdir)/./suppressfile $(distdir)/./tainted $(distdir)/./tclauses $(distdir)/./temp $(distdir)/./tests2.2 $(distdir)/./tests2.2a $(distdir)/./tests2.4 $(distdir)/./tests2.4/subdir $(distdir)/./tests2.5 $(distdir)/./warnuse + @for file in $(DISTFILES); do \ + if test -f $$file; then d=.; else d=$(srcdir); fi; \ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + $(mkinstalldirs) "$(distdir)/$$dir"; \ + fi; \ + if test -d $$d/$$file; then \ + cp -pR $$d/$$file $(distdir) \ + || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile + +installdirs: + +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]* + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-local mostlyclean-am + +distclean: distclean-am + +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: + +info: info-am + +info-am: + +install-data-am: + +install-exec-am: + +install-info: install-info-am + +install-man: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic + +uninstall-am: uninstall-info-am +.PHONY: all all-am check check-am clean clean-generic clean-local \ + distclean distclean-generic distdir dvi dvi-am info info-am \ + install install-am install-data install-data-am install-exec \ + install-exec-am install-info install-info-am install-man \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic uninstall uninstall-am uninstall-info-am + + +unexport LARCH_PATH +unexport LCLIMPORTDIR + +.PHONY: all check +all check: fulltest + +.PHONY: version version: - -$(LCLINTP) -help version + -$(SPLINTP) -help version +.PHONY: help help: - -@$(LCLINTP) - -@setenv LARCH_PATH "/dev/null"; $(LCLINTP) empty.lcl - -@$(LCLINTP) -help - -@$(LCLINTP) -asdf - -@$(LCLINTP) +boolint +boolint - -@$(LCLINTP) -help flags alpha - -@$(LCLINTP) -help flags all + -@$(SPLINT) + -@LARCH_PATH=/dev/null; $(SPLINT) -nof empty.lcl + -@$(SPLINTP) -help + -@$(SPLINTP) -asdf + -@$(SPLINTP) +boolint +boolint + -@$(SPLINTP) -help flags alpha + -@$(SPLINTP) -help flags all + +.PHONY: clean-local +clean-local: + -rm -f *~ #*# *.o *.lcs a.out + -cd db1; $(MAKE) clean + -cd db2; $(MAKE) clean + -cd db3; $(MAKE) clean + +$(SPLINTTESTS): $(SPLINT) + +$(SPLINT): + cd $(top_builddir)/src; $(MAKE) + +.c.expect: + $(MAKE) $* |& $(CLEANOUTPUT) >$*.expect && cat $*.expect +.c.diff: + $(MAKE) $* |& $(CLEANOUTPUT) >$*.out && diff $*.expect $*.out + +#drl temporally take this out. +#.PHONY: expects +#expects: +# @echo "Saving old expects..."; \ +# cat *.expect >expects-`date +"%y-%m-%d-%H"` +# @for TEST in $(UNITTESTS) $(INTEGTESTS); do \ +# echo "Making $$TEST.expect..."; \ +# $(MAKE) $$TEST 2>&1 | $(CLEANOUTPUT) >$$TEST.expect; \ +# cat $$TEST.expect; \ +# done + +.PHONY: quicktest +quicktest: + @for TEST in $(QUICKTESTS); do \ + echo "Checking $$TEST..."; \ + $(MAKE) $$TEST 2>&1 | $(CLEANOUTPUT) >$$TEST.out && \ + $(DIFF) $(DIFFFLAGS) $$TEST.expect $$TEST.out || \ + echo "*** FAIL ***"; \ + done + +.PHONY: fulltest +fulltest: + @echo "Testing $(PACKAGE) $(VERSION)..." + @echo + @echo "Version Info:" + @$(SPLINTP) -help version + @$(SPLINTP) -help vars + @echo "" + @echo "Tests:" + @echo "" + @for TEST in $(SPLINTTESTS); do \ + echo "Checking $$TEST..."; \ + $(MAKE) $$TEST 2>&1 | $(CLEANOUTPUT) >$$TEST.out && \ + $(DIFF) $(DIFFFLAGS) $$TEST.expect $$TEST.out || \ + echo "*** FAIL ***"; \ + done + +### Rules for tests start here + +.PHONY: abstptr abstptr: - $(LCLINTR) abstptr -expect 9 - $(LCLINTR) abstptr +voidabstract -expect 6 + -$(SPLINTR) abstptr -expect 9 + -$(SPLINTR) abstptr +voidabstract -expect 6 +.PHONY: abstract abstract: - $(LCLINTR) abst_t.lcl commentcmd.c -expect 15 + -$(SPLINTR) abst_t.lcl commentcmd.c -expect 15 +.PHONY: alias alias: - $(LCLINTR) +lh mut - $(LCLINTR) mut alias +globalias -expect 19 - $(LCLINTR) mut alias2 +globalias -expect 17 - $(LCLINTR) +lh alias3 -expect 14 - $(LCLINTR) +lh alias4 +boolint - $(LCLINTR) alias4 -pred +retalias -expect 6 - $(LCLINTR) +lh alias5 +memchecks -null -specundef -expect 5 - + -$(SPLINTR) +lh mut + -$(SPLINTR) mut alias +globalias -expect 19 + -$(SPLINTR) mut alias2 +globalias -expect 17 + -$(SPLINTR) +lh alias3 -expect 14 + -$(SPLINTR) +lh alias4 +boolint + -$(SPLINTR) alias4 -pred +retalias -expect 6 + -$(SPLINTR) +lh alias5 +memchecks -null -specundef -expect 5 + +.PHONY: alttypes alttypes: - $(LCLINTR) alttypes.c -expect 2 + -$(SPLINTR) alttypes.c -expect 2 ### ### evans 2001-06-07 - updated nameCheck.c to reflect C9X. -### Reports one new errors for ansireserved.c - wctomb is bad even as a local variable. -### (could be a macro?) -### Reports 3 additional errors for +checks; no longer suppresses name errors in the -### presense of other errors. +### Reports one new errors for ansireserved.c - wctomb is bad even as a local +### variable (could be a macro?) +### Reports 3 additional errors for +checks; no longer suppresses name errors +### in the presense of other errors. ### +.PHONY: ansireserved ansireserved: - $(LCLINTR) ansireserved.c +ansireserved -nolib -expect 9 - $(LCLINTR) ansireserved.c +ansireserved +ansireservedlocal -nolib -expect 11 - $(LCLINTRN) ansireserved.c +checks -exportlocal -exportheadervar -exportheader -expect 12 - $(LCLINTR) ansireserved2.c +ansireserved -expect 1 + -$(SPLINTR) ansireserved.c +ansireserved -nolib -expect 9 + -$(SPLINTR) ansireserved.c +ansireserved +ansireservedlocal -nolib -expect 11 + -$(SPLINTRN) ansireserved.c +checks -exportlocal -exportheadervar -exportheader -expect 12 + -$(SPLINTR) ansireserved2.c +ansireserved -expect 1 +.PHONY: argorder argorder: - $(LCLINTR) argorder.c -expect 4 - $(LCLINTR) argorder2 -expect 5 - $(LCLINTR) argorder3.c -expect 8 - $(LCLINTR) argorder4 -expect 9 - $(LCLINTR) argorder4 -evalorder -expect 1 - $(LCLINTR) argorder5.c +evalorderuncon -expect 3 - + -$(SPLINTR) argorder.c -expect 4 + -$(SPLINTR) argorder2 -expect 5 + -$(SPLINTR) argorder3.c -expect 8 + -$(SPLINTR) argorder4 -expect 9 + -$(SPLINTR) argorder4 -evalorder -expect 1 + -$(SPLINTR) argorder5.c +evalorderuncon -expect 3 + +.PHONY: args args: - $(LCLINTR) args -noeffect -expect 12 + -$(SPLINTR) args -noeffect -expect 12 +.PHONY: blocks blocks: - $(LCLINTR) blocks.c -expect 4 - $(LCLINTR) blocks.c +ifblock +elseifcomplete -expect 7 - $(LCLINTR) blocks.c -ifempty +whileempty +whileblock -expect 3 - $(LCLINTR) blocks.c -ifempty +forempty +forblock -expect 3 - $(LCLINTR) blocks.c +allempty -expect 6 - $(LCLINTRN) blocks.c +strict -exportlocal +partial -exportheader -expect 11 - + -$(SPLINTR) blocks.c -expect 4 + -$(SPLINTR) blocks.c +ifblock +elseifcomplete -expect 7 + -$(SPLINTR) blocks.c -ifempty +whileempty +whileblock -expect 3 + -$(SPLINTR) blocks.c -ifempty +forempty +forblock -expect 3 + -$(SPLINTR) blocks.c +allempty -expect 6 + -$(SPLINTRN) blocks.c +strict -exportlocal +partial -exportheader -expect 11 + +.PHONY: break break: - $(LCLINTR) break.c -expect 4 - $(LCLINTR) break.c +deepbreak -expect 6 - $(LCLINTR) break.c +deepbreak -looploopbreak -expect 5 + -$(SPLINTR) break.c -expect 4 + -$(SPLINTR) break.c +deepbreak -expect 6 + -$(SPLINTR) break.c +deepbreak -looploopbreak -expect 5 +.PHONY: cases cases: - $(LCLINTR) cases.c -expect 5 - $(LCLINTR) cases2.c -expect 2 - $(LCLINTRN) cases2.c +checks -exportlocal -exportheader -expect 3 - $(LCLINTRN) cases2.c +checks -exportlocal -exportheader -branchstate -expect 3 + -$(SPLINTR) cases.c -expect 5 + -$(SPLINTR) cases2.c -expect 2 + -$(SPLINTRN) cases2.c +checks -exportlocal -exportheader -expect 3 + -$(SPLINTRN) cases2.c +checks -exportlocal -exportheader -branchstate -expect 3 +.PHONY: cast cast: - $(LCLINTR) cast -accessmodule -expect 20 - $(LCLINTRN) cast2.c +checks -exportlocal -exportheader -expect 3 + -$(SPLINTR) cast -accessmodule -expect 20 + -$(SPLINTRN) cast2.c +checks -exportlocal -exportheader -expect 3 ### Two addition errors detected with 2.5 with -numliteral. +.PHONY: charlit charlit: - $(LCLINTR) +hints charlit.c -expect 4 - $(LCLINTR) +hints -numliteral charlit.c -expect 6 - $(LCLINTR) +hints charlit.c +charintliteral +ignoresigns + -$(SPLINTR) +hints charlit.c -expect 4 + -$(SPLINTR) +hints -numliteral charlit.c -expect 6 + -$(SPLINTR) +hints charlit.c +charintliteral +ignoresigns +.PHONY: clauses clauses: - $(LCLINTR) clauses.c +memchecks -expect 4 - $(LCLINTR) clauses2.c +memchecks - $(LCLINTR) clauses3.c +memchecks -expect 2 - $(LCLINTR) clauses3.c +memchecks +unixlib -expect 3 + -$(SPLINTR) clauses.c +memchecks -expect 4 + -$(SPLINTR) clauses2.c +memchecks + -$(SPLINTR) clauses3.c +memchecks -expect 2 + -$(SPLINTR) clauses3.c +memchecks +unixlib -expect 3 +.PHONY: commentchar commentchar: - $(LCLINTR) commentchar.c -expect 4 - $(LCLINTR) -commentchar '#' commentchar.c -expect 4 + -$(SPLINTR) commentchar.c -expect 4 + -$(SPLINTR) -commentchar '#' commentchar.c -expect 4 +.PHONY: controldepth controldepth: - $(LCLINTR) +hints -controlnestdepth 2 controldepth.c -expect 2 - $(LCLINTR) +hints -controlnestdepth 1 controldepth.c -expect 2 + -$(SPLINTR) +hints -controlnestdepth 2 controldepth.c -expect 2 + -$(SPLINTR) +hints -controlnestdepth 1 controldepth.c -expect 2 +.PHONY: compdestroy compdestroy: - $(LCLINTRN) compdestroy.c +checks -exportlocal -exportheader -expect 1 - $(LCLINTRN) compdestroy.c +checks -exportlocal -exportheader +strictdestroy -expect 2 - $(LCLINTRN) compdestroy.c +checks -exportlocal -exportheader +strictdestroy +strictusereleased -expect 3 - $(LCLINTRN) compdestroy.c +strict +partial -exportheader -expect 3 + -$(SPLINTRN) compdestroy.c +checks -exportlocal -exportheader -expect 1 + -$(SPLINTRN) compdestroy.c +checks -exportlocal -exportheader +strictdestroy -expect 2 + -$(SPLINTRN) compdestroy.c +checks -exportlocal -exportheader +strictdestroy +strictusereleased -expect 3 + -$(SPLINTRN) compdestroy.c +strict +partial -exportheader -expect 3 -csyntax: - $(LCLINTR) +quiet -incondefs csyntax.c -expect 1 - $(LCLINTR) +quiet csyntax2.c -expect 2 - $(LCLINTR) +quiet csyntax3.c -expect 1 - $(LCLINTR) +quiet -incondefs csyntax4.c - $(LCLINTR) +quiet csyntax5.c - $(LCLINTR) +quiet csyntax6.c - $(LCLINTR) +quiet csyntax7.c - $(LCLINTR) +quiet csyntax8.c - $(LCLINTR) +quiet csyntax9.c - $(LCLINTR) +quiet csyntax10.c - $(LCLINTR) +quiet csyntax11.c - $(LCLINTR) +quiet csyntax12.c - $(LCLINTR) +quiet csyntax13.c -expect 1 - $(LCLINTR) +quiet csyntax14.c - $(LCLINTR) +quiet csyntax15.c - $(LCLINTR) +quiet csyntax16.c -expect 2 - $(LCLINTR) +quiet csyntax17.c -expect 3 +.PHONY: constannot +constannot: + ${SPLINTRN} constannot.c +boundswrite -exportlocal -expect 2 +.PHONY: csyntax +csyntax: + -$(SPLINTR) +quiet -incondefs csyntax.c -expect 1 + -$(SPLINTR) +quiet csyntax2.c -expect 2 + -$(SPLINTR) +quiet csyntax3.c -expect 1 + -$(SPLINTR) +quiet -incondefs csyntax4.c + -$(SPLINTR) +quiet csyntax5.c + -$(SPLINTR) +quiet csyntax6.c + -$(SPLINTR) +quiet csyntax7.c + -$(SPLINTR) +quiet csyntax8.c + -$(SPLINTR) +quiet csyntax9.c + -$(SPLINTR) +quiet csyntax10.c + -$(SPLINTR) +quiet csyntax11.c + -$(SPLINTR) +quiet csyntax12.c + -$(SPLINTR) +quiet csyntax13.c -expect 1 + -$(SPLINTR) +quiet csyntax14.c + -$(SPLINTR) +quiet csyntax15.c + -$(SPLINTR) +quiet csyntax16.c -expect 2 + -$(SPLINTR) +quiet csyntax17.c -expect 3 + +.PHONY: czechnames czechnames: - $(LCLINTR) czechnames.c - $(LCLINTR) +hints +czech czechnames.c -expect 2 - $(LCLINTR) +hints +czech -czechvars czechnames.c -expect 1 - $(LCLINTR) +hints +czech -accessczech czechnames.c -expect 6 + -$(SPLINTR) czechnames.c + -$(SPLINTR) +hints +czech czechnames.c -expect 2 + -$(SPLINTR) +hints +czech -czechvars czechnames.c -expect 1 + -$(SPLINTR) +hints +czech -accessczech czechnames.c -expect 6 +.PHONY: czechoslovaknames czechoslovaknames: - $(LCLINTR) +hints +czechoslovak czechnames.c -expect 1 - $(LCLINTR) +hints +czechoslovak slovaknames.c -expect 1 - $(LCLINTR) +hints +czechoslovak +slovakvars slovaknames.c -expect 2 + -$(SPLINTR) +hints +czechoslovak czechnames.c -expect 1 + -$(SPLINTR) +hints +czechoslovak slovaknames.c -expect 1 + -$(SPLINTR) +hints +czechoslovak +slovakvars slovaknames.c -expect 2 ### ### deadparam added 2001-05-27 ### +.PHONY: deadparam deadparam: - ${LCLINTR} deadparam.c -expect 3 + ${SPLINTR} deadparam.c -expect 3 # # Was expect 3 before 2.4. Earlier versions did not handle implicit # function pointers correctly. # +.PHONY: decl decl: - $(LCLINTR) decl.c -expect 2 - $(LCLINTRN) decl.c +strict -exportlocal -expect 5 - $(LCLINTR) decl2 -expect 4 + -$(SPLINTR) decl.c -expect 2 + -$(SPLINTRN) decl.c +strict -exportlocal -expect 5 + -$(SPLINTR) decl2 -expect 4 +.PHONY: enum enum: - $(LCLINTR) enum -expect 16 - $(LCLINTR) enum -misscase -expect 14 + -$(SPLINTR) enum -expect 16 + -$(SPLINTR) enum -misscase -expect 14 +.PHONY: exports exports: - $(LCLINTR) exports.c +exporttype +exportvar +exportfcn +topuse +typeuse -expect 6 - $(LCLINTR) exports.c +exportany -expect 3 - $(LCLINTR) exports.c + -$(SPLINTR) exports.c +exporttype +exportvar +exportfcn +topuse +typeuse -expect 6 + -$(SPLINTR) exports.c +exportany -expect 3 + -$(SPLINTR) exports.c +.PHONY: external external: - $(LCLINTR) external.c +partial - $(LCLINTR) external.c +partial +distinctexternalnames -expect 2 - $(LCLINTR) external.c -nolib +partial -externalnamelength 3 -expect 3 - $(LCLINTR) external.c -nolib +partial -externalnamelength 3 +externalnamecaseinsensitive -expect 3 - $(LCLINTR) external.c +partial -externalnamelength 3 -expect 4 + -$(SPLINTR) external.c +partial + -$(SPLINTR) external.c +partial +distinctexternalnames +ansi89limits -expect 2 + -$(SPLINTR) external.c -nolib +partial -externalnamelength 3 -expect 3 + -$(SPLINTR) external.c -nolib +partial -externalnamelength 3 +externalnamecaseinsensitive -expect 3 + -$(SPLINTR) external.c +partial -externalnamelength 3 -expect 4 +.PHONY: fields fields: - $(LCLINTR) fields.c +memchecks -expect 6 - $(LCLINTR) fields2.c +memchecks -expect 5 - $(LCLINTR) fields3.c +memchecks + -$(SPLINTR) fields.c +memchecks -expect 6 + -$(SPLINTR) fields2.c +memchecks -expect 5 + -$(SPLINTR) fields3.c +memchecks +.PHONY: flags flags: - $(LCLINTR) flags.c -expect 8 - $(LCLINTR) +nocomments flags.c -expect 2 + -$(SPLINTR) flags.c -expect 8 + -$(SPLINTR) +nocomments flags.c -expect 2 ### Added 2001-06-02 +.PHONY: forbody forbody: - ${LCLINTR} forbody.c -expect 2 + ${SPLINTR} forbody.c -expect 2 ### Added 2001-06-03 +.PHONY: format format: - ${LCLINTR} format.c -expect 3 - ${LCLINTR} format.c -formatconst + ${SPLINTR} format.c -expect 3 + ${SPLINTR} format.c -formatconst # two new errors (invalid lhs) +.PHONY: funcpointer funcpointer: - $(LCLINTR) +memchecks +noparams funcpointer.c -expect 18 + -$(SPLINTR) +memchecks +noparams funcpointer.c -expect 18 + +.PHONY: functionmacro +functionmacro: + -$(SPLINTR) functionmacro.c -expect 2 +.PHONY: glob glob: - $(LCLINTR) glob -expect 4 - $(LCLINTR) glob -globuse -expect 3 - $(LCLINTR) glob +globunspec -expect 6 + -$(SPLINTR) glob -expect 4 + -$(SPLINTR) glob -globuse -expect 3 + -$(SPLINTR) glob +globunspec -expect 6 +.PHONY: globals globals: - $(LCLINTR) -modifies globals.c -expect 5 - $(LCLINTR) -modifies globals.c +allglobals -expect 6 - $(LCLINTR) -modifies globals.c +impcheckedglobals -expect 6 - $(LCLINTR) -modifies globals.c -globals -checkstrictglobals -expect 2 - $(LCLINTR) -modifies globals.c +globunspec -expect 6 - $(LCLINTR) -modifies globals.c +globunspec +allglobals -expect 8 + -$(SPLINTR) -modifies globals.c -expect 5 + -$(SPLINTR) -modifies globals.c +allglobals -expect 6 + -$(SPLINTR) -modifies globals.c +impcheckedglobals -expect 6 + -$(SPLINTR) -modifies globals.c -globals -checkstrictglobals -expect 2 + -$(SPLINTR) -modifies globals.c +globunspec -expect 6 + -$(SPLINTR) -modifies globals.c +globunspec +allglobals -expect 8 # Was -accessfile +.PHONY: impabstract impabstract: - $(LCLINTR) -accessmodule impabstract.c - $(LCLINTR) -accessmodule +hints +impabstract impabstract.c -expect 2 - $(LCLINTR) -accessmodule +hints +impabstract impabstract -expect 4 + -$(SPLINTR) -accessmodule impabstract.c + -$(SPLINTR) -accessmodule +hints +impabstract impabstract.c -expect 2 + -$(SPLINTR) -accessmodule +hints +impabstract impabstract -expect 4 + +### +### evans 2001-12-30: Handle unrecognized pre-processor directives +### (Reported by Pierluigi Sanzani) + +.PHONY: info +info: + ${SPLINTR} info.c -expect 4 +### evans 2001-10-14: Expected errors updated +.PHONY: init init: - $(LCLINTR) init.c -expect 12 - $(LCLINTRN) init.c +checks -exportlocal -exportheadervar -expect 15 + -$(SPLINTR) init.c -expect 14 + -$(SPLINTRN) init.c +checks -exportlocal -exportheadervar -expect 17 +.PHONY: inparam inparam: - $(LCLINTR) inparam.c -expect 2 - $(LCLINTR) +impouts inparam.c -expect 1 + -$(SPLINTR) inparam.c -expect 2 + -$(SPLINTR) +impouts inparam.c -expect 1 +.PHONY: internal internal: - $(LCLINTR) internal.c -expect 1 - $(LCLINTR) internal.c +distinctinternalnames -expect 2 - $(LCLINTR) internal.c -internalnamelen 28 -expect 3 - $(LCLINTR) internal.c +internalnamecaseinsensitive -expect 3 - $(LCLINTR) internal.c +internalnamecaseinsensitive +internalnamelookalike -expect 11 + -$(SPLINTR) internal.c -expect 1 + -$(SPLINTR) internal.c +distinctinternalnames -expect 1 + -$(SPLINTR) internal.c +distinctinternalnames +ansi89limits -expect 2 + -$(SPLINTR) internal.c -internalnamelen 28 -expect 3 + -$(SPLINTR) internal.c +internalnamecaseinsensitive -expect 3 + -$(SPLINTR) internal.c +internalnamecaseinsensitive +internalnamelookalike -expect 11 ### ### iter ### 2001-06-06: Error message for iter.lcl:3,6 fixed to iter.lcl:3:6 ### +.PHONY: iter iter: - $(LCLINTR) iter -expect 14 -lclexpect 1 - $(LCLINTR) iter2.c -expect 12 + -$(SPLINTR) iter -expect 14 -lclexpect 1 + -$(SPLINTR) iter2.c -expect 12 +.PHONY: keep keep: - $(LCLINTR) keep.c +memchecks -expect 6 + -$(SPLINTR) keep.c +memchecks -expect 6 ### libs ### 2001-05-22: 2 new errors found (fixed spec of signal) ### 2001-05-30: 3 new errors found (formatconst) +.PHONY: libs libs: - $(LCLINTR) libs.c +longunsignedunsignedintegral -expect 18 - $(LCLINTR) libs.c -expect 22 - $(LCLINTR) libs.c +globunspec +modunspec -expect 25 - $(LCLINTR) libs.c +strictlib +globunspec +modunspec -expect 42 + -$(SPLINTR) libs.c +longunsignedunsignedintegral -expect 18 + -$(SPLINTR) libs.c -expect 22 + -$(SPLINTR) libs.c +globunspec +modunspec -expect 25 + -$(SPLINTR) libs.c +strictlib +globunspec +modunspec -expect 42 +.PHONY: lintcomments lintcomments: - $(LCLINTR) lintcomments.c -expect 4 - $(LCLINTR) lintcomments.c -warnlintcomments -expect 1 - $(LCLINTR) lintcomments.c -lintcomments -expect 4 + -$(SPLINTR) lintcomments.c -expect 5 + -$(SPLINTR) lintcomments.c -warnlintcomments -expect 1 + -$(SPLINTR) lintcomments.c -lintcomments -expect 4 +.PHONY: list list: - $(LCLINTR) list.c -expect 3 + -$(SPLINTR) list.c -expect 3 -macros: - $(LCLINTR) macros -expect 17 - $(LCLINTR) macros.c +allmacros -expect 34 - $(LCLINTR) macros.c +fcnmacros -expect 31 +### +### 2002-01-01: Added test case for obvious loop execution. +### +.PHONY: loopexec +loopexec: + -$(SPLINTR) loopexec.c -expect 1 + -$(SPLINTR) loopexec.c -obviousloopexec -expect 3 + +.PHONY: macros +macros: + -$(SPLINTR) macros -expect 17 + -$(SPLINTR) macros.c +allmacros -expect 34 + -$(SPLINTR) macros.c +fcnmacros -expect 31 +.PHONY: macrosef macrosef: - $(LCLINTR) macrosef -expect 4 - $(LCLINTR) macrosef.c +allmacros -expect 3 - $(LCLINTR) macrosef.c +allmacros +sefuncon -expect 4 + -$(SPLINTR) macrosef -expect 4 + -$(SPLINTR) macrosef.c +allmacros -expect 3 + -$(SPLINTR) macrosef.c +allmacros +sefuncon -expect 4 +.PHONY: merge merge: - $(LCLINTRN) merge.c +checks -exportlocal -exportheadervar -exportheader -expect 3 + -$(SPLINTRN) merge.c +checks -exportlocal -exportheadervar -exportheader -expect 3 +.PHONY: mergenull +mergenull: + -$(SPLINTRN) mergenull.c + +.PHONY: modifies modifies: - $(LCLINTR) modifies.c modclient.c +impcheckedstatics +mustmod -expect 7 + -$(SPLINTR) modifies.c modclient.c +impcheckedstatics +mustmod -expect 7 +.PHONY: modtest modtest: - $(LCLINTR) modtest -expect 10 - $(LCLINTR) modtest +modunspec -expect 13 - $(LCLINTR) modtest +mustmod -expect 14 + -$(SPLINTR) modtest -expect 10 + -$(SPLINTR) modtest +modunspec -expect 13 + -$(SPLINTR) modtest +mustmod -expect 14 +.PHONY: moduncon moduncon: - $(LCLINTR) moduncon.c +moduncon -memchecks -expect 4 - $(LCLINTRN) moduncon.c +strict -exportlocal -expect 22 + -$(SPLINTR) moduncon.c +moduncon -memchecks -expect 4 + -$(SPLINTRN) moduncon.c +strict -exportlocal -expect 22 +.PHONY: mongoincludes mongoincludes: - $(LCLINTR) mongoincludes.c -includenest 1 -expect 19 - $(LCLINTR) mongoincludes.c -includenest 2 -expect 10 - $(LCLINTR) mongoincludes.c -includenest 3 -expect 4 - $(LCLINTR) mongoincludes.c -includenest 4 -expect 1 - $(LCLINTR) mongoincludes.c -includenest 5 -expect 0 + -$(SPLINTR) mongoincludes.c -includenest 1 -expect 19 + -$(SPLINTR) mongoincludes.c -includenest 2 -expect 10 + -$(SPLINTR) mongoincludes.c -includenest 3 -expect 4 + -$(SPLINTR) mongoincludes.c -includenest 4 -expect 1 + -$(SPLINTR) mongoincludes.c -includenest 5 -expect 0 + +.PHONY: mystrncat +mystrncat: + -$(SPLINTR) mystrncat.c +boundsread +boundswrite -expect 4 + +.PHONY: noeffect +noeffect: + ${SPLINT} -nof noeffect.c +allmacros +checks -expect 3 + +### +### 2002-01-01: null1.c: expect increased to 15 because out must be defined +### checking detects one new error +### +.PHONY: null null: - $(LCLINTR) null1.c -expect 14 - $(LCLINTR) null1.c -null -expect 4 - $(LCLINTR) null2.c -expect 10 - $(LCLINTR) null3.c -expect 15 - $(LCLINTR) null3.c -warnunixlib +unixlib -expect 16 - $(LCLINTR) null4.c -expect 1 - $(LCLINTR) null5.c -expect 4 - $(LCLINTR) null6 -expect 4 - $(LCLINTR) +quiet null6.lcl -dump null6 - $(LCLINTR) null6.c -load null6 -expect 4 + -$(SPLINTR) null1.c -expect 15 + -$(SPLINTR) null1.c -null -mustdefine -expect 4 + -$(SPLINTR) null2.c -expect 11 + -$(SPLINTR) null3.c -expect 15 + -$(SPLINTR) null3.c -warnunixlib +unixlib -expect 16 + -$(SPLINTR) null4.c -expect 1 + -$(SPLINTR) null5.c -expect 4 + -$(SPLINTR) null6 -expect 4 + -$(SPLINTR) +quiet null6.lcl -dump null6 + -$(SPLINTR) null6.c -load null6 -expect 4 ### Added for 3.0 (bugs reported by Kevin Broady) +.PHONY: nullret nullret: - $(LCLINTR) nullret.c -expect 2 - $(LCLINTR) -nullret nullret.c -expect 1 + -$(SPLINTR) nullret.c -expect 2 + -$(SPLINTR) -nullret nullret.c -expect 1 +.PHONY: nullassign nullassign: - $(LCLINTR) nullassign.c -expect 2 - $(LCLINTR) -nullassign nullassign.c -expect 1 - + -$(SPLINTR) nullassign.c -expect 2 + -$(SPLINTR) -nullassign nullassign.c -expect 1 # # Before 2.4, expected one more because error was reported both as # dependent and observer. # +.PHONY: observer observer: - $(LCLINTRN) observer +checks -exportlocal -exportheader -expect 9 - $(LCLINTRN) observer.c +checks -exportlocal -exportheader -expect 8 - $(LCLINTR) observer.c -expect 7 + -$(SPLINTRN) observer +checks -exportlocal -exportheader -expect 9 + -$(SPLINTRN) observer.c +checks -exportlocal -exportheader -expect 8 + -$(SPLINTR) observer.c -expect 7 +.PHONY: oldstyle oldstyle: - $(LCLINTR) oldstyle -expect 3 + -$(SPLINTR) oldstyle -expect 3 +.PHONY: outglob outglob: - $(LCLINTR) outglob -expect 10 + -$(SPLINTR) outglob -expect 10 +.PHONY: outparam outparam: - $(LCLINTR) outparam -expect 12 + -$(SPLINTR) outparam -expect 12 + +### evans 2001-08-26: postnotnull new +.PHONY: postnotnull +postnotnull: + ${SPLINTR} postnotnull.c -expect 1 +# +# Four new +fcnuse errors for -strict (evans 2001-07-22) +# + +.PHONY: preds preds: - $(LCLINTR) +hints preds.c -expect 6 - $(LCLINTRN) +hints preds.c -weak -expect 1 - $(LCLINTRN) +hints preds.c -strict -exportlocal -exportheader -expect 8 + -$(SPLINTR) +hints preds.c -expect 6 + -$(SPLINTRN) +hints preds.c -weak -expect 1 + -$(SPLINTRN) +hints preds.c -strict -exportlocal -exportheader -expect 12 +.PHONY: prefixes prefixes: - $(LCLINTR) prefixes.c +partial - $(LCLINTRN) prefixes.c +allmacros +checks -exportlocal +partial -exportheader -exportheadervar -expect 4 - $(LCLINTR) prefixes.c -typeprefix "T" -expect 2 - $(LCLINTR) prefixes.c -typeprefix "^" -expect 1 - $(LCLINTR) prefixes.c -typeprefix "^*" -expect 2 - $(LCLINTR) prefixes.c -typeprefix "^%*" -expect 2 - $(LCLINTR) prefixes.c -typeprefix "^~*" -expect 2 - $(LCLINTR) prefixes.c -typeprefix "^" +typeprefixexclude -expect 7 - $(LCLINTR) prefixes.c -filestaticprefix "^^" -expect 4 - $(LCLINTR) prefixes.c -filestaticprefix "^#" -expect 5 - $(LCLINTR) prefixes.c -filestaticprefix "^?&x" -expect 5 - $(LCLINTR) prefixes.c -globalprefix "G" -expect 1 - $(LCLINTR) prefixes.c -globalprefix "&G?_^" -expect 1 - $(LCLINTR) prefixes.c -externalprefix "G" -expect 5 - $(LCLINTR) prefixes.c -typeprefix "T" -externalprefix "G" -expect 4 - $(LCLINTR) prefixes.c -localprefix "?*" +localprefixexclude -expect 13 - + -$(SPLINTR) prefixes.c +partial + -$(SPLINTRN) prefixes.c +allmacros +checks -exportlocal +partial -exportheader -exportheadervar -expect 4 + -$(SPLINTR) prefixes.c -typeprefix "T" -expect 2 + -$(SPLINTR) prefixes.c -typeprefix "^" -expect 1 + -$(SPLINTR) prefixes.c -typeprefix "^*" -expect 2 + -$(SPLINTR) prefixes.c -typeprefix "^%*" -expect 2 + -$(SPLINTR) prefixes.c -typeprefix "^~*" -expect 2 + -$(SPLINTR) prefixes.c -typeprefix "^" +typeprefixexclude -expect 7 + -$(SPLINTR) prefixes.c -filestaticprefix "^^" -expect 4 + -$(SPLINTR) prefixes.c -filestaticprefix "^#" -expect 5 + -$(SPLINTR) prefixes.c -filestaticprefix "^?&x" -expect 5 + -$(SPLINTR) prefixes.c -globalprefix "G" -expect 1 + -$(SPLINTR) prefixes.c -globalprefix "&G?_^" -expect 1 + -$(SPLINTR) prefixes.c -externalprefix "G" -expect 5 + -$(SPLINTR) prefixes.c -typeprefix "T" -externalprefix "G" -expect 4 + -$(SPLINTR) prefixes.c -localprefix "?*" +localprefixexclude -expect 13 + +.PHONY: printflike printflike: - $(LCLINTR) printflike.c -expect 6 - $(LCLINTR) printflike.c -warnlintcomments -expect 5 + -$(SPLINTR) printflike.c -expect 6 + -$(SPLINTR) printflike.c -warnlintcomments -expect 5 +.PHONY: rc rc: - $(LCLINTR) -DMYSTERY='"a flag\"wicked cool"' rc.c -expect 1 - $(LCLINTR) -DMYSTERY=12 rc.c -expect 1 - $(LCLINTR) -f rc1.lclintrc rc.c -expect 1 - $(LCLINTR) -UMYSTERY -f rc1.lclintrc rc.c -expect 1 - $(LCLINTR) -f rc3.lclintrc rc.c -expect 1 + -$(SPLINTR) -DMYSTERY='"a flag\"wicked cool"' rc.c -expect 1 + -$(SPLINTR) -DMYSTERY=12 rc.c -expect 1 + -$(SPLINTR) -f rc1.splintrc rc.c -expect 1 + -$(SPLINTR) -UMYSTERY -f rc1.splintrc rc.c -expect 1 + -$(SPLINTR) -f rc3.splintrc rc.c -expect 1 +.PHONY: rcfiles +rcfiles: + cd rcfiles; ${MAKE} SPLINT="-$(SPLINTPNEST)" + +.PHONY: refcounts refcounts: - $(LCLINTR) refcounts.c -expect 7 + -$(SPLINTR) refcounts.c -expect 7 +.PHONY: release release: - $(LCLINTR) release.c +memchecks -expect 1 + -$(SPLINTR) release.c +memchecks -expect 1 +.PHONY: repexpose repexpose: - $(LCLINTR) +lh repexpose +memchecks -expect 12 - $(LCLINTR) repexpose +memchecks +retalias -expect 15 - $(LCLINTRN) repexpose +checks -exportlocal -expect 27 + -$(SPLINTR) +lh repexpose +memchecks -expect 12 + -$(SPLINTR) repexpose +memchecks +retalias -expect 15 + -$(SPLINTRN) repexpose +checks -exportlocal -expect 27 ### returned added 2001-05-27 -### (Bug discovered checking lclint sources.) +### (Bug discovered checking splint sources.) +.PHONY: returned returned: - ${LCLINTR} returned.c -expect 1 + ${SPLINTR} returned.c -expect 1 +.PHONY: sharing sharing: - $(LCLINTR) sharing1.c -expect 21 - $(LCLINTR) sharing3.c -expect 3 - $(LCLINTR) sharing4.c -expect 13 - $(LCLINTR) sharing4.c -paramimptemp -expect 12 - $(LCLINTR) sharing5.c -expect 6 - + -$(SPLINTR) sharing1.c -expect 21 + -$(SPLINTR) sharing3.c -expect 3 + -$(SPLINTR) sharing4.c -expect 13 + -$(SPLINTR) sharing4.c -paramimptemp -expect 12 + -$(SPLINTR) sharing5.c -expect 6 + +.PHONY: shifts +shifts: + -$(SPLINTR) shifts.c -expect 4 + -$(SPLINTR) shifts.c -shiftimplementation -expect 3 + -$(SPLINTR) shifts.c -shiftnegative -expect 1 + +.PHONY: slovaknames slovaknames: - $(LCLINTR) +hints slovaknames.c -expect 1 - $(LCLINTR) +hints slovaknames.c +accessslovak - $(LCLINTR) +hints +slovak slovaknames.c -expect 3 - $(LCLINTR) +hints +slovak -slovakvars slovaknames.c -expect 2 - $(LCLINTR) +hints +slovak -accessslovak slovaknames.c -expect 7 + -$(SPLINTR) +hints slovaknames.c -expect 1 + -$(SPLINTR) +hints slovaknames.c +accessslovak + -$(SPLINTR) +hints +slovak slovaknames.c -expect 3 + -$(SPLINTR) +hints +slovak -slovakvars slovaknames.c -expect 2 + -$(SPLINTR) +hints +slovak -accessslovak slovaknames.c -expect 7 +.PHONY: specclauses specclauses: - $(LCLINTR) specclauses.c -expect 6 - $(LCLINTR) specclauses2.c -expect 8 - $(LCLINTR) specclauses3.c -expect 6 - $(LCLINTR) specclauses4.c -expect 3 - $(LCLINTR) specclauses5.c -expect 3 + -$(SPLINTR) specclauses.c -expect 6 + -$(SPLINTR) specclauses2.c -expect 8 + -$(SPLINTR) specclauses3.c -expect 6 + -$(SPLINTR) specclauses4.c -expect 3 + -$(SPLINTR) specclauses5.c -expect 3 + +.PHONY: specclauses1 +specclauses1: + -$(SPLINTR) specclauses.c -expect 6 + +.PHONY: specclauses2 +specclauses2: + -$(SPLINTR) specclauses2.c -expect 8 + +.PHONY: specclauses3 +specclauses3: + -$(SPLINTR) specclauses3.c -expect 6 + +.PHONY: specclauses4 +specclauses4: + -$(SPLINTR) specclauses4.c -expect 3 +.PHONY: specclauses5 +specclauses5: + -$(SPLINTR) specclauses5.c -expect 3 + +.PHONY: special special: - $(LCLINTR) special -expect 20 - $(LCLINTR) special -relaxquals -expect 22 + -$(SPLINTR) special -expect 20 + -$(SPLINTR) special -relaxquals -expect 22 +.PHONY: stack stack: - $(LCLINTR) stack.c -expect 5 - $(LCLINTR) stack.c -stackref + -$(SPLINTR) stack.c -expect 5 + -$(SPLINTR) stack.c -stackref +.PHONY: staticarray staticarray: - $(LCLINTR) staticarray.c -expect 3 + -$(SPLINTR) staticarray.c -expect 3 +.PHONY: strings strings: - $(LCLINTR) strings.c -expect 3 - $(LCLINTR) -readonlystrings -expect 1 strings.c - $(LCLINTR) +modobserverstrict -maintype -expect 4 strings.c + -$(SPLINTR) strings.c -expect 3 + -$(SPLINTR) -readonlystrings -expect 1 strings.c + -$(SPLINTR) +modobserverstrict -maintype -expect 4 strings.c +.PHONY: structassign structassign: - $(LCLINTR) structassign.c -expect 4 + -$(SPLINTR) structassign.c -expect 4 +.PHONY: typequals typequals: - $(LCLINTR) typequals.c tq.lcl -expect 5 - $(LCLINTR) typequals.c -expect 2 + -$(SPLINTR) typequals.c tq.lcl -expect 5 + -$(SPLINTR) typequals.c -expect 2 +.PHONY: ud ud: - $(LCLINTR) ud.c -expect 9 - $(LCLINTR) ud2 -specundef -expect 3 + -$(SPLINTR) ud.c -expect 9 + -$(SPLINTR) ud2 -specundef -expect 3 +.PHONY: ulstypes ulstypes: - $(LCLINTR) ulstypes.c -expect 8 - $(LCLINTR) ulstypes.c +ignorequals - $(LCLINTRN) ulstypes.c +strict -exportheader -exportheadervar -expect 28 + -$(SPLINTR) ulstypes.c -expect 8 + -$(SPLINTR) ulstypes.c +ignorequals + -$(SPLINTRN) ulstypes.c +strict -exportheader -exportheadervar -expect 28 + # 3 more detected with version 2.5 (change in -numliteral setting) +.PHONY: union union: - $(LCLINTR) +memchecks union.c -expect 8 + -$(SPLINTR) +memchecks union.c -expect 8 + +### +### Added 2001-12-30: fixed union initializer checking in response to +### bug report from Jim Zelenka. +### +.PHONY: unioninit +unioninit: + -$(SPLINTR) unioninit.c -expect 2 + +.PHONY: unreachable unreachable: - $(LCLINTR) unreachable.c -expect 5 - $(LCLINTR) -unreachable unreachable.c -expect 2 - $(LCLINTR) switch.c -expect 4 + -$(SPLINTR) unreachable.c -expect 5 + -$(SPLINTR) -unreachable unreachable.c -expect 2 + -$(SPLINTR) switch.c -expect 4 + +.PHONY: unsignedcompare +unsignedcompare: + ${SPLINTR} +posixlib unsignedcompare.c -expect 4 ### ### 2001-06-08 evans: 2 new errors after fixing ansireserved name checks ### +.PHONY: unused unused: - $(LCLINTRN) unused.c +checks -exportlocal -expect 5 - $(LCLINTRN) unused.c +checks -exportlocal +topuse -expect 8 + -$(SPLINTRN) unused.c +checks -exportlocal -expect 5 + -$(SPLINTRN) unused.c +checks -exportlocal +topuse -expect 8 ### ### 2001-06-10: Provided by Jim Zalenka ### +.PHONY: ullint ullint: - ${LCLINTRN} ullint.c -expect 5 - ${LCLINTRN} ullint.c +charint +charintliteral -expect 2 - -void: - ${LCLINTRN} void.c -expect 2 + ${SPLINTRN} ullint.c -expect 5 + ${SPLINTRN} ullint.c +charint +charintliteral -expect 2 ### -### New since 2.5q: +### 2001-12-30: Poor warnings reported by Peter Deutsch ### -linked: - ${LCLINTR} linked.c -expect 4 - ${LCLINTR} linked2.c -expect 3 - ${LCLINTR} linked3.c -expect 5 - ${LCLINTR} linked4.c -expect 6 - ${LCLINTR} linked5.c -expect 4 - ${LCLINTR} linked6.c -expect 4 +.PHONY: utypes +utypes: + ${SPLINTRN} utypes.c -expect 6 -freearray: - ${LCLINTR} freearray.c -expect 1 - -### -### Bugs fixed and new features since version 2.1b ### -tests2.2: - setenv LCLINT '$(LCLINTRN)'; cd tests2.2 ; $(MAKE) -e - -tests2.2a: - @cd tests2.2a ; \ - $(LCLINTR) erik.c -expect 1 ; \ - $(LCLINTR) boolcomp.c -expect 5 ; \ - $(LCLINTR) boolenum.c ; \ - $(LCLINTR) addassign.c -expect 1; \ - $(LCLINTR) toralf.c -expect 5 ; \ - $(LCLINTR) fred.c -booltype Bool ; \ - $(LCLINTR) sizeof.c ; \ - $(LCLINTR) arrayparam.c -expect 5 ; \ - $(LCLINTR) notreached.c ; \ - $(LCLINTR) duff.c -casebreak -firstcase ; \ - $(LCLINTR) obviousloop.c -expect 4 ; \ - $(LCLINTR) bitops.c +bitwisesigned -expect 11 ; \ - $(LCLINTR) bitops.c -expect 5 ; \ - $(LCLINTR) isalpha.c +strictlib -expect 1 ; \ - $(LCLINTR) isalpha.c -expect 1 ; \ - $(LCLINTR) dobb.c ; \ - $(LCLINTR) popik.c -expect 11 - -tests2.4: - setenv LCLINT '$(LCLINTRN)'; cd tests2.4 ; $(MAKE) -e - -sizeoftest: - @cd sizeoftest; \ - $(LCLINTR) +functionconstraint sizeof.c - -bufferTest: - @cd bufferTest; \ - $(LCLINTR) +functionconstraint test4.c test6.c - -simplebufferConstraintTests: - @cd simplebufferConstraintTests; \ - $(LCLINTR) +functionconstraint m.c sizeof.c test3.c test7.c - -moreBufferTests: - @cd moreBufferTests; \ - $(LCLINTR) +functionconstraint +orconstraint unrecogCall.c strrchr.c initialization.c simplifyTest.c - -maxset: - @cd maxset; \ - $(LCLINTR) -f .lclintrc -booltype "lltX_bool" maxsetannotations.c; \ - echo $(LCLINTR); \ - $(LCLINTR) -f .lclintrc -booltype "lltX_bool" maxsetnoannotations.c - -globalbufferannotation: - @cd globalbufferannotation; \ - $(LCLINTR) +functionconstraint globalvariable.c - - -strchr: - @cd strchr; \ - $(LCLINTR) -f .lclintrc -booltype "lltX_bool" strchr.c - -for: - @cd for; \ - $(LCLINTR) -f .lclintrc -booltype "lltX_bool" for.c - -tests2.5: - setenv LCLINT '$(LCLINTRN)'; cd tests2.5 ; $(MAKE) -e - -metastate: - setenv LCLINT '$(LCLINTRN)'; cd metastate ; $(MAKE) -e - -tainted: - setenv LCLINT '$(LCLINTRN)'; cd tainted ; $(MAKE) -e - -fileio: - setenv LCLINT '$(LCLINTRN)'; cd fileio ; $(MAKE) -e - -warnuse: - setenv LCLINT '$(LCLINTRN)'; cd warnuse ; $(MAKE) -e - -ensuresclauses: - setenv LCLINT '$(LCLINTRN)'; cd ensuresclauses ; $(MAKE) -e +.PHONY: void +void: + ${SPLINTRN} void.c -expect 2 ### -### Integration Tests +### 2001-12-30: Problems with wide character strings reported by Nelson Beebe ### -db1: - setenv LCLINT '$(LCLINTRN)'; cd db1; $(MAKE) -e test - - -### evans 2000-12-22 -### 2 errors are no longer reported, since eref is immutable. -### Need to clarify what it means for an object to be immutable; -### there should be 2 types with different storage requirements. - -db2: - setenv LCLINT '$(LCLINTRN)'; cd db2; $(MAKE) -e test - -db3: - setenv LCLINT '$(LCLINTRN)'; cd db3; $(MAKE) -e test - -clean: - -rm -f *~ #*# *.o *.lcs a.out - -cd db1 ; $(MAKE) clean - -cd db2 ; $(MAKE) clean - -cd db3 ; $(MAKE) clean - - +.PHONY: widestrings +widestrings: + ${SPLINTRN} widestrings.c -expect 2 +### +### New since 2.5q: +### +.PHONY: linked +linked: + ${SPLINTR} linked.c -expect 4 + ${SPLINTR} linked2.c -expect 3 + ${SPLINTR} linked3.c -expect 5 + ${SPLINTR} linked4.c -expect 6 + ${SPLINTR} linked5.c -expect 4 + ${SPLINTR} linked6.c -expect 4 + +.PHONY: freearray +freearray: + ${SPLINTR} freearray.c -expect 1 + +.PHONY: sizeof +sizeof: + -$(SPLINTR) +bounds sizeof.c -expect 1 + +.PHONY: buffertest +buffertest: + -$(SPLINTR) +bounds buffertest1.c -expect 5 + +.PHONY: $(SUBDIRTESTS) +$(SUBDIRTESTS): + cd $@; $(MAKE) SPLINT="$(SPLINTRNNEST)" +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: