nsCAutoString s5(s0.GetUnicode());
nsCAutoString s5(s0.get());
int CStringTester::TestAutoStrings(){  int result=0;  PRUnichar pbuf[] = {'h','e','l','l','o',0};  //this test makes sure that autostrings who assume ownership of a buffer,   //don't also try to copy that buffer onto itself... (was a bug)  {    nsAutoString  temp0;     nsAutoString  temp1("hello rick");    nsAutoString  temp3(pbuf);/*  NOT WORKING...    nsAutoString  temp4(CBufDescriptor((char*)pbuf,PR_TRUE,5,5));*/    nsAutoString  temp5(temp3);    nsString      s(pbuf);    nsAutoString  temp6(s);/*  NOT WORKING...    char buffer[500];    nsAutoString  temp7(CBufDescriptor((PRUnichar*)buffer,PR_TRUE,sizeof(buffer)-10/2,0));    temp7="hello, my name is inigo montoya.";*/    nsAutoString as;    int i;    for(i=0;i<30;i++){      as+='a';    }    PRBool b=PR_TRUE; //this line doesn't do anything, it just gives a convenient breakpoint.    NS_ASSERTION(as=="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","error in operator+=()");  }  {    nsCAutoString  temp0;     nsCAutoString  temp1("hello rick");    //nsCAutoString  temp2("hello rick",PR_TRUE,5);    nsCAutoString  temp3(pbuf);    {      const char* buf="hello rick";      int len=strlen(buf);//       nsAutoString   temp4(CBufDescriptor(buf,PR_TRUE,len+1,len));  //NOT WORKING    }    nsCAutoString  temp5(temp3);    nsString       s(pbuf);    nsCAutoString  temp6(s);  //create one from a nsString    nsCAutoString as;    int i;    for(i=0;i<30;i++){      as+='a';    }    PRBool b=PR_TRUE;#if 0/* NOT WORKING    char buffer[500];    nsCAutoString s3(CBufDescriptor(buffer,PR_TRUE,sizeof(buffer)-1,0));    s3="hello, my name is inigo montoya.";  */      //make an autostring that copies an nsString...    nsString s0("eat icecream");    nsCAutoString s4(s0);     nsCAutoString s5(s0.GetUnicode());    nsString aaa("hi there rick");#endif  }  const char* st="hello again";  nsString s; //this also forces nsString to run it's selftest.  s=st;  nsAutoString astr;  astr=st;  return result;}