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