rem: DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Reference %p type = %d (%d %d)\n", p, t, (int)pp->mark1, (int)pp->mark2));
add: else return 1; DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Reference %p type=%d (%d %d)\n", p, t, (int)pp->mark1, (int)pp->mark2));
context: soap_reference(struct soap *soap, const void *p, int t){ register int i;  struct soap_plist *pp;  if (!p)    return 1;  i = soap_pointer_lookup(soap, p, t, &pp);  if (i)  { if (pp->mark1 == 0)    { pp->mark1 = 2;      pp->mark2 = 2;    }  }  else  { soap_pointer_enter(soap, p, t, &pp);    pp->mark1 = 0;    pp->mark2 = 0;  }  DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Reference %p type = %d (%d %d)\n", p, t, (int)pp->mark1, (int)pp->mark2));  return pp->mark1;}