rem: register wchar c;
add: register soap_wchar c;
context: soap_wstring_out(struct soap *soap, const wchar_t *s, int flag){ const char *t;  char tmp;  register wchar c;#ifdef WITH_DOM  if ((soap->mode & SOAP_XML_DOM) && soap->dom)  { soap->dom->wide = NULL; /* soap_malloc() ??? */    return SOAP_OK;  }#endif  while ((c = *s++))  { switch (c)    {    case 9:      if (flag)        t = "&#x9;";      else        t = "\t";      break;    case 10:      if (flag || !(soap->mode & SOAP_XML_CANONICAL))        t = "&#xA;";      else        t = "\n";      break;    case 13:      t = "&#xD;";      break;    case '&':      t = "&amp;";      break;    case '<':      t = "&lt;";      break;    case '>':      if (flag)        t = ">";      else	t = "&gt;";      break;    case '"':      if (flag)        t = "&quot;";      else        t = "\"";      break;    default:      if (c > 0 && c < 0x80)      { tmp = (char)c;        if (soap_send_raw(soap, &tmp, 1))          return soap->error;      }      else if (soap_pututf8(soap, (unsigned long)c))        return soap->error;      continue;    }    if (soap_send(soap, t))      return soap->error;  }  return SOAP_OK;}