diff memchecks1/employee.lcl memchecks2/employee.lcl
37c37
< bool employee_setName(employee *e, char na[]) 
---
> bool employee_setName (employee *e, unique char na[]) 
diff memchecks1/erc.c memchecks2/erc.c
85,90c85,87
<   ercList elem;
<   ercList prev;
<   
<   for (prev = 0, elem = c->vals;
<        elem != 0;
<        prev = elem, elem = elem->next) 
---
>   ercList elem = c->vals;
> 
>   if (elem != NULL)
93,99c90,92
< 	{ 
< 	  if (prev == 0)
< 	    c->vals = elem->next;
< 	  else 
< 	    prev->next = elem->next;
< 	  
< 	  free (elem); 
---
> 	{
> 	  c->vals = elem->next;
> 	  free (elem);
101a95,110
> 	}
>       else
> 	{
> 	  ercList prev = elem;
> 	  elem = elem->next;
> 
> 	  for (; elem != 0; prev = elem, elem = elem->next) 
> 	    {
> 	      if (eref_equal (elem->val, er))
> 		{ 
> 		  prev->next = elem->next;
> 		  free (elem); 
> 		  c->size--;
> 		  return TRUE;
> 		}
> 	    }
diff memchecks1/erc.h memchecks2/erc.h
8c8
< typedef struct { ercList vals; int size; } ercInfo;
---
> typedef struct { /*@null@*/ ercList vals; int size; } ercInfo;
diff memchecks1/erc.lcl memchecks2/erc.lcl
5c5
< erc erc_create(void) 
---
> only erc erc_create(void) 
55c55
< char *erc_sprint(erc c) 
---
> only char *erc_sprint(erc c) 
60c60
< void erc_final(erc c) 
---
> void erc_final (only erc c) 
diff memchecks1/eref.c memchecks2/eref.c
79a80
>   /*@+loopexec@*/
83a85
>   /*@=loopexec@*/
diff memchecks1/eref.h memchecks2/eref.h
11,12c11,12
<   employee *conts;
<   eref_status *status;
---
>   /*@reldef@*/ /*@only@*/ employee *conts;
>   /*@only@*/ eref_status *status;
