Various minor fixes for compiler/linter (other then splint itself) warnings.
[splint-patched.git] / src / Headers / filelocStack.h
blob30a79a65fb9d0d76f7b91d564708e9910513c94e
1 /*
2 ** filelocStack.h (from slist_templace.h)
3 */
5 # ifndef FILELOCSTACK_H
6 # define FILELOCSTACK_H
8 abst_typedef /*@null@*/ struct
10 int nelements;
11 int free;
12 /*@reldef@*/ /*@relnull@*/ o_fileloc *elements;
13 } *filelocStack ;
15 /*@constant null filelocStack filelocStack_undefined; @*/
16 # define filelocStack_undefined (NULL)
18 extern /*@falsewhennull@*/ bool filelocStack_isDefined (filelocStack p_f) /*@*/ ;
19 # define filelocStack_isDefined(f) ((f) != filelocStack_undefined)
21 extern int filelocStack_size (/*@sef@*/ filelocStack p_s) /*@*/ ;
22 # define filelocStack_size(s) (filelocStack_isDefined (s) ? (s)->nelements : 0)
24 extern int filelocStack_includeDepth (filelocStack p_s);
25 extern void filelocStack_printIncludes (filelocStack p_s) /*@modifies g_warningstream@*/ ;
27 extern void filelocStack_clear (filelocStack p_s) /*@modifies p_s@*/ ;
29 extern /*@only@*/ filelocStack filelocStack_new (void) /*@*/ ;
30 extern /*@observer@*/ fileloc filelocStack_nextTop (filelocStack p_s) /*@*/ ;
32 extern bool
33 filelocStack_popPushFile (filelocStack p_s, /*@only@*/ fileloc p_el)
34 /*@modifies p_s@*/ ;
36 extern void filelocStack_free (/*@only@*/ filelocStack p_s) ;
38 # endif