Splint - annotation-assisted static program checker
http://www.splint.org
- Copyright (C) 1994-2002
+ Copyright (C) 1994-2007
University of Virginia,
Massachusetts Institute of Technology
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for Splint 3.1.1.2.
+# Generated by GNU Autoconf 2.59 for Splint 3.1.2.
#
# Report bugs to <splint-bug@splint.org>.
#
# Identity of this package.
PACKAGE_NAME='Splint'
PACKAGE_TARNAME='splint'
-PACKAGE_VERSION='3.1.1.2'
-PACKAGE_STRING='Splint 3.1.1.2'
+PACKAGE_VERSION='3.1.2'
+PACKAGE_STRING='Splint 3.1.2'
PACKAGE_BUGREPORT='splint-bug@splint.org'
ac_unique_file="src/lclinit.c"
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures Splint 3.1.1.2 to adapt to many kinds of systems.
+\`configure' configures Splint 3.1.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of Splint 3.1.1.2:";;
+ short | recursive ) echo "Configuration of Splint 3.1.2:";;
esac
cat <<\_ACEOF
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
-Splint configure 3.1.1.2
+Splint configure 3.1.2
generated by GNU Autoconf 2.59
Copyright (C) 2003 Free Software Foundation, Inc.
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by Splint $as_me 3.1.1.2, which was
+It was created by Splint $as_me 3.1.2, which was
generated by GNU Autoconf 2.59. Invocation command line was
$ $0 $@
# Define the identity of the package.
PACKAGE=splint
- VERSION=3.1.1.2
+ VERSION=3.1.2
# Some tools Automake needs.
# These used to be in herald.h
-LCL_PARSE_VERSION="Splint 3.1.1.2"
+LCL_PARSE_VERSION="Splint 3.1.2"
cat >>confdefs.h <<_ACEOF
#define SPLINT_VERSION "$LCL_PARSE_VERSION --- `date +"%d %b %Y"`"
} >&5
cat >&5 <<_CSEOF
-This file was extended by Splint $as_me 3.1.1.2, which was
+This file was extended by Splint $as_me 3.1.2, which was
generated by GNU Autoconf 2.59. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-Splint config.status 3.1.1.2
+Splint config.status 3.1.2
configured by $0, generated by GNU Autoconf 2.59,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
dnl Process with autoconf to create a configure script -*- Autoconf -*-
AC_PREREQ(2.50)
-AC_INIT([Splint], [3.1.1.2], [splint-bug@splint.org], [splint])
+AC_INIT([Splint], [3.1.2], [splint-bug@splint.org], [splint])
dnl This MUST precede any other macro
AC_CONFIG_AUX_DIR([config])
/*drl added 12/11/2002*/
/*@-type@*/
+/*@-enummemuse@*/
+
/* < end of bison.head > */
/* A Bison parser, made by GNU Bison 2.3. */
/*drl added 12/11/2002*/
/*@=type@*/
+
+/*@=enummemuse@*/
/*drl added 12/11/2002*/
/*@-type@*/
+/*@-enummemuse@*/
+
/* < end of bison.head > */
/* A Bison parser, made by GNU Bison 2.3. */
/*drl added 12/11/2002*/
/*@=type@*/
+
+/*@=enummemuse@*/
/*drl added 12/11/2002*/
/*@-type@*/
+/*@-enummemuse@*/
+
/* < end of bison.head > */
/* A Bison parser, made by GNU Bison 2.3. */
/*drl added 12/11/2002*/
/*@=type@*/
+
+/*@=enummemuse@*/
/*drl added 12/11/2002*/
/*@-type@*/
+/*@-enummemuse@*/
+
/* < end of bison.head > */
/* A Bison parser, made by GNU Bison 2.3. */
/*drl added 12/11/2002*/
/*@=type@*/
+
+/*@=enummemuse@*/
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
CFLAGS = @CFLAGS@
DIST_SOURCES = $(lcl_SOURCES) $(splint_SOURCES)
-DIST_COMMON = Makefile.am Makefile.in TODO
+DIST_COMMON = Makefile.am Makefile.in
SOURCES = $(lcl_SOURCES) $(splint_SOURCES)
all: $(BUILT_SOURCES)
.PHONY: test
test:
- ${MAKE} ; cd ../test; ${MAKE} --no-print-directory
+ cd ../test; ${MAKE} --no-print-directory
.PHONY: libs
libs:
- ${MAKE} ; cd ../lib; ${MAKE} --no-print-directory
+ cd ../lib; ${MAKE} --no-print-directory
### Automake generates wrong tags
.PHONY: etags
/*drl added 12/11/2002*/
/*@-type@*/
+/*@-enummemuse@*/
+
/* < end of bison.head > */
/*drl added 12/11/2002*/
/*@=type@*/
+
+/*@=enummemuse@*/
/*drl added 12/11/2002*/
/*@-type@*/
+/*@-enummemuse@*/
+
/* < end of bison.head > */
/* A Bison parser, made by GNU Bison 2.3. */
/*drl added 12/11/2002*/
/*@=type@*/
+
+/*@=enummemuse@*/
# endif
-static int file_size_and_mode (int p_fd, /*@out@*/ __mode_t *p_mode_pointer,
+static int file_size_and_mode (int p_fd, /*@out@*/ mode_t *p_mode_pointer,
/*@out@*/ size_t *p_size_pointer);
static int safe_read (int p_desc, /*@out@*/ char *p_ptr, int p_len);
defn->predefined = NULL;
exp_p = defn->expansion = (char *) defn + sizeof (*defn);
+ *defn->expansion = '\0'; /* convince splint it is initialized */
defn->line = 0;
defn->rest_args = NULL;
llfatalbug (cstring_makeLiteral ("Maximum definition size exceeded."));
}
- /*@i1@*/ return defn; /* Spurious warning here */
+ return defn; /* Spurious warning here */
}
/*
{
llfatalbug (cstring_makeLiteral ("Maximum definition size exceeded."));
}
-
- /*@i1@*/ return defn; /* Spurious warning here */
+
+ /*@-compdef@*/ /* defn->expansion defined? */
+ return defn;
+ /*@=compdef@*/
}
/*
bool system_header_p,
/*@dependent@*/ struct file_name_list *dirptr)
{
- __mode_t st_mode;
+ mode_t st_mode; /* was __mode_t */
size_t st_size;
long i;
int length = 0;
*/
static int
-file_size_and_mode (int fd, __mode_t *mode_pointer, size_t *size_pointer)
+file_size_and_mode (int fd, mode_t *mode_pointer, size_t *size_pointer)
{
struct stat sbuf;
if (fstat (fd, &sbuf) < 0) {
*mode_pointer = 0;
*size_pointer = 0;
- /*@i2@*/ return (-1); /* Spurious warnings! */
+ /*@-compdestroy@*/ /* possibly spurious warnings here (or memory leak) */
+ return (-1);
+ /*@=compdestroy@*/
}
if (mode_pointer != NULL)
{
+ /*@-type@*/ /* confusion between __mode_t and mode_t types */
*mode_pointer = sbuf.st_mode;
+ /*@=type@*/
}
if (size_pointer != NULL)
*size_pointer = (size_t) sbuf.st_size;
}
- /*@i4@*/ return 0; /* spurious warnings here */
+ /*@-compdestroy@*/ /* possibly spurious warnings here (or memory leak) */
+ return 0;
+ /*@=compdestroy@*/
}
/* Read LEN bytes at PTR from descriptor DESC, for file FILENAME,
static unsigned int lineNumber; /* current line number */
ltokenCode yllex (void)
- /*@globals killed restoretok@*/
+ /*@globals killed restoretok@*/ /* only if restore is TRUE */
{
lsymbol tokenSym;
}
else
{
+ /*@-onlyunqglobaltrans@*/
yllval.ltok = ltoken_copy (LCLScanNextToken ());
+ /*@=onlyunqglobaltrans@*/
}
tokenSym = ltoken_getText (yllval.ltok);
}
}
+ /*@-onlyunqglobaltrans@*/ /* restoretok not released on non-restore path */
+ /*@-globstate@*/
return (ltoken_getCode (yllval.ltok));
+ /*@=onlyunqglobaltrans@*/
+ /*@=globstate@*/
}
/* useful for scanning LCL init files and LSL init files ? */
/*drl added 12/11/2002*/
/*@-type@*/
+/*@-enummemuse@*/
+
/* < end of bison.head > */
/* A Bison parser, made by GNU Bison 2.3. */
/*drl added 12/11/2002*/
/*@=type@*/
+
+/*@=enummemuse@*/
bool
osd_executableFileExists (/*@unused@*/ char *filespec)
{
+ /*@-compdestroy@*/ /* possible memory leaks here? */
# ifdef UNIX
struct stat buf;
if (stat (filespec, &buf) == 0)
{
/* mask by file type */
- /*@-unrecog@*/ /* S_IFMT is not defined */
- /*@i32@*/ if ((buf.st_mode & S_IFMT) != S_IFDIR /*@=unrecog@*/) /* not a directory */ /* spurious */
+ /*@-type@*/ /* confusion about __mode_t and mode_t types */
+ if ((buf.st_mode & S_IFMT) != S_IFDIR) /* not a directory */
+ /*@=type@*/
{
/* as long as it is an executable file */
# if defined(__IBMC__) && defined(OS2)
| (buf.st_mode & S_IXGRP) |
(buf.st_mode & S_IXOTH)
# endif
- /*@i4@*/ ) != 0); /* spurious */
+ ) != 0); /* spurious */
# endif
}
}
# endif
- /*@i4@*/ return (FALSE); /* spurious */
-
+ return (FALSE);
+ /*@=compdestroy@*/
}
/*
unsigned int lsllex (YYSTYPE *lval)
{
/* This is important! Bison expects this */
- lval->ltok = LSLScanNextToken ();
- return (ltoken_getCode (lval->ltok));
+ /* splint doesn't know the type of YYSTYPE, so we need to ignore warnings here */
+ /*@i1@*/ lval->ltok = LSLScanNextToken ();
+ /*@i1@*/ return (ltoken_getCode (lval->ltok));
}
ltoken LSLScanNextToken (void)
/*drl added 12/11/2002*/
/*@-type@*/
+/*@-enummemuse@*/
+
/* < end of bison.head > */
/* A Bison parser, made by GNU Bison 2.3. */
/*drl added 12/11/2002*/
/*@=type@*/
+
+/*@=enummemuse@*/
%token <ltok> LST_COMMA /* , */
%token <ltok> LST_EOL LST_COMMENTSYM LST_WHITESPACE
-%token LST_WHITESPACE
+ /* %token LST_WHITESPACE */ /* Duplicate tokey removed */
%token LST_QUANTIFIERSYM
%token LST_EQUATIONSYM
%token LST_EQSEPSYM