nsReadingIterator<CharT> iter( BeginReading() ); for (;;)
nsReadingIterator<CharT> iter; for ( BeginReading(iter); ; )
basic_nsAReadableString<CharT>::CountChar( CharT c ) const  {#if 0    return PRUint32(NS_COUNT(BeginReading(), EndReading(), c));#else    PRUint32 result = 0;    PRUint32 lengthToExamine = Length();    nsReadingIterator<CharT> iter( BeginReading() );    for (;;)      {        PRInt32 lengthToExamineInThisFragment = iter.size_forward();        result += PRUint32(NS_COUNT(iter.get(), iter.get()+lengthToExamineInThisFragment, c));        if ( !(lengthToExamine -= lengthToExamineInThisFragment) )          return result;        iter += lengthToExamineInThisFragment;      }      // never reached; quiets warnings    return 0;#endif  }