< empset empset_create(void) --- > only empset empset_create(void)
< void empset_final(empset s) --- > void empset_final (only empset s)
< empset empset_union(empset s1, empset s2) --- > only empset empset_union(empset s1, empset s2)
< empset empset_disjointUnion(empset s1, empset s2) --- > only empset empset_disjointUnion(empset s1, empset s2)
< char *empset_sprint(empset s) --- > only char *empset_sprint(empset s)
<
> eref erc_choose (erc c) > { > assert (c->vals != NULL); > return c->vals->val; > }
< typedef struct _elem { eref val; struct _elem *next; } ercElem; --- > typedef struct _elem { eref val; /*@null@*/ struct _elem *next; } ercElem;
< # define erc_choose(c) (((c)->vals)->val) --- >
< eref m_x = m_ec->val; m_ec = m_ec->next; m_i++; --- > eref m_x; assert (m_ec != NULL); m_x = m_ec->val; m_ec = m_ec->next; m_i++;
< eref_ERP eref_Pool; /* private */ --- > static eref_ERP eref_Pool; /* private */
> /*@globals undef eref_Pool@*/
> void eref_free (eref er) > { > eref_Pool.status[er] = avail; > } > > void eref_assign (eref er, employee e) > { > eref_Pool.conts[er] = e; > } > > employee eref_get (eref er) > { > return eref_Pool.conts[er]; > }
< /* Declared here so that macros can use it */ < extern eref_ERP eref_Pool; <
< < # define eref_free(er) (eref_Pool.status[er] = avail) < # define eref_assign(er, e) (eref_Pool.conts[er] = (e)) < # define eref_get(er) (eref_Pool.conts[er])
< ereftab ereftab_create(void) --- > only ereftab ereftab_create(void)