/*
-** LCLint - annotation-assisted static program checker
-** Copyright (C) 1994-2000 University of Virginia,
+** Splint - annotation-assisted static program checker
+** Copyright (C) 1994-2003 University of Virginia,
** Massachusetts Institute of Technology
**
** This program is free software; you can redistribute it and/or modify it
** the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
** MA 02111-1307, USA.
**
-** For information on lclint: lclint-request@cs.virginia.edu
-** To report a bug: lclint-bug@cs.virginia.edu
-** For more information: http://lclint.cs.virginia.edu
+** For information on splint: info@splint.org
+** To report a bug: splint-bug@splint.org
+** For more information: http://www.splint.org
*/
/*
** sRefTable.c
** where T has T_equal (or change this) and T_unparse
*/
-# include "lclintMacros.nf"
+# include "splintMacros.nf"
# include "basic.h"
# include "sRefTable.h"
llassert (s->elements != NULL);
s->elements[s->entries] = el;
+ DPRINTF (("Adding to sRef table: [%p]", el));
s->entries++;
-
return s;
}
void
sRefTable_clear (sRefTable s)
{
+# ifdef DEBUGSPLINT
+ usymtab_checkAllValid ();
+# endif
+
if (sRefTable_isDefined (s))
{
int i;
for (i = 0; i < s->entries; i++)
{
- sRef_free (s->elements[i]);
+ DPRINTF (("Table clear: [%p] %s", s->elements[i], sRef_unparseDebug (s->elements[i])));
+ /* sRef_checkValid (s->elements[i]); */
+ sRef_free (s->elements[i]);
}
-
+
s->nspace += s->entries;
s->entries = 0;
}
+
+# ifdef DEBUGSPLINT
+ usymtab_checkAllValid ();
+# endif
}
static int sRefTable_size (sRefTable s)
for (i = 0; i < s->entries; i++)
{
+ DPRINTF (("Table free: [%p] %s", s->elements[i], sRef_unparse (s->elements[i])));
sRef_free (s->elements[i]);
}