]> andersk Git - splint.git/blame - test/db1.expect
*** empty log message ***
[splint.git] / test / db1.expect
CommitLineData
885824d3 1
3120b462 2< loading standard library /af10/evans/LCLintDev/lib/ansi.lcd .... >
885824d3 3< reading spec bool.lcl >
4< reading spec employee.lcl >
5< reading spec eref.lcl >
6< reading spec empset.lcl >
7< reading spec ereftab.lcl >
8< reading spec erc.lcl >
9< reading spec dbase.lcl >
10< preprocessing >
11< checking employee.c >
12employee.c: (in function employee_equal)
3120b462 13employee.c:25: Function strncmp expects arg 3 to be size_t gets int:
885824d3 14 maxEmployeeName
15< checking eref.c >
16< checking empset.c >
17empset.c: (in function empset_insert)
18empset.c:28: Variable er declared but not used
19empset.c: (in function empset_disjointUnion)
20empset.c:85: Undocumented modification of s1 possible from call to
21 erc_iterStart (through alias s2): erc_iterStart(s2)
22empset.c:85: Undocumented modification of s2 possible from call to
23 erc_iterStart: erc_iterStart(s2)
24empset.c: (in function empset_union)
25empset.c:108: Undocumented modification of s2 possible from call to
26 erc_iterStart (through alias s1): erc_iterStart(s1)
27empset.c:108: Undocumented modification of s1 possible from call to
28 erc_iterStart: erc_iterStart(s1)
29empset.c: (in function empset_subset)
30empset.c:139: Undocumented modification of s1 possible from call to
31 erc_iterStart: erc_iterStart(s1)
32empset.c:135: Variable e declared but not used
33< checking ereftab.c >
34ereftab.c: (in function ereftab_lookup)
35ereftab.c:34: Undocumented modification of t possible from call to
36 erc_iterStart: erc_iterStart(t)
37< checking erc.c >
38erc.c: (in function erc_member)
39erc.c:47: Operands of == are abstract type (eref): tmpc->val == er
40erc.c: (in function erc_delete)
41erc.c:78: Operands of == are abstract type (eref): elem->val == er
42erc.c: (in function erc_sprint)
43erc.c:141: Function malloc expects arg 1 to be size_t gets int:
44 erc_size(c) * (employeePrintSize + 1) + 1
45erc.c:151: Undocumented modification of c possible from call to erc_iterStart:
46 erc_iterStart(c)
47< checking dbase.c >
48dbase.c: (in function query)
49dbase.c:210: Variable er declared but not used
50dbase.c:211: Variable e declared but not used
51< checking drive.c >
52drive.c: (in function main)
53drive.c:123: Return value (type db_status) ignored: hire(e)
54< checking macros bool.h >
55< global checks >
56< cleaning .......... >
57
58Finished LCLint checking --- 16 code errors found, as expected
59
3120b462 60< loading standard library /af10/evans/LCLintDev/lib/ansi.lcd .... >
885824d3 61< reading spec bool.lcl >
62< reading spec employee.lcl >
63< reading spec eref.lcl >
64< reading spec empset.lcl >
65< reading spec ereftab.lcl >
66< reading spec erc.lcl >
67< reading spec dbase.lcl >
68< preprocessing >
69employee.h:2: Name EMPLOYEE_H is reserved for future ANSI library extensions.
70 Macros beginning with E and a digit or uppercase letter may be added to
71 <errno.h>. (See ANSI, Section 4.13.1)
72< more preprocessing . >
73eref.h:2: Name EREF_H is reserved for future ANSI library extensions. Macros
74 beginning with E and a digit or uppercase letter may be added to <errno.h>.
75 (See ANSI, Section 4.13.1)
76< more preprocessing . >
77empset.h:2: Name EMPSET_H is reserved for future ANSI library extensions.
78 Macros beginning with E and a digit or uppercase letter may be added to
79 <errno.h>. (See ANSI, Section 4.13.1)
80< more preprocessing . >
81erc.h:2: Name ERC_H is reserved for future ANSI library extensions. Macros
82 beginning with E and a digit or uppercase letter may be added to <errno.h>.
83 (See ANSI, Section 4.13.1)
84< more preprocessing . >
85ereftab.h:4: Name EREFTAB_H is reserved for future ANSI library extensions.
86 Macros beginning with E and a digit or uppercase letter may be added to
87 <errno.h>. (See ANSI, Section 4.13.1)
88< more preprocessing . >
89< checking employee.c >
90bool.h:20: Modifies list for bool_initMod uses global internal state, not
91 included in globals list.
92 bool.h:20: Declaration of bool_initMod
3120b462 93employee.h:12: Declaration parameter has name: p_e
94employee.c:5: Definition parameter name e does not match name of corresponding
95 parameter in declaration: p_e
96 employee.h:12: Previous declaration of p_e
885824d3 97employee.c: (in function employee_setName)
3120b462 98employee.c:12: Undefined storage e->name corresponds to storage listed in
99 defines clause
100employee.c:12: Body of if statement is not a block: return FALSE
101employee.c:15: Parameter 1 (e->name) to function strcpy is declared unique but
885824d3 102 may be aliased externally by parameter 2 (na)
103employee.c: (in function employee_equal)
3120b462 104employee.c:25: Function strncmp expects arg 3 to be size_t gets int:
885824d3 105 maxEmployeeName
106employee.c: (in function employee_sprint)
3120b462 107employee.c:30: Read-only string literal storage used as initial value for
885824d3 108 unqualified storage: gender[0] = "male"
3120b462 109employee.c:30: Read-only string literal storage used as initial value for
885824d3 110 unqualified storage: gender[1] = "female"
885824d3 111employee.c:30: Read-only string literal storage used as initial value for
3120b462 112 unqualified storage: gender[2] = "?"
113employee.c:31: Read-only string literal storage used as initial value for
885824d3 114 unqualified storage: jobs[0] = "manager"
3120b462 115employee.c:31: Read-only string literal storage used as initial value for
885824d3 116 unqualified storage: jobs[1] = "non-manager"
3120b462 117employee.c:31: Read-only string literal storage used as initial value for
885824d3 118 unqualified storage: jobs[2] = "?"
3120b462 119employee.c:34: Array fetch using non-integer, gender: gender[e.gen]
120employee.c:34: Array fetch using non-integer, job: jobs[e.j]
885824d3 121employee.h: (in macro employee_initMod)
3120b462 122employee.h:14: Called procedure bool_initMod may access internal state, but
885824d3 123 globals list does not include globals internalState
3120b462 124employee.h:14: Undocumented modification of internal state possible from call
885824d3 125 to bool_initMod: bool_initMod()
126< checking eref.c >
127eref.h:9: Constant exported, but not specified: used
128eref.h:9: Constant exported, but not specified: avail
129eref.h:9: Type exported, but not specified: eref_status
130eref.h:14: Type exported, but not specified: eref_ERP
131eref.h:17: Variable exported, but not specified: eref_Pool
132eref.c: (in function eref_alloc)
133eref.c:12: Undocumented use of global eref_Pool
134eref.c:12: Undocumented use of global eref_Pool
135eref.c:12: Body of for statement is empty
136eref.c:12: Undocumented use of global eref_Pool (in post loop test)
137eref.c:16: Undocumented use of global eref_Pool
138eref.c:18: Undocumented use of global eref_Pool
139eref.c:19: Undocumented use of global eref_Pool
140eref.c:20: Undocumented use of global eref_Pool
141eref.c:20: Parameter to sizeof is type employee: sizeof(employee)
142eref.c:19: Undocumented modification of *(eref_Pool.conts) possible from call
143 to realloc: realloc(eref_Pool.conts, 2 * eref_Pool.size * sizeof(employee))
144eref.c:18: Undocumented modification of eref_Pool.conts:
145 eref_Pool.conts = (employee *)realloc(eref_Pool.conts, 2 * eref_Pool.size *
146 sizeof(employee))
147eref.c:22: Undocumented use of global eref_Pool
148eref.c:25: Argument to exit has implementation defined behavior: 1
149eref.c:28: Undocumented use of global eref_Pool
150eref.c:29: Undocumented use of global eref_Pool
151eref.c:30: Undocumented use of global eref_Pool
152eref.c:30: Parameter to sizeof is type eref_status: sizeof(eref_status)
153eref.c:29: Undocumented modification of *(eref_Pool.status) possible from call
154 to realloc: realloc(eref_Pool.status, 2 * eref_Pool.size *
155 sizeof(eref_status))
156eref.c:28: Undocumented modification of eref_Pool.status:
157 eref_Pool.status = (eref_status *)realloc(eref_Pool.status, 2 *
158 eref_Pool.size * sizeof(eref_status))
159eref.c:32: Undocumented use of global eref_Pool
160eref.c:35: Argument to exit has implementation defined behavior: 1
161eref.c:38: Undocumented use of global eref_Pool
162eref.c:38: Undocumented use of global eref_Pool
163eref.c:38: Undocumented modification of eref_Pool.size:
164 eref_Pool.size = 2 * eref_Pool.size
165eref.c:40: Undocumented use of global eref_Pool
166eref.c:41: Undocumented use of global eref_Pool
167eref.c:41: Undocumented modification of eref_Pool.status[]:
168 eref_Pool.status[i] = avail
169eref.c:41: Body of for statement is not a block: eref_Pool.status[i] = avail
170eref.c:41: Undocumented use of global eref_Pool (in post loop test)
171eref.c:44: Undocumented use of global eref_Pool
172eref.c:44: Undocumented modification of eref_Pool.status[]:
173 eref_Pool.status[res] = used
174eref.c: (in function eref_initMod)
175eref.c:53: Undocumented use of file static needsInit
176eref.c:58: Undocumented use of file static needsInit
177eref.c:58: Undocumented modification of needsInit: needsInit = FALSE
178eref.c:60: Statement has no effect: employee_initMod()
179eref.c:62: Undocumented use of global eref_Pool
180eref.c:62: Parameter to sizeof is type employee: sizeof(employee)
181eref.c:62: Undocumented modification of eref_Pool.conts:
182 eref_Pool.conts = (employee *)malloc(size * sizeof(employee))
80ee600a 183eref.c:62: Implicitly only storage eref_Pool.conts (type employee *) not
184 released before assignment: eref_Pool.conts = (employee *)malloc(size *
185 sizeof(employee))
885824d3 186eref.c:64: Undocumented use of global eref_Pool
187eref.c:67: Argument to exit has implementation defined behavior: 1
188eref.c:70: Undocumented use of global eref_Pool
189eref.c:70: Parameter to sizeof is type eref_status: sizeof(eref_status)
190eref.c:70: Undocumented modification of eref_Pool.status:
191 eref_Pool.status = (eref_status *)malloc(size * sizeof(eref_status))
80ee600a 192eref.c:70: Implicitly only storage eref_Pool.status (type eref_status *) not
193 released before assignment: eref_Pool.status = (eref_status *)malloc(size *
885824d3 194 sizeof(eref_status))
195eref.c:72: Undocumented use of global eref_Pool
196eref.c:75: Argument to exit has implementation defined behavior: 1
197eref.c:78: Undocumented use of global eref_Pool
198eref.c:78: Undocumented modification of eref_Pool.size: eref_Pool.size = size
199eref.c:82: Undocumented use of global eref_Pool
200eref.c:82: Undocumented modification of eref_Pool.status[]:
201 eref_Pool.status[i] = avail
3120b462 202eref.c:84: Global storage *(eref_Pool.conts) contains 5 undefined fields when
203 call returns: ssNum, name, salary, gen, j
885824d3 204eref.c:84: Global storage eref_Pool contains 1 undefined field when call
205 returns: status
206eref.h: (in macro eref_free)
207eref.h:23: Undocumented use of global eref_Pool
208eref.h:23: Undocumented modification of eref_Pool.status[]:
209 eref_Pool.status[er] = avail
210eref.h: (in macro eref_assign)
211eref.h:24: Undocumented use of global eref_Pool
212eref.h:24: Macro parameter used without parentheses: e
213eref.h:24: Undocumented modification of eref_Pool.conts[]:
214 eref_Pool.conts[er] = e
215eref.h: (in macro eref_get)
216eref.h:25: Undocumented use of global eref_Pool
217eref.h: (in macro eref_equal)
218eref.h:26: Macro parameter used without parentheses: er1
219eref.h:26: Macro parameter used without parentheses: er2
220< checking empset.c >
80ee600a 221erc.h:6: Name _elem is in the implementation name space (any identifier
222 beginning with underscore)
885824d3 223erc.h:6: Type exported, but not specified: ercElem
224erc.h:7: Type exported, but not specified: ercList
225erc.h:8: Type exported, but not specified: ercInfo
226empset.h:10: Variable exported, but not specified: known
227empset.c:5: Name _empset_get is in the implementation name space (any
228 identifier beginning with underscore)
229empset.c: (in function _empset_get)
230empset.c:11: Undocumented modification of s possible from call to
231 erc_iterStart: erc_iterStart(s)
232empset.c:15: Body of if statement is not a block:
cc78dedd 233 do { { erc_iterFinal(it) } } while (FALSE)
885824d3 234empset.c: (in function empset_insert)
235empset.c:30: Undetected modification possible from call to unconstrained
236 function _empset_get: _empset_get
237empset.c:28: Variable er declared but not used
238empset.c: (in function empset_insertUnique)
239empset.c:43: Undocumented use of global known
240empset.c:49: Undocumented use of global known
241empset.c:49: Undocumented modification of known possible from call to
242 ereftab_insert: ereftab_insert(known, e, er)
243empset.c: (in function empset_delete)
244empset.c:59: Undetected modification possible from call to unconstrained
245 function _empset_get: _empset_get
246empset.c: (in function empset_disjointUnion)
247empset.c:85: Undocumented modification of s1 possible from call to
248 erc_iterStart (through alias s2): erc_iterStart(s2)
249empset.c:85: Undocumented modification of s2 possible from call to
250 erc_iterStart: erc_iterStart(s2)
251empset.c:86: Body of for statement is not a block:
252 empset_insertUnique(result, eref_get(er))
253empset.c: (in function empset_union)
254empset.c:108: Undocumented modification of s2 possible from call to
255 erc_iterStart (through alias s1): erc_iterStart(s1)
256empset.c:108: Undocumented modification of s1 possible from call to
257 erc_iterStart: erc_iterStart(s1)
258empset.c:110: Body of if statement is not a block: erc_insert(result, er)
259empset.c:109: Body of for statement is not a block:
260 if (!empset_member(eref_get(er), s2)) erc_insert(result, er)
261empset.c: (in function empset_intersect)
262empset.c:125: Body of if statement is not a block: erc_insert(toDelete, er)
263empset.c:124: Body of for statement is not a block:
264 if (!empset_member(eref_get(er), s2)) erc_insert(toDelete, er)
265empset.c:128: Return value (type bool) ignored: erc_delete(s1, er)
266empset.c:128: Body of for statement is not a block: erc_delete(s1, er)
267empset.c: (in function empset_subset)
268empset.c:139: Undocumented modification of s1 possible from call to
269 erc_iterStart: erc_iterStart(s1)
270empset.c:141: Body of if statement is not a block:
cc78dedd 271 do { { erc_iterFinal(it) } } while (FALSE)
885824d3 272empset.c:140: Body of for statement is not a block:
cc78dedd 273 if (!empset_member(eref_get(er), s2)) do { { erc_iterFinal(it)
274 } } while (FALSE)
885824d3 275empset.c:135: Variable e declared but not used
276empset.c: (in function empset_initMod)
277empset.c:148: Undocumented use of file static initDone
278empset.c:148: Body of if statement is not a block: return
279empset.c:151: Statement has no effect: employee_initMod()
280empset.c:153: Statement has no effect: erc_initMod()
281empset.c:154: Statement has no effect: ereftab_initMod()
282empset.c:155: Undocumented use of global known
283empset.c:155: Undocumented modification of known: known = ereftab_create()
284empset.c:156: Undocumented use of file static initDone
285empset.c:156: Undocumented modification of initDone: initDone = TRUE
286empset.h: (in macro empset_member)
287empset.h:30: Undetected modification possible from call to unconstrained
288 function _empset_get: _empset_get
289< checking ereftab.c >
290ereftab.c: (in function ereftab_delete)
291ereftab.c:24: Return value (type bool) ignored: erc_delete(t, er)
292ereftab.c: (in function ereftab_lookup)
293ereftab.c:34: Undocumented modification of t possible from call to
294 erc_iterStart: erc_iterStart(t)
295ereftab.c:37: Body of if statement is not a block: return er
296ereftab.c: (in function ereftab_initMod)
297ereftab.c:47: Statement has no effect: erc_initMod()
298< checking erc.c >
299erc.c: (in function erc_create)
300erc.c:8: Parameter to sizeof is type ercInfo: sizeof(ercInfo)
301erc.c:13: Argument to exit has implementation defined behavior: 1
302erc.c:18: Null storage c->vals derivable from return value: c
303 erc.c:16: Storage c->vals becomes null
304erc.c:18: Fresh storage returned as unqualified (should be only): c
305 erc.c:8: Fresh storage c allocated
306erc.c: (in function erc_clear)
307erc.c:34: Function returns with null storage derivable from parameter c->vals
308 erc.c:32: Storage c->vals becomes null
309erc.c: (in function erc_final)
310erc.c:39: Implicitly temp storage c passed as only param: free (c)
311erc.c: (in function erc_member)
312erc.c:47: Operands of == are abstract type (eref): tmpc->val == er
313erc.c:47: Body of if statement is not a block: return TRUE
314erc.c:47: Body of for statement is not a block:
315 if (tmpc->val == er) return TRUE
316erc.c: (in function erc_insert)
317erc.c:55: Parameter to sizeof is type ercElem: sizeof(ercElem)
318erc.c:60: Argument to exit has implementation defined behavior: 1
319erc.c: (in function erc_delete)
320erc.c:78: Operands of == are abstract type (eref): elem->val == er
80ee600a 321erc.c:83: Implicitly only storage prev->next (type struct _elem *) not released
322 before assignment: prev->next = elem->next
323erc.c:84: Clauses exit with elem referencing implicitly only storage in true
885824d3 324 branch, local storage in false branch
325 erc.c:81: Storage elem becomes implicitly only
885824d3 326erc.c:87: Released storage c->vals reachable from parameter at return point
327 erc.c:85: Storage c->vals is released
328erc.c: (in function erc_iterStart)
329erc.c:98: Parameter to sizeof is type ercList: sizeof(ercList)
330erc.c:103: Argument to exit has implementation defined behavior: 1
331erc.c:107: Fresh storage returned as unqualified (should be only): result
332 erc.c:98: Fresh storage result allocated
333erc.c:108: Suspect object listed in modifies of erc_iterStart not modified: c
334 erc.lcl:49: Specification of erc_iterStart
335erc.c: (in function erc_yield)
336erc.c:117: Implicitly temp storage it passed as only param: free (it)
337erc.c:117: Unreachable code: free(it)
338erc.c:118: Variable it is released in true branch, but live in continuation.
339 erc.c:117: Storage it is released
340erc.c:121: Only storage *it->next assigned to unqualified: *(it) = (*it)->next
341erc.c: (in function erc_join)
342erc.c:130: Body of for statement is not a block: erc_insert(c1, tmpc->val)
343erc.c: (in function erc_sprint)
344erc.c:141: Function malloc expects arg 1 to be size_t gets int:
345 erc_size(c) * (employeePrintSize + 1) + 1
346erc.c:146: Argument to exit has implementation defined behavior: 1
347erc.c:151: Undocumented modification of c possible from call to erc_iterStart:
348 erc_iterStart(c)
349erc.c:159: Fresh storage returned as unqualified (should be only): result
350 erc.c:140: Fresh storage result allocated
351erc.h: (in macro erc_choose)
352erc.h:15: Macro parameter used without parentheses: c
353erc.h: (in macro erc_initMod)
354erc.h:16: Called procedure bool_initMod may access internal state, but globals
355 list does not include globals internalState
356erc.h:16: Undocumented modification of internal state possible from call to
357 bool_initMod: bool_initMod()
358erc.h:16: Statement has no effect: employee_initMod()
359erc.h: (in macro erc_iterFinal)
80ee600a 360erc.h:20: Only storage *it->next (type struct _elem *) derived from released
361 storage is not released (memory leak): it
885824d3 362erc.h:20: Implicitly temp storage it passed as only param: free (it)
363< checking dbase.c >
364dbase.c: (in function db_initMod)
365dbase.c:21: Undocumented use of global initDone
366dbase.c:27: Statement has no effect: employee_initMod()
367dbase.c:29: Statement has no effect: erc_initMod()
368dbase.c:30: Statement has no effect: empset_initMod()
369dbase.c:32: Assignment of enum { mMGRS, fMGRS, mNON, fNON } to int: i = mMGRS
370dbase.c:32: Operands of <= have incompatible types (int, enum { mMGRS, fMGRS,
371 mNON, fNON }): i <= fNON
372dbase.c:34: Undocumented use of global db
373dbase.c:34: Undocumented modification of db[]: db[i] = erc_create()
374dbase.c:32: Incompatible types for <= (int, enum { mMGRS, fMGRS, mNON, fNON })
375 (in post loop test): i <= fNON
376dbase.c:37: Undocumented use of global initDone
377dbase.c:37: Undocumented modification of initDone: initDone = TRUE
378dbase.c:40: Name _db_ercKeyGet is in the implementation name space (any
379 identifier beginning with underscore)
380dbase.c: (in function _db_ercKeyGet)
381dbase.c:45: Undocumented modification of c possible from call to erc_iterStart:
382 erc_iterStart(c)
383dbase.c:56: Name _db_keyGet is in the implementation name space (any identifier
384 beginning with underscore)
385dbase.c: (in function _db_keyGet)
386dbase.c:61: Assignment of enum { mMGRS, fMGRS, mNON, fNON } to int: i = mMGRS
387dbase.c:61: Operands of <= have incompatible types (int, enum { mMGRS, fMGRS,
388 mNON, fNON }): i <= fNON
389dbase.c:63: Undocumented use of global db
390dbase.c:63: Undetected modification possible from call to unconstrained
391 function _db_ercKeyGet: _db_ercKeyGet
392dbase.c:61: Incompatible types for <= (int, enum { mMGRS, fMGRS, mNON, fNON })
393 (in post loop test): i <= fNON
394dbase.c:73: Name _db_addEmpls is in the implementation name space (any
395 identifier beginning with underscore)
396dbase.c: (in function _db_addEmpls)
397dbase.c:81: Undocumented modification of c possible from call to erc_iterStart:
398 erc_iterStart(c)
399dbase.c:86: Undocumented modification of s possible from call to empset_insert:
400 empset_insert(s, e)
401dbase.c:86: Return value (type bool) ignored: empset_insert(s, e)
402dbase.c: (in function hire)
403dbase.c:97: Body of if statement is not a block: return genderERR
404dbase.c:100: Body of if statement is not a block: return jobERR
405dbase.c:103: Body of if statement is not a block: return salERR
406dbase.c:105: Undetected modification possible from call to unconstrained
407 function _db_keyGet: _db_keyGet
408dbase.c:106: Body of if statement is not a block: return duplERR
409dbase.c: (in function uncheckedHire)
410dbase.c:121: Undocumented use of global db
411dbase.c:121: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
412 db[mMGRS]
413dbase.c:121: Undocumented modification of db[] possible from call to
414 erc_insert: erc_insert(db[mMGRS], er)
415dbase.c:123: Undocumented use of global db
416dbase.c:123: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
417 db[mNON]
418dbase.c:123: Undocumented modification of db[] possible from call to
419 erc_insert: erc_insert(db[mNON], er)
420dbase.c:121: Body of if clause of if statement is not a block:
421 erc_insert(db[mMGRS], er)
422dbase.c:123: Body of else clause of if statement is not a block:
423 erc_insert(db[mNON], er)
424dbase.c:126: Undocumented use of global db
425dbase.c:126: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
426 db[fMGRS]
427dbase.c:126: Undocumented modification of db[] possible from call to
428 erc_insert: erc_insert(db[fMGRS], er)
429dbase.c:128: Undocumented use of global db
430dbase.c:128: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
431 db[fNON]
432dbase.c:128: Undocumented modification of db[] possible from call to
433 erc_insert: erc_insert(db[fNON], er)
434dbase.c:126: Body of if clause of if statement is not a block:
435 erc_insert(db[fMGRS], er)
436dbase.c:128: Body of else clause of if statement is not a block:
437 erc_insert(db[fNON], er)
438dbase.c:123: Body of if clause of if statement is not a block:
439 if (e.j == MGR) erc_insert(db[mMGRS], er) else erc_insert(db[mNON], er)
440dbase.c: (in function fire)
441dbase.c:137: Assignment of enum { mMGRS, fMGRS, mNON, fNON } to int: i = mMGRS
442dbase.c:137: Operands of <= have incompatible types (int, enum { mMGRS, fMGRS,
443 mNON, fNON }): i <= fNON
444dbase.c:138: Undocumented use of global db
445dbase.c:138: Undocumented modification of db[] possible from call to
446 erc_iterStart: erc_iterStart(db[i])
447dbase.c:142: Undocumented use of global db
448dbase.c:142: Undocumented modification of db[] possible from call to
449 erc_delete: erc_delete(db[i], er)
450dbase.c:142: Return value (type bool) ignored: erc_delete(db[i]...
451dbase.c:139: Body of for statement is not a block:
452 if (eref_get(er).ssNum == ssNum) { erc_iterFinal(it) }
453dbase.c:139: Body of for statement is not a block:
454 for (er = erc_yield(it = erc_iterStart(db[i])); !eref_equal(er, erefNIL);
455 er = erc_yield(it)) if (eref_get(er).ssNum == ssNum) { erc_iterFinal(it) }
456dbase.c:137: Incompatible types for <= (int, enum { mMGRS, fMGRS, mNON, fNON })
457 (in post loop test): i <= fNON
458dbase.c: (in function promote)
459dbase.c:156: Undocumented use of global db
460dbase.c:156: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
461 db[mNON]
462dbase.c:156: Undetected modification possible from call to unconstrained
463 function _db_ercKeyGet: _db_ercKeyGet
464dbase.c:160: Undocumented use of global db
465dbase.c:160: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
466 db[fNON]
467dbase.c:160: Undetected modification possible from call to unconstrained
468 function _db_ercKeyGet: _db_ercKeyGet
469dbase.c:162: Body of if statement is not a block: return FALSE
470dbase.c:172: Undocumented use of global db
471dbase.c:172: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
472 db[mNON]
473dbase.c:172: Undocumented modification of db[] possible from call to
474 erc_delete: erc_delete(db[mNON], er)
475dbase.c:172: Return value (type bool) ignored: erc_delete(db[mN...
476dbase.c:173: Undocumented use of global db
477dbase.c:173: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
478 db[mMGRS]
479dbase.c:173: Undocumented modification of db[] possible from call to
480 erc_insert: erc_insert(db[mMGRS], er)
481dbase.c:177: Undocumented use of global db
482dbase.c:177: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
483 db[fNON]
484dbase.c:177: Undocumented modification of db[] possible from call to
485 erc_delete: erc_delete(db[fNON], er)
486dbase.c:177: Return value (type bool) ignored: erc_delete(db[fN...
487dbase.c:178: Undocumented use of global db
488dbase.c:178: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
489 db[fMGRS]
490dbase.c:178: Undocumented modification of db[] possible from call to
491 erc_insert: erc_insert(db[fMGRS], er)
492dbase.c: (in function setSalary)
493dbase.c:194: Undetected modification possible from call to unconstrained
494 function _db_keyGet: _db_keyGet
495dbase.c: (in function query)
496dbase.c:226: Assignment of enum { mMGRS, fMGRS, mNON, fNON } to int: i = mMGRS
497dbase.c:226: Operands of <= have incompatible types (int, enum { mMGRS, fMGRS,
498 mNON, fNON }): i <= fNON
499dbase.c:227: Undocumented use of global db
500dbase.c:227: Undetected modification possible from call to unconstrained
501 function _db_addEmpls: _db_addEmpls
502dbase.c:227: Body of for statement is not a block:
503 numAdded += _db_addEmpls(db[i], l, h, s)
504dbase.c:226: Incompatible types for <= (int, enum { mMGRS, fMGRS, mNON, fNON })
505 (in post loop test): i <= fNON
506dbase.c:230: Undocumented use of global db
507dbase.c:230: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
508 db[mMGRS]
509dbase.c:230: Undetected modification possible from call to unconstrained
510 function _db_addEmpls: _db_addEmpls
511dbase.c:231: Undocumented use of global db
512dbase.c:231: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
513 db[fMGRS]
514dbase.c:231: Undetected modification possible from call to unconstrained
515 function _db_addEmpls: _db_addEmpls
516dbase.c:234: Undocumented use of global db
517dbase.c:234: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
518 db[mNON]
519dbase.c:234: Undetected modification possible from call to unconstrained
520 function _db_addEmpls: _db_addEmpls
521dbase.c:235: Undocumented use of global db
522dbase.c:235: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
523 db[fNON]
524dbase.c:235: Undetected modification possible from call to unconstrained
525 function _db_addEmpls: _db_addEmpls
526dbase.c:242: Undocumented use of global db
527dbase.c:242: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
528 db[mMGRS]
529dbase.c:242: Undetected modification possible from call to unconstrained
530 function _db_addEmpls: _db_addEmpls
531dbase.c:243: Undocumented use of global db
532dbase.c:243: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
533 db[mNON]
534dbase.c:243: Undetected modification possible from call to unconstrained
535 function _db_addEmpls: _db_addEmpls
536dbase.c:246: Undocumented use of global db
537dbase.c:246: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
538 db[mMGRS]
539dbase.c:246: Undetected modification possible from call to unconstrained
540 function _db_addEmpls: _db_addEmpls
541dbase.c:248: Undocumented use of global db
542dbase.c:248: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
543 db[mNON]
544dbase.c:248: Undetected modification possible from call to unconstrained
545 function _db_addEmpls: _db_addEmpls
546dbase.c:254: Undocumented use of global db
547dbase.c:254: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
548 db[fMGRS]
549dbase.c:254: Undetected modification possible from call to unconstrained
550 function _db_addEmpls: _db_addEmpls
551dbase.c:255: Undocumented use of global db
552dbase.c:255: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
553 db[fNON]
554dbase.c:255: Undetected modification possible from call to unconstrained
555 function _db_addEmpls: _db_addEmpls
556dbase.c:258: Undocumented use of global db
557dbase.c:258: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
558 db[fMGRS]
559dbase.c:258: Undetected modification possible from call to unconstrained
560 function _db_addEmpls: _db_addEmpls
561dbase.c:260: Undocumented use of global db
562dbase.c:260: Array fetch using non-integer, enum { mMGRS, fMGRS, mNON, fNON }:
563 db[fNON]
564dbase.c:260: Undetected modification possible from call to unconstrained
565 function _db_addEmpls: _db_addEmpls
566dbase.c:210: Variable er declared but not used
567dbase.c:211: Variable e declared but not used
568dbase.c:263: Suspect object listed in modifies of query not modified: s
569 dbase.lcl:49: Specification of query
570dbase.c: (in function db_print)
571dbase.c:272: Assignment of enum { mMGRS, fMGRS, mNON, fNON } to int: i = mMGRS
572dbase.c:272: Operands of <= have incompatible types (int, enum { mMGRS, fMGRS,
573 mNON, fNON }): i <= fNON
574dbase.c:274: Undocumented use of global db
575dbase.c:272: Incompatible types for <= (int, enum { mMGRS, fMGRS, mNON, fNON })
576 (in post loop test): i <= fNON
577< checking drive.c >
578drive.c: (in function main)
579drive.c:22: Statement has no effect: employee_initMod()
580drive.c:23: Statement has no effect: empset_initMod()
581drive.c:48: Return value (type bool) ignored: employee_setName...
582drive.c:49: Return value (type bool) ignored: empset_insert(em...
583drive.c:64: Return value (type bool) ignored: employee_setName...
584drive.c:65: Return value (type bool) ignored: empset_delete(em...
585drive.c:82: Return value (type bool) ignored: employee_setName...
586drive.c:83: Return value (type bool) ignored: empset_insert(em...
587drive.c:107: Return value (type bool) ignored: empset_delete(em...
588drive.c:116: Body of if clause of if statement is not a block: e.gen = MALE
589drive.c:116: Body of else clause of if statement is not a block: e.gen = FEMALE
590drive.c:117: Body of if clause of if statement is not a block: e.j = NONMGR
591drive.c:117: Body of else clause of if statement is not a block: e.j = MGR
592drive.c:119: Return value (type bool) ignored: employee_setName...
593drive.c:123: Return value (type db_status) ignored: hire(e)
594drive.c:127: Assignment of db_status to int: j = hire(e)
595drive.c:131: Variable j used before definition
596drive.c:134: Return value (type bool) ignored: fire(17)
597drive.c:158: Return value (type bool) ignored: fire(empset_choo...
598drive.c:11: Parameter argv not used
599< checking macros bool.h >
600< global checks >
601dbase.c:11: Type employeeKinds declared but not used
602eref.lh:8: Function exported but not used outside eref: eref_free
603 eref.h:23: Definition of eref_free
604empset.lh:8: Function exported but not used outside empset: empset_final
605 empset.h:29: Definition of empset_final
606empset.lh:9: Function exported but not used outside empset: empset_clear
607 empset.c:24: Definition of empset_clear
608empset.lh:11: Function exported but not used outside empset:
609 empset_insertUnique
610 empset.c:53: Definition of empset_insertUnique
611empset.lh:17: Function exported but not used outside empset: empset_member
612 empset.h:30: Definition of empset_member
613empset.lh:18: Function exported but not used outside empset: empset_subset
614 empset.c:144: Definition of empset_subset
615ereftab.lh:10: Function exported but not used outside ereftab: ereftab_delete
616 ereftab.c:26: Definition of ereftab_delete
617dbase.c:13: Variable exported but not used outside dbase: db
618dbase.lh:27: Function exported but not used outside dbase: promote
619 dbase.c:182: Definition of promote
620dbase.lh:28: Function exported but not used outside dbase: setSalary
621 dbase.c:206: Definition of setSalary
622empset.h:10: Variable exported but not used outside empset: known
623dbase.c:15: Variable exported but not used outside dbase: initDone
624dbase.c:40: Function exported but not used outside dbase: _db_ercKeyGet
625 dbase.c:54: Definition of _db_ercKeyGet
626dbase.c:56: Function exported but not used outside dbase: _db_keyGet
627 dbase.c:71: Definition of _db_keyGet
628dbase.c:73: Function exported but not used outside dbase: _db_addEmpls
629 dbase.c:92: Definition of _db_addEmpls
630dbase.c:13: Variable db exported but not declared in header file
631empset.c:5: Function _empset_get exported but not declared in header file
632 empset.c:19: Definition of _empset_get
633dbase.c:15: Variable initDone exported but not declared in header file
634dbase.c:40: Function _db_ercKeyGet exported but not declared in header file
635 dbase.c:54: Definition of _db_ercKeyGet
636dbase.c:56: Function _db_keyGet exported but not declared in header file
637 dbase.c:71: Definition of _db_keyGet
638dbase.c:73: Function _db_addEmpls exported but not declared in header file
639 dbase.c:92: Definition of _db_addEmpls
640< cleaning .......... >
641
642Error Type Reported Suppressed
643=================== ======== =========
644abstract 2 0
645mayaliasunique 1 0
646exitarg 8 0
647unreachable 1 0
648forempty 1 0
649forblock 11 0
80ee600a 650ifblock 22 0
3120b462 651redecl 0 7
652incondefs 0 1
885824d3 653usedef 1 0
654noeffect 11 0
655exporttype 5 0
656exportvar 2 0
657exportconst 2 0
658globs 64 1
659internalglobs 2 0
660warnmissingglobs 1 6
661retvalother 1 0
662retvalbool 16 0
663macroparens 4 0
664usereleased 1 0
3120b462 665compdef 3 0
80ee600a 666compdestroy 1 0
885824d3 667mustfree 3 0
80ee600a 668branchstate 2 1
885824d3 669onlytrans 1 0
670freshtrans 3 0
671temptrans 3 2
672readonlytrans 6 0
673mods 38 0
674mustmod 2 0
675modfilesys 0 25
676modnomods 4 0
677moduncon 20 0
678modunconnomods 1 0
3120b462 679namechecks 11 6
680protoparammatch 1 0
885824d3 681nullret 1 0
682nullstate 1 0
683sizeoftype 7 0
3120b462 684formalarray 0 24
885824d3 685type 1 0
686enumindex 24 0
80ee600a 687enumint 15 0
885824d3 688matchanyintegral 2 0
689exportlocal 15 0
690exportheader 4 0
691exportheadervar 2 0
692paramuse 1 0
693typeuse 1 0
694varuse 4 0
695 ======== =========
3120b462 696Total 333 73
885824d3 697
3120b462 698Finished LCLint checking --- 333 code errors found, as expected
This page took 0.148761 seconds and 5 git commands to generate.