gmake[2]: Entering directory `/u/evs/lclint/web/samples/db/original'
lclint +lh -weak +showscan +stats +showscan +stats employee eref empset ereftab erc dbase drive.c
LCLint 2.1a --- 18 Apr 96

Warning: setting +showscan redundant with current value
Warning: setting +stats redundant with current value
< reading spec employee.lcl >
< reading spec eref.lcl >
< reading spec empset.lcl >
< reading spec ereftab.lcl >
< reading spec erc.lcl >
< reading spec dbase.lcl >
< preprocessing >
< checking employee.c >
employee.c: (in function employee_equal)
employee.c:18,17: Function strncmp expects arg 3 to be size_t gets int:
                     maxEmployeeName
  To allow arbitrary integral types to match any integral type, use
  +matchanyintegral.
< checking eref.c >
< checking empset.c >
empset.c: (in function empset_insert)
empset.c:22,8: Variable er declared but not used
  A variable is declared but never used. Use /*@unused@*/ in front of
  declaration to suppress message. Use -varuse to suppress message.
empset.c: (in function empset_disjointUnion)
empset.c:58,32: Undocumented modification of s1 possible from call to
                   erc_iterStart (through alias s2): erc_iterStart(s2)
  An externally-visible object is modified by a function, but not listed in its
  modifies clause. Use -mods to suppress message.
empset.c:58,32: Undocumented modification of s2 possible from call to
                   erc_iterStart: erc_iterStart(s2)
empset.c: (in function empset_union)
empset.c:75,32: Undocumented modification of s2 possible from call to
                   erc_iterStart (through alias s1): erc_iterStart(s1)
empset.c:75,32: Undocumented modification of s1 possible from call to
                   erc_iterStart: erc_iterStart(s1)
empset.c: (in function empset_subset)
empset.c:99,32: Undocumented modification of s1 possible from call to
                   erc_iterStart: erc_iterStart(s1)
empset.c:95,12: Variable e declared but not used
< checking ereftab.c >
ereftab.c: (in function ereftab_lookup)
ereftab.c:30,32: Undocumented modification of t possible from call to
                    erc_iterStart: erc_iterStart(t)
< checking erc.c >
erc.c: (in function erc_member)
erc.c:34,9: Operands of == are abstract type (eref): tmpc->val == er
  An abstraction barrier is broken. If necessary, use /*@access @*/ to
  allow access to an abstract type. Use -abstract to suppress message.
erc.c: (in function erc_delete)
erc.c:58,9: Operands of == are abstract type (eref): elem->val == er
erc.c: (in function erc_sprint)
erc.c:103,26: Function malloc expects arg 1 to be size_t gets int:
                 erc_size(c) * (employeePrintSize + 1) + 1
erc.c:110,32: Undocumented modification of c possible from call to
                 erc_iterStart: erc_iterStart(c)
< checking dbase.c >
dbase.c: (in function query)
dbase.c:137,8: Variable er declared but not used
dbase.c:138,12: Variable e declared but not used
< checking drive.c >
drive.c: (in function main)
drive.c:87,25: Return value (type db_status) ignored: hire(e)
  Result returned by function call is not used. If this is intended, can cast
  result to (void) to eliminate message. Use -retvalother to suppress message.
< checking macros bool.h >
< global checks >
< cleaning .......... >

Finished LCLint checking --- 16 code errors found
299 spec, 2449 source (948 before pre-processing) lines in 8.67 s.
gmake[2]: Leaving directory `/u/evs/lclint/web/samples/db/original'


Return LCLint Home Page David Evans
Software Devices and Systems
evs@sds.lcs.mit.edu