Various minor fixes for compiler/linter (other then splint itself) warnings.
[splint-patched.git] / src / Headers / storeRefNodeList.h
blobc9b070e53fd0d1ad4e319881c44d75f02d0d21ca
1 /*
2 ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2003.
3 ** See ../LICENSE for license information.
4 */
5 # ifndef STOREREFNODELIST_H
6 # define STOREREFNODELIST_H
8 typedef /*@only@*/ storeRefNode o_storeRefNode;
10 abst_typedef struct
12 int nelements;
13 int nspace;
14 /*@reldef@*/ /*@relnull@*/ o_storeRefNode *elements;
15 } *storeRefNodeList ;
17 /*@iter storeRefNodeList_elements (sef storeRefNodeList x, yield exposed storeRefNode el); @*/
18 # define storeRefNodeList_elements(x, m_el) \
19 { int m_ind; storeRefNode *m_elements = &((x)->elements[0]); \
20 for (m_ind = 0 ; m_ind < (x)->nelements; m_ind++) \
21 { storeRefNode m_el = *(m_elements++);
23 # define end_storeRefNodeList_elements }}
25 extern /*@only@*/ storeRefNodeList storeRefNodeList_new(void);
26 extern storeRefNodeList
27 storeRefNodeList_add (/*@returned@*/ storeRefNodeList p_s, /*@only@*/ storeRefNode p_el);
29 extern /*@only@*/ cstring storeRefNodeList_unparse (storeRefNodeList p_s) ;
30 extern void storeRefNodeList_free (/*@only@*/ storeRefNodeList p_s) ;
32 extern /*@only@*/ storeRefNodeList storeRefNodeList_copy (storeRefNodeList p_s) ;
33 /*@constant int storeRefNodeListBASESIZE;@*/
34 # define storeRefNodeListBASESIZE SMALLBASESIZE
36 # else
37 # error "Multiple include"
38 # endif